openDAQ
Open data acquisition platform
IDevice Struct Referenceabstract

Represents an openDAQ device. The device contains a list of signals and physical channels. Some devices support adding function blocks, or connecting to devices. The list of available function blocks/devices can be obtained via the getAvailable functions, and added via the add functions. More...

+ Inheritance diagram for IDevice:
+ Collaboration diagram for IDevice:

Detailed Description

Represents an openDAQ device. The device contains a list of signals and physical channels. Some devices support adding function blocks, or connecting to devices. The list of available function blocks/devices can be obtained via the getAvailable functions, and added via the add functions.

Devices can be split up into three different types, with each devices supporting one or more:

  1. Physical devices Physical devices provide access to physical channels. They measure real-world data and send it via packets through output signals of channels. The list of channels can be obtained via getChannels as a flat list.
  2. Client devices Client devices can connect to other devices via their supported connection protocol. openDAQ natively supports connecting to TMS devices via its openDAQ OpcUa Client Module. A list of available devices a client device can connect to can be obtained via getAvailableDevices. The addDevice is used to connect to/add a device.
  3. Function block devices Function block devices provide a dictionary of available function block types that can be added to them and configured. The calculation of function blocks is done on the device itself. The dictionary of available function block types can be obtained via getAvailableFunctionBlockTypes. They can then be added via addFunctionBlock.

All devices also provide access to their Device information, containing metadata such as the device's serial number, location... They can also be queried for their current domain values (time) through its device domain.

As each device is a property object, a device has access to all Property object methods, allowing each device to expose a list of custom properties such as sample rate, scaling factor and many others. By default, openDAQ devices have the UserName and Location string Properties.

Public Member Functions

virtual ErrCode INTERFACE_FUNC getInfo (IDeviceInfo **info)=0
 Gets the device info. It contains data about the device such as the device's serial number, location, and connection string. More...
 
virtual ErrCode INTERFACE_FUNC getDomain (IDeviceDomain **domain)=0
 Gets the device's domain data. It allows for querying the device for its domain (time) values. More...
 
virtual ErrCode INTERFACE_FUNC getInputsOutputsFolder (IFolder **inputsOutputsFolder)=0
 Gets a folder containing channels. More...
 
virtual ErrCode INTERFACE_FUNC getCustomComponents (IList **customComponents)=0
 Gets a list of all components/folders in a device that are not titled 'IO', 'Sig', 'Dev', 'Synchronization' or 'FB'. More...
 
virtual ErrCode INTERFACE_FUNC getSignals (IList **signals, ISearchFilter *searchFilter=nullptr)=0
 Gets a list of the device's signals. More...
 
virtual ErrCode INTERFACE_FUNC getSignalsRecursive (IList **signals, ISearchFilter *searchFilter=nullptr)=0
 Gets a list of the signals that belong to the device. More...
 
virtual ErrCode INTERFACE_FUNC getChannels (IList **channels, ISearchFilter *searchFilter=nullptr)=0
 Gets a flat list of the device's physical channels. More...
 
virtual ErrCode INTERFACE_FUNC getChannelsRecursive (IList **channels, ISearchFilter *searchFilter=nullptr)=0
 Gets a flat list of the device's physical channels. Also finds all visible channels of visible child devices. More...
 
virtual ErrCode INTERFACE_FUNC getDevices (IList **devices, ISearchFilter *searchFilter=nullptr)=0
 Gets a list of child devices that the device is connected to. More...
 
virtual ErrCode INTERFACE_FUNC getAvailableDevices (IList **availableDevices)=0
 Gets a list of available devices, containing their Device Info. More...
 
virtual ErrCode INTERFACE_FUNC getAvailableDeviceTypes (IDict **deviceTypes)=0
 Get a dictionary of available device types as <IString, IDeviceType> pairs. More...
 
virtual ErrCode INTERFACE_FUNC addDevice (IDevice **device, IString *connectionString, IPropertyObject *config=nullptr)=0
 Connects to a device at the given connection string and returns it. More...
 
virtual ErrCode INTERFACE_FUNC removeDevice (IDevice *device)=0
 Disconnects from the device provided as argument and removes it from the internal list of devices. More...
 
virtual ErrCode INTERFACE_FUNC getFunctionBlocks (IList **functionBlocks, ISearchFilter *searchFilter=nullptr)=0
 Gets the list of added function blocks. More...
 
virtual ErrCode INTERFACE_FUNC getAvailableFunctionBlockTypes (IDict **functionBlockTypes)=0
 Gets all function block types that are supported by the device, containing their description. More...
 
virtual ErrCode INTERFACE_FUNC addFunctionBlock (IFunctionBlock **functionBlock, IString *typeId, IPropertyObject *config=nullptr)=0
 Creates and adds a function block to the device with the provided unique ID and returns it. More...
 
virtual ErrCode INTERFACE_FUNC removeFunctionBlock (IFunctionBlock *functionBlock)=0
 Removes the function block provided as argument, disconnecting its signals and input ports. More...
 
virtual ErrCode INTERFACE_FUNC saveConfiguration (IString **configuration)=0
 Saves the configuration of the device to string. More...
 
virtual ErrCode INTERFACE_FUNC loadConfiguration (IString *configuration, IUpdateParameters *config=nullptr)=0
 Loads the configuration of the device from string. More...
 
virtual ErrCode INTERFACE_FUNC getTicksSinceOrigin (UInt *ticks)=0
 Gets the number of ticks passed since the device's absolute origin. More...
 
virtual ErrCode INTERFACE_FUNC addStreaming (IStreaming **streaming, IString *connectionString, IPropertyObject *config=nullptr)=0
 Connects to a streaming at the given connection string, adds it as a streaming source of device and returns created streaming object. More...
 
virtual ErrCode INTERFACE_FUNC createDefaultAddDeviceConfig (IPropertyObject **defaultConfig)=0
 Creates config object that can be used when adding a device. Contains Device and Streaming default configuration for all available Device/Streaming types. Also contains general add-device configuration settings. More...
 
virtual ErrCode INTERFACE_FUNC getSyncComponent (ISyncComponent **sync)=0
 Gets the sync component of the device. More...
 
virtual ErrCode INTERFACE_FUNC addServer (IString *typeId, IPropertyObject *config, IServer **server)=0
 Creates and adds to the device a server with the provided unique type ID and returns it. More...
 
virtual ErrCode INTERFACE_FUNC removeServer (IServer *server)=0
 Removes the server provided as argument. More...
 
virtual ErrCode INTERFACE_FUNC getServers (IList **servers)=0
 Get list of added servers. More...
 
virtual ErrCode INTERFACE_FUNC lock ()=0
 Lock a device with a session user. Once locked, no properties of the device can be changed via the protocol layer. Only the same user who locked the device can unlock it. If no user was specified when the device was locked, any user will be able to unlock it.
 
virtual ErrCode INTERFACE_FUNC unlock ()=0
 Unlock a device with a session user. A device can only be unlocked by the same user who locked it. If no user was specified when the device was locked, any user will be able to unlock it.
 
virtual ErrCode INTERFACE_FUNC isLocked (Bool *locked)=0
 Returns truee if device is locked. Once locked, no properties of the device can be changed via the protocol layer. More...
 
virtual ErrCode INTERFACE_FUNC getLogFileInfos (IList **logFileInfos)=0
 Gets a list of available log files. More...
 
virtual ErrCode INTERFACE_FUNC getLog (IString **log, IString *id, Int size=-1, Int offset=0)=0
 Retrieves a chunk of the log file with the provided ID. More...
 
- Public Member Functions inherited from IFolder
virtual ErrCode INTERFACE_FUNC getItems (IList **items, ISearchFilter *searchFilter=nullptr)=0
 Gets the list of the items in the folder. More...
 
virtual ErrCode INTERFACE_FUNC isEmpty (Bool *empty)=0
 Returns True if the folder is empty. More...
 
virtual ErrCode INTERFACE_FUNC hasItem (IString *localId, Bool *value)=0
 Returns True if the folder has an item with local ID. More...
 
virtual ErrCode INTERFACE_FUNC getItem (IString *localId, IComponent **item)=0
 Gets the item component with the specified localId. More...
 
- Public Member Functions inherited from IComponent
virtual ErrCode INTERFACE_FUNC getLocalId (IString **localId)=0
 Gets the local ID of the component. More...
 
virtual ErrCode INTERFACE_FUNC getGlobalId (IString **globalId)=0
 Gets the global ID of the component. More...
 
virtual ErrCode INTERFACE_FUNC getActive (Bool *active)=0
 Returns true if the component is active; false otherwise. More...
 
virtual ErrCode INTERFACE_FUNC setActive (Bool active)=0
 Sets the component to be either active or inactive. Also recursively sets the active field of all child components if component is a folder. More...
 
virtual ErrCode INTERFACE_FUNC getContext (IContext **context)=0
 Gets the context object. More...
 
virtual ErrCode INTERFACE_FUNC getParent (IComponent **parent)=0
 Gets the parent of the component. More...
 
virtual ErrCode INTERFACE_FUNC getName (IString **name)=0
 Gets the name of the component. More...
 
virtual ErrCode INTERFACE_FUNC setName (IString *name)=0
 Sets the name of the component. More...
 
virtual ErrCode INTERFACE_FUNC getDescription (IString **description)=0
 Gets the description of the component. More...
 
virtual ErrCode INTERFACE_FUNC setDescription (IString *description)=0
 Sets the description of the component. More...
 
virtual ErrCode INTERFACE_FUNC getTags (ITags **tags)=0
 Gets the tags of the component. More...
 
virtual ErrCode INTERFACE_FUNC getVisible (Bool *visible)=0
 Gets visible metadata state of the component. More...
 
virtual ErrCode INTERFACE_FUNC setVisible (Bool visible)=0
 Sets visible attribute state of the component. More...
 
virtual ErrCode INTERFACE_FUNC getLockedAttributes (IList **attributes)=0
 Gets a list of the component's locked attributes. The locked attributes cannot be modified via their respective setters. More...
 
virtual ErrCode INTERFACE_FUNC getOnComponentCoreEvent (IEvent **event)=0
 Gets the Core Event object that triggers whenever a change to this component happens within the openDAQ core structure. More...
 
virtual ErrCode INTERFACE_FUNC getStatusContainer (IComponentStatusContainer **statusContainer)=0
 Gets the container of Component statuses. More...
 
virtual ErrCode INTERFACE_FUNC findComponent (IString *id, IComponent **outComponent)=0
 Finds the component (signal/device/function block) with the specified (global) id. More...
 
- Public Member Functions inherited from IPropertyObject
virtual ErrCode INTERFACE_FUNC getClassName (IString **className)=0
 Gets the name of the class the Property object was constructed with. More...
 
virtual ErrCode INTERFACE_FUNC setPropertyValue (IString *propertyName, IBaseObject *value)=0
 Sets the value of the Property with the given name. More...
 
virtual ErrCode INTERFACE_FUNC getPropertyValue (IString *propertyName, IBaseObject **value)=0
 Gets the value of the Property with the given name. More...
 
virtual ErrCode INTERFACE_FUNC getPropertySelectionValue (IString *propertyName, IBaseObject **value)=0
 Gets the selected value of the Property, if the Property is a Selection property. More...
 
virtual ErrCode INTERFACE_FUNC clearPropertyValue (IString *propertyName)=0
 Clears the Property value from the Property object. More...
 
virtual ErrCode INTERFACE_FUNC hasProperty (IString *propertyName, Bool *hasProperty)=0
 Checks if the Property object contains a property named propertyName. More...
 
virtual ErrCode INTERFACE_FUNC getProperty (IString *propertyName, IProperty **property)=0
 Gets the Property with the given propertyName. More...
 
virtual ErrCode INTERFACE_FUNC addProperty (IProperty *property)=0
 Adds the property to the Property object. More...
 
virtual ErrCode INTERFACE_FUNC removeProperty (IString *propertyName)=0
 Removes the Property named propertyName from the Property object. More...
 
virtual ErrCode INTERFACE_FUNC getOnPropertyValueWrite (IString *propertyName, IEvent **event)=0
 Gets the Event that is triggered whenever a Property value is written to the Property named propertyName. More...
 
virtual ErrCode INTERFACE_FUNC getOnPropertyValueRead (IString *propertyName, IEvent **event)=0
 Gets the Event that is triggered whenever a Property value of a Property named propertyName is read. More...
 
virtual ErrCode INTERFACE_FUNC getVisibleProperties (IList **properties)=0
 Returns a list of visible properties contained in the Property object. More...
 
virtual ErrCode INTERFACE_FUNC getAllProperties (IList **properties)=0
 Returns a list of all properties contained in the Property object. More...
 
virtual ErrCode INTERFACE_FUNC setPropertyOrder (IList *orderedPropertyNames)=0
 Sets a custom order of properties as defined in the list of property names. More...
 
virtual ErrCode INTERFACE_FUNC beginUpdate ()=0
 Begins batch configuration of the object. More...
 
virtual ErrCode INTERFACE_FUNC endUpdate ()=0
 Ends batch configuration of the object. More...
 
virtual ErrCode INTERFACE_FUNC getUpdating (Bool *updating)=0
 Returns the state of batch configuration. More...
 
virtual ErrCode INTERFACE_FUNC getOnEndUpdate (IEvent **event)=0
 Gets the Event that is triggered whenever the batch configuration is applied. More...
 
virtual ErrCode INTERFACE_FUNC getPermissionManager (IPermissionManager **permissionManager)=0
 Gets the permission manager of property object. 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

◆ addDevice()

virtual ErrCode INTERFACE_FUNC addDevice ( IDevice **  device,
IString connectionString,
IPropertyObject config = nullptr 
)
pure virtual

Connects to a device at the given connection string and returns it.

Parameters
[out]deviceThe added device.
connectionStringThe connection string containing the address of the device. In example an IPv4/IPv6 address. The connection string can be found in the Device Info objects returned by getAvailableDevices.
configA config object to configure a client device. This object can contain properties like max sample rate, port to use for 3rd party communication, number of channels to generate, or other device specific settings. Can be created from its corresponding Device type object. In case of a null value, it will use the default configuration.

◆ addFunctionBlock()

virtual ErrCode INTERFACE_FUNC addFunctionBlock ( IFunctionBlock **  functionBlock,
IString typeId,
IPropertyObject config = nullptr 
)
pure virtual

Creates and adds a function block to the device with the provided unique ID and returns it.

Parameters
[out]functionBlockThe added function block.
typeIdThe unique ID of the function block. Can be obtained from its corresponding Function Block Info object.
configA config object to configure a function block with custom settings specific to that function block type.

◆ addServer()

virtual ErrCode INTERFACE_FUNC addServer ( IString typeId,
IPropertyObject config,
IServer **  server 
)
pure virtual

Creates and adds to the device a server with the provided unique type ID and returns it.

Parameters
[out]serverThe added server.
typeIdThe unique type ID of the server. Can be obtained from its corresponding Server type object.
configA config object to configure a server with custom settings specific to that server type.

◆ addStreaming()

virtual ErrCode INTERFACE_FUNC addStreaming ( IStreaming **  streaming,
IString connectionString,
IPropertyObject config = nullptr 
)
pure virtual

Connects to a streaming at the given connection string, adds it as a streaming source of device and returns created streaming object.

Parameters
[out]streamingThe added streaming source.
connectionStringThe connection string containing the address of the streaming. In example an IPv4/IPv6 address. The connection string can be found in the Server Capability objects returned by getInfo().getServerCapabilities().
configA config object to configure a streaming connection. This object can contain properties like various connection timeouts or other streaming protocol specific settings. Can be created from its corresponding Streaming type object. In case of a null value, it will use the default configuration.

◆ createDefaultAddDeviceConfig()

virtual ErrCode INTERFACE_FUNC createDefaultAddDeviceConfig ( IPropertyObject **  defaultConfig)
pure virtual

Creates config object that can be used when adding a device. Contains Device and Streaming default configuration for all available Device/Streaming types. Also contains general add-device configuration settings.

Parameters
[out]defaultConfigThe configuration object containing default settings for adding a device.

The default config object is organized to always have 3 object-type properties:

  • "General" Contains general properties such as "AutomaticallyConnectStreaming"
  • "Device": Contains a child object-type property for each available device type, with the key of each property being the ID of the device type. These can be configured to customize the addDevice call when using connecting to the selected device type (eg. via the native or OPC UA protocols).
  • "Streaming": Same as device, but used to configure each individual streaming connection established when calling addDevice.

◆ getAvailableDevices()

virtual ErrCode INTERFACE_FUNC getAvailableDevices ( IList **  availableDevices)
pure virtual

Gets a list of available devices, containing their Device Info.

Parameters
[out]availableDevicesThe list of available devices.

The getAvailableDevices most often runs a discovery client, querying for available devices that a device module can connect to. The replies are formed into Device Info objects and inserted to the list of available devices.

◆ getAvailableDeviceTypes()

virtual ErrCode INTERFACE_FUNC getAvailableDeviceTypes ( IDict **  deviceTypes)
pure virtual

Get a dictionary of available device types as <IString, IDeviceType> pairs.

Parameters
[out]deviceTypesThe dictionary of available device types.

◆ getAvailableFunctionBlockTypes()

virtual ErrCode INTERFACE_FUNC getAvailableFunctionBlockTypes ( IDict **  functionBlockTypes)
pure virtual

Gets all function block types that are supported by the device, containing their description.

Parameters
[out]functionBlockTypesA dictionary of available function block types.

◆ getChannels()

virtual ErrCode INTERFACE_FUNC getChannels ( IList **  channels,
ISearchFilter searchFilter = nullptr 
)
pure virtual

Gets a flat list of the device's physical channels.

Parameters
searchFilterProvides an optional filter that filters out unwanted components and allows for recursion.
[out]channelsThe flat list of channels.

If searchFilter is not provided, the returned list contains only visible channels and does not include those of child devices.

◆ getChannelsRecursive()

virtual ErrCode INTERFACE_FUNC getChannelsRecursive ( IList **  channels,
ISearchFilter searchFilter = nullptr 
)
pure virtual

Gets a flat list of the device's physical channels. Also finds all visible channels of visible child devices.

Parameters
searchFilterProvides an optional filter that filters out unwanted components and allows for recursion.
[out]channelsThe flat list of channels.

◆ getCustomComponents()

virtual ErrCode INTERFACE_FUNC getCustomComponents ( IList **  customComponents)
pure virtual

Gets a list of all components/folders in a device that are not titled 'IO', 'Sig', 'Dev', 'Synchronization' or 'FB'.

Parameters
[out]customComponentsThe list of custom components.

◆ getDevices()

virtual ErrCode INTERFACE_FUNC getDevices ( IList **  devices,
ISearchFilter searchFilter = nullptr 
)
pure virtual

Gets a list of child devices that the device is connected to.

Parameters
searchFilterProvides an optional filter that filters out unwanted components and allows for recursion.
[out]devicesThe list of devices.

If searchFilter is not provided, the returned list contains only visible devices and does not include those of child devices.

◆ getDomain()

virtual ErrCode INTERFACE_FUNC getDomain ( IDeviceDomain **  domain)
pure virtual

Gets the device's domain data. It allows for querying the device for its domain (time) values.

Parameters
[out]domainThe device domain.

◆ getFunctionBlocks()

virtual ErrCode INTERFACE_FUNC getFunctionBlocks ( IList **  functionBlocks,
ISearchFilter searchFilter = nullptr 
)
pure virtual

Gets the list of added function blocks.

Parameters
searchFilterProvides an optional filter that filters out unwanted components and allows for recursion.
[out]functionBlocksThe list of added function blocks.

If searchFilter is not provided, the returned list contains only visible function blocks and does not include those of child function blocks, devices, or channels.

◆ getInfo()

virtual ErrCode INTERFACE_FUNC getInfo ( IDeviceInfo **  info)
pure virtual

Gets the device info. It contains data about the device such as the device's serial number, location, and connection string.

Parameters
[out]infoThe device info.

◆ getInputsOutputsFolder()

virtual ErrCode INTERFACE_FUNC getInputsOutputsFolder ( IFolder **  inputsOutputsFolder)
pure virtual

Gets a folder containing channels.

Parameters
[out]inputsOutputsFolderThe folder that contains channels.

The InputsOutputs folder can contain other folders that themselves contain channels.

◆ getLog()

virtual ErrCode INTERFACE_FUNC getLog ( IString **  log,
IString id,
Int  size = -1,
Int  offset = 0 
)
pure virtual

Retrieves a chunk of the log file with the provided ID.

This function extracts a specified portion (or the entire content) of the log file, starting at the given offset. If the size and offset are not specified, it will attempt to return the entire log file by default.

Parameters
[out]logA string which stores requested log chunk.
idRhe ID of the log file to retrieve.
sizeThe size of the log chunk to retrieve in bytes. Defaults to -1, which means it will return all remaining bytes from the offset.
offsetThe offset, in bytes, from where the log chunk should be read. Defaults to 0 (start of the file).

If size is set to -1, and offset is 0, the entire log file will be returned.

◆ getLogFileInfos()

virtual ErrCode INTERFACE_FUNC getLogFileInfos ( IList **  logFileInfos)
pure virtual

Gets a list of available log files.

Parameters
[out]logFileInfosThe list of available log files.

◆ getServers()

virtual ErrCode INTERFACE_FUNC getServers ( IList **  servers)
pure virtual

Get list of added servers.

Parameters
[out]serversList of added servers.

◆ getSignals()

virtual ErrCode INTERFACE_FUNC getSignals ( IList **  signals,
ISearchFilter searchFilter = nullptr 
)
pure virtual

Gets a list of the device's signals.

Parameters
searchFilterProvides an optional filter that filters out unwanted components and allows for recursion.
[out]signalsThe flat list of signals.

If searchFilter is not provided, the returned list contains only visible signals and does not include those of child function blocks, devices, or channels.

Device signals are most often domain signals shared by other signals that belong to channels and/or function blocks.

◆ getSignalsRecursive()

virtual ErrCode INTERFACE_FUNC getSignalsRecursive ( IList **  signals,
ISearchFilter searchFilter = nullptr 
)
pure virtual

Gets a list of the signals that belong to the device.

Parameters
searchFilterProvides an optional filter that filters out unwanted components and allows for recursion.
[out]signalsThe flat list of signals.

The list includes visible signals that belong to visible channels, function blocks, or sub devices of the device.

◆ getSyncComponent()

virtual ErrCode INTERFACE_FUNC getSyncComponent ( ISyncComponent **  sync)
pure virtual

Gets the sync component of the device.

Parameters
[out]syncThe sync component.

◆ getTicksSinceOrigin()

virtual ErrCode INTERFACE_FUNC getTicksSinceOrigin ( UInt *  ticks)
pure virtual

Gets the number of ticks passed since the device's absolute origin.

Parameters
[out]ticksThe number of ticks.

To scale the ticks into a domain unit, the Device's Domain should be used.

◆ isLocked()

virtual ErrCode INTERFACE_FUNC isLocked ( Bool *  locked)
pure virtual

Returns truee if device is locked. Once locked, no properties of the device can be changed via the protocol layer.

Parameters
[out]lockedTrue if device is locked.

◆ loadConfiguration()

virtual ErrCode INTERFACE_FUNC loadConfiguration ( IString configuration,
IUpdateParameters config = nullptr 
)
pure virtual

Loads the configuration of the device from string.

Parameters
configurationSerialized configuration of the device.

◆ removeDevice()

virtual ErrCode INTERFACE_FUNC removeDevice ( IDevice device)
pure virtual

Disconnects from the device provided as argument and removes it from the internal list of devices.

Parameters
deviceThe device to be removed.

◆ removeFunctionBlock()

virtual ErrCode INTERFACE_FUNC removeFunctionBlock ( IFunctionBlock functionBlock)
pure virtual

Removes the function block provided as argument, disconnecting its signals and input ports.

Parameters
functionBlockThe function block to be removed.

◆ removeServer()

virtual ErrCode INTERFACE_FUNC removeServer ( IServer server)
pure virtual

Removes the server provided as argument.

Parameters
serverThe server to be removed.

◆ saveConfiguration()

virtual ErrCode INTERFACE_FUNC saveConfiguration ( IString **  configuration)
pure virtual

Saves the configuration of the device to string.

Parameters
[out]configurationSerialized configuration of the device.