openDAQ
Open data acquisition platform
GenericServerCapabilityPtr< InterfaceType > Class Template Reference

Represents standard information about a server's capability to support various protocols. The Server Capability object functions as a Property Object, facilitating the inclusion of custom properties of String, Int, Bool, or Float types. This interface serves to store essential details regarding the supported protocol by a device. It adheres to a standardized set of properties, including methods to retrieve information such as the connection string, protocol name, protocol type, connection type, and core events enabled. Additional String, Int, Bool, or Float-type properties can be added using the appropriate Property Object "add property" method. However, other property types are considered invalid for this interface. The Server Capability object conforms to a standardized format, ensuring compatibility with communication standards. For instance, it provides methods to retrieve details like. More...

Detailed Description

template<typename InterfaceType>
class GenericServerCapabilityPtr< InterfaceType >

Represents standard information about a server's capability to support various protocols. The Server Capability object functions as a Property Object, facilitating the inclusion of custom properties of String, Int, Bool, or Float types. This interface serves to store essential details regarding the supported protocol by a device. It adheres to a standardized set of properties, including methods to retrieve information such as the connection string, protocol name, protocol type, connection type, and core events enabled. Additional String, Int, Bool, or Float-type properties can be added using the appropriate Property Object "add property" method. However, other property types are considered invalid for this interface. The Server Capability object conforms to a standardized format, ensuring compatibility with communication standards. For instance, it provides methods to retrieve details like.

  • the connection string (URL),
  • protocol name (e.g., "OpenDAQNativeStreaming", "OpenDAQOPCUA"),
  • protocol type (e.g., "Configuration&Streaming", "Streaming"),
  • connection type (e.g., IPv4, IPv6),
  • core events enabled (indicating communication mode).

Public Member Functions

daq::StringPtr getConnectionString () const
 Gets the connection string of the device with the current protocol. More...
 
daq::ListPtr< daq::IString > getConnectionStrings () const
 Gets the connection string of the device with the current protocol. More...
 
daq::StringPtr getProtocolName () const
 Gets the name of the protocol supported by the device. More...
 
daq::StringPtr getProtocolId () const
 Gets the id of the protocol supported by the device. Should not contain spaces or special characters except for '_' and '-'. More...
 
daq::ProtocolType getProtocolType () const
 Gets the type of protocol supported by the device. More...
 
daq::StringPtr getPrefix () const
 Gets the prefix of the connection string (eg. "daq.nd" or "daq.opcua") More...
 
daq::StringPtr getConnectionType () const
 Gets the type of connection supported by the device. More...
 
daq::Bool getCoreEventsEnabled () const
 Gets the client update method supported by the device. More...
 
daq::ListPtr< daq::IString > getAddresses () const
 Gets the device's list of addresses with the current protocol. More...
 
daq::IntegerPtr getPort () const
 Gets the port of the device with the current protocol. More...
 
daq::ListPtr< daq::IAddressInfo > getAddressInfo () const
 Gets the list of address information objects. More...
 
daq::StringPtr getProtocolVersion () const
 Gets the protocol version supported by the device's protocol. More...
 

Member Function Documentation

◆ getAddresses()

daq::ListPtr<daq::IString> getAddresses ( ) const
inline

Gets the device's list of addresses with the current protocol.

Returns
The device's list of addresses (hosts)

◆ getAddressInfo()

daq::ListPtr<daq::IAddressInfo> getAddressInfo ( ) const
inline

Gets the list of address information objects.

Returns
The list of address information objects.

Address information duplicates the connection string and address as available on the Server Capability object. Additionally, it provides information on what type of address it is (e.g., IPv4, IPv6), as well as whether the address is reachable.

◆ getConnectionString()

daq::StringPtr getConnectionString ( ) const
inline

Gets the connection string of the device with the current protocol.

Returns
The connection string of the device (URL to connect).

◆ getConnectionStrings()

daq::ListPtr<daq::IString> getConnectionStrings ( ) const
inline

Gets the connection string of the device with the current protocol.

Returns
The connection string of the device (URL to connect).

◆ getConnectionType()

daq::StringPtr getConnectionType ( ) const
inline

Gets the type of connection supported by the device.

Returns
The type of connection (e.g., "TCP/IP").

◆ getCoreEventsEnabled()

daq::Bool getCoreEventsEnabled ( ) const
inline

Gets the client update method supported by the device.

Returns
The client update method (Boolean value indicating if core events are enabled for communication between server and client device).

◆ getPort()

daq::IntegerPtr getPort ( ) const
inline

Gets the port of the device with the current protocol.

Returns
The port of the device.

◆ getPrefix()

daq::StringPtr getPrefix ( ) const
inline

Gets the prefix of the connection string (eg. "daq.nd" or "daq.opcua")

Returns
The connection string prefix

◆ getProtocolId()

daq::StringPtr getProtocolId ( ) const
inline

Gets the id of the protocol supported by the device. Should not contain spaces or special characters except for '_' and '-'.

Returns
The id of the protocol.

◆ getProtocolName()

daq::StringPtr getProtocolName ( ) const
inline

Gets the name of the protocol supported by the device.

Returns
The name of the protocol (e.g., "OpenDAQNativeStreaming", "OpenDAQOPCUA", "OpenDAQLTStreaming").

◆ getProtocolType()

daq::ProtocolType getProtocolType ( ) const
inline

Gets the type of protocol supported by the device.

Returns
The type of protocol (Enumeration value reflecting protocol type: "ConfigurationAndStreaming", "Configuration", "Streaming", "ServerStreaming", "Unknown").

◆ getProtocolVersion()

daq::StringPtr getProtocolVersion ( ) const
inline

Gets the protocol version supported by the device's protocol.

Returns
The protocol version.