openDAQ
Open data acquisition platform
ISyncComponentPrivate Struct Referenceabstract

Interface representing a Synchronization Component in a Test & Measurement system. A SynchronizationComponent ensures synchronization among measurement devices in the system. It can act as a sync source and/or as a sync output, with each component having one sync input and 0 to n sync outputs. More...

+ Inheritance diagram for ISyncComponentPrivate:
+ Collaboration diagram for ISyncComponentPrivate:

Detailed Description

Interface representing a Synchronization Component in a Test & Measurement system. A SynchronizationComponent ensures synchronization among measurement devices in the system. It can act as a sync source and/or as a sync output, with each component having one sync input and 0 to n sync outputs.

SynchronizationComponents are configured via interfaces, which can include PTP, IRIQ, GPS, and CLK sync interfaces, among others.

Note
Every SynchronizationComponent has at least one interface. Only one interface can be set as an input, while others can be used as sync outputs to synchronize other devices. The configuration of these interfaces and the reading of their status is defined in Part 4.
Depending on the setup, some interfaces may be switched off, and some interfaces may act as sync sources or outputs.
A CLK interface can be used to let a device run in Fre-Run mode, where the device syncs internally to an internal quartz.

Public Member Functions

virtual ErrCode INTERFACE_FUNC setSyncLocked (Bool synchronizationLocked)=0
 Sets the synchronization lock status. More...
 
virtual ErrCode INTERFACE_FUNC addInterface (IPropertyObject *syncInterface)=0
 Adds an interface to the synchronization component. More...
 
virtual ErrCode INTERFACE_FUNC removeInterface (IString *syncInterfaceName)=0
 Removes an interface from the synchronization component. More...
 
- Public Member Functions inherited from IBaseObject
virtual ErrCode INTERFACE_FUNC borrowInterface (const IntfID &intfID, void **obj) const =0
 Returns another interface which is supported by the object without incrementing the reference count. More...
 
virtual ErrCode INTERFACE_FUNC dispose ()=0
 Disposes all references held by the object. More...
 
virtual ErrCode INTERFACE_FUNC getHashCode (SizeT *hashCode)=0
 Returns hash code of the object. More...
 
virtual ErrCode INTERFACE_FUNC equals (IBaseObject *other, Bool *equal) const =0
 Compares object to another object for equality. More...
 
virtual ErrCode INTERFACE_FUNC toString (CharPtr *str)=0
 Returns a string representation of the object. More...
 
- Public Member Functions inherited from IUnknown
virtual ErrCode INTERFACE_FUNC queryInterface (const IntfID &intfID, void **obj)=0
 Returns another interface which is supported by the object and increments the reference count. More...
 
virtual int INTERFACE_FUNC addRef ()=0
 Increments the reference count for an interface on an object. More...
 
virtual int INTERFACE_FUNC releaseRef ()=0
 Decrements the reference count for an interface on an object. More...
 

Member Function Documentation

◆ addInterface()

virtual ErrCode INTERFACE_FUNC addInterface ( IPropertyObject syncInterface)
pure virtual

Adds an interface to the synchronization component.

Parameters
interfaceThe interface to be added.

◆ removeInterface()

virtual ErrCode INTERFACE_FUNC removeInterface ( IString syncInterfaceName)
pure virtual

Removes an interface from the synchronization component.

Parameters
interfaceNameThe name of the interface to be removed.

◆ setSyncLocked()

virtual ErrCode INTERFACE_FUNC setSyncLocked ( Bool  synchronizationLocked)
pure virtual

Sets the synchronization lock status.

Parameters
synchronizationLockedTrue if synchronization is locked; false otherwise.