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...
template<typename InterfaceType>
class GenericDevicePtr< InterfaceType >
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:
- 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.
- 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.
- 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.
|
daq::DeviceInfoPtr | getInfo () const |
| Gets the device info. It contains data about the device such as the device's serial number, location, and connection string. More...
|
|
daq::DeviceDomainPtr | getDomain () const |
| Gets the device's domain data. It allows for querying the device for its domain (time) values. More...
|
|
daq::GenericFolderPtr< daq::IFolder > | getInputsOutputsFolder () const |
| Gets a folder containing channels. More...
|
|
daq::ListPtr< daq::IComponent > | getCustomComponents () const |
| Gets a list of all components/folders in a device that are not titled 'IO', 'Sig', 'Dev', 'Synchronization' or 'FB'. More...
|
|
daq::ListPtr< daq::ISignal > | getSignals (const daq::SearchFilterPtr &searchFilter=nullptr) const |
| Gets a list of the device's signals. More...
|
|
daq::ListPtr< daq::ISignal > | getSignalsRecursive (const daq::SearchFilterPtr &searchFilter=nullptr) const |
| Gets a list of the signals that belong to the device. More...
|
|
daq::ListPtr< daq::IChannel > | getChannels (const daq::SearchFilterPtr &searchFilter=nullptr) const |
| Gets a flat list of the device's physical channels. More...
|
|
daq::ListPtr< daq::IChannel > | getChannelsRecursive (const daq::SearchFilterPtr &searchFilter=nullptr) const |
| Gets a flat list of the device's physical channels. Also finds all visible channels of visible child devices. More...
|
|
daq::ListPtr< daq::IDevice > | getDevices (const daq::SearchFilterPtr &searchFilter=nullptr) const |
| Gets a list of child devices that the device is connected to. More...
|
|
daq::ListPtr< daq::IDeviceInfo > | getAvailableDevices () const |
| Gets a list of available devices, containing their Device Info. More...
|
|
daq::DictPtr< daq::IString, daq::IDeviceType > | getAvailableDeviceTypes () const |
| Get a dictionary of available device types as <IString, IDeviceType> pairs. More...
|
|
daq::GenericDevicePtr< daq::IDevice > | addDevice (const daq::StringPtr &connectionString, const daq::PropertyObjectPtr &config=nullptr) const |
| Connects to a device at the given connection string and returns it. More...
|
|
void | removeDevice (const daq::GenericDevicePtr< daq::IDevice > &device) const |
| Disconnects from the device provided as argument and removes it from the internal list of devices. More...
|
|
daq::ListPtr< daq::IFunctionBlock > | getFunctionBlocks (const daq::SearchFilterPtr &searchFilter=nullptr) const |
| Gets the list of added function blocks. More...
|
|
daq::DictPtr< daq::IString, daq::IFunctionBlockType > | getAvailableFunctionBlockTypes () const |
| Gets all function block types that are supported by the device, containing their description. More...
|
|
daq::FunctionBlockPtr | addFunctionBlock (const daq::StringPtr &typeId, const daq::PropertyObjectPtr &config=nullptr) const |
| Creates and adds a function block to the device with the provided unique ID and returns it. More...
|
|
void | removeFunctionBlock (const daq::FunctionBlockPtr &functionBlock) const |
| Removes the function block provided as argument, disconnecting its signals and input ports. More...
|
|
daq::StringPtr | saveConfiguration () const |
| Saves the configuration of the device to string. More...
|
|
void | loadConfiguration (const daq::StringPtr &configuration, const daq::UpdateParametersPtr &config=nullptr) const |
| Loads the configuration of the device from string. More...
|
|
daq::UInt | getTicksSinceOrigin () const |
| Gets the number of ticks passed since the device's absolute origin. More...
|
|
daq::StreamingPtr | addStreaming (const daq::StringPtr &connectionString, const daq::PropertyObjectPtr &config=nullptr) const |
| Connects to a streaming at the given connection string, adds it as a streaming source of device and returns created streaming object. More...
|
|
daq::PropertyObjectPtr | createDefaultAddDeviceConfig () const |
| 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...
|
|
daq::SyncComponentPtr | getSyncComponent () const |
| Gets the sync component of the device. More...
|
|
daq::ServerPtr | addServer (const daq::StringPtr &typeId, const daq::PropertyObjectPtr &config) const |
| Creates and adds to the device a server with the provided unique type ID and returns it. More...
|
|
void | removeServer (const daq::ServerPtr &server) const |
| Removes the server provided as argument. More...
|
|
daq::ListPtr< daq::IServer > | getServers () const |
| Get list of added servers. More...
|
|
void | lock () const |
| 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.
|
|
void | unlock () const |
| 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.
|
|
daq::Bool | isLocked () const |
| Returns true if device is locked. Once locked, no properties of the device can be changed via the protocol layer. More...
|
|
daq::ListPtr< daq::ILogFileInfo > | getLogFileInfos () const |
| Gets a list of available log files. More...
|
|
daq::StringPtr | getLog (const daq::StringPtr &id, daq::Int size=-1, daq::Int offset=0) const |
| 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. More...
|
|
daq::ComponentStatusContainerPtr | getConnectionStatusContainer () const |
| Gets the container holding the statuses of device configuration and streaming connections. More...
|
|
daq::ListPtr< daq::IInteger > | getAvailableOperationModes () const |
| Gets a list of available operation modes for the device. More...
|
|
void | setOperationMode (daq::OperationModeType modeType) const |
| Sets the operation mode of the device subtree excluding the sub-devices. More...
|
|
void | setOperationModeRecursive (daq::OperationModeType modeType) const |
| Sets the operation mode of the device subtree including the sub-devices. More...
|
|
daq::ListPtr< daq::IComponent > | getItems (const daq::SearchFilterPtr &searchFilter=nullptr) const |
| Gets the list of the items in the folder. More...
|
|
daq::Bool | isEmpty () const |
| Returns True if the folder is empty. More...
|
|
daq::Bool | hasItem (const daq::StringPtr &localId) const |
| Returns True if the folder has an item with local ID. More...
|
|
daq::GenericComponentPtr< daq::IComponent > | getItem (const daq::StringPtr &localId) const |
| Gets the item component with the specified localId. More...
|
|
daq::StringPtr | getLocalId () const |
| Gets the local ID of the component. More...
|
|
daq::StringPtr | getGlobalId () const |
| Gets the global ID of the component. More...
|
|
daq::Bool | getActive () const |
| Returns true if the component is active; false otherwise. More...
|
|
void | setActive (daq::Bool active) const |
| 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...
|
|
daq::ContextPtr | getContext () const |
| Gets the context object. More...
|
|
daq::ComponentPtr | getParent () const |
| Gets the parent of the component. More...
|
|
daq::StringPtr | getName () const |
| Gets the name of the component. More...
|
|
void | setName (const daq::StringPtr &name) const |
| Sets the name of the component. More...
|
|
daq::StringPtr | getDescription () const |
| Gets the description of the component. More...
|
|
void | setDescription (const daq::StringPtr &description) const |
| Sets the description of the component. More...
|
|
daq::TagsPtr | getTags () const |
| Gets the tags of the component. More...
|
|
daq::Bool | getVisible () const |
| Gets visible metadata state of the component. More...
|
|
void | setVisible (daq::Bool visible) const |
| Sets visible attribute state of the component. More...
|
|
daq::ListPtr< daq::IString > | getLockedAttributes () const |
| Gets a list of the component's locked attributes. The locked attributes cannot be modified via their respective setters. More...
|
|
daq::Event< daq::ComponentPtr, daq::CoreEventArgsPtr > | getOnComponentCoreEvent () const |
| Gets the Core Event object that triggers whenever a change to this component happens within the openDAQ core structure. More...
|
|
daq::ComponentStatusContainerPtr | getStatusContainer () const |
| Gets the container of Component statuses. More...
|
|
daq::ComponentPtr | findComponent (const daq::StringPtr &id) const |
| Finds the component (signal/device/function block) with the specified (global) id. More...
|
|
daq::OperationModeType | getOperationMode () const |
| Gets the operation mode of the device. More...
|
|
daq::StringPtr | getClassName () const |
| Gets the name of the class the Property object was constructed with. More...
|
|
void | setPropertyValue (const daq::StringPtr &propertyName, const daq::BaseObjectPtr &value) const |
| Sets the value of the Property with the given name. More...
|
|
daq::BaseObjectPtr | getPropertyValue (const daq::StringPtr &propertyName) const |
| Gets the value of the Property with the given name. More...
|
|
daq::BaseObjectPtr | getPropertySelectionValue (const daq::StringPtr &propertyName) const |
| Gets the selected value of the Property, if the Property is a Selection property. More...
|
|
void | clearPropertyValue (const daq::StringPtr &propertyName) const |
| Clears the Property value from the Property object. More...
|
|
daq::Bool | hasProperty (const daq::StringPtr &propertyName) const |
| Checks if the Property object contains a property named propertyName . More...
|
|
daq::PropertyPtr | getProperty (const daq::StringPtr &propertyName) const |
| Gets the Property with the given propertyName . More...
|
|
void | addProperty (const daq::PropertyPtr &property) const |
| Adds the property to the Property object. More...
|
|
void | removeProperty (const daq::StringPtr &propertyName) const |
| Removes the Property named propertyName from the Property object. More...
|
|
daq::Event< daq::PropertyObjectPtr, daq::PropertyValueEventArgsPtr > | getOnPropertyValueWrite (const daq::StringPtr &propertyName) const |
| Gets the Event that is triggered whenever a Property value is written to the Property named propertyName . More...
|
|
daq::Event< daq::PropertyObjectPtr, daq::PropertyValueEventArgsPtr > | getOnPropertyValueRead (const daq::StringPtr &propertyName) const |
| Gets the Event that is triggered whenever a Property value of a Property named propertyName is read. More...
|
|
daq::Event< daq::PropertyObjectPtr, daq::PropertyValueEventArgsPtr > | getOnAnyPropertyValueWrite () const |
| Gets the Event that is triggered whenever any Property value is written. The event is triggered after the specific Property event. More...
|
|
daq::Event< daq::PropertyObjectPtr, daq::PropertyValueEventArgsPtr > | getOnAnyPropertyValueRead () const |
| Gets the Event that is triggered whenever any Property value is read.The event is triggered after the specific Property event. More...
|
|
daq::ListPtr< daq::IProperty > | getVisibleProperties () const |
| Returns a list of visible properties contained in the Property object. More...
|
|
daq::ListPtr< daq::IProperty > | getAllProperties () const |
| Returns a list of all properties contained in the Property object. More...
|
|
void | setPropertyOrder (const daq::ListPtr< daq::IString > &orderedPropertyNames) const |
| Sets a custom order of properties as defined in the list of property names. More...
|
|
void | beginUpdate () const |
| Begins batch configuration of the object. More...
|
|
void | endUpdate () const |
| Ends batch configuration of the object. More...
|
|
daq::Bool | getUpdating () const |
| Returns the state of batch configuration. More...
|
|
daq::Event< daq::PropertyObjectPtr, daq::EndUpdateEventArgsPtr > | getOnEndUpdate () const |
| Gets the Event that is triggered whenever the batch configuration is applied. More...
|
|
daq::PermissionManagerPtr | getPermissionManager () const |
| Gets the permission manager of property object. More...
|
|