#include <uasubscription.h>
Public Member Functions | |
UaStatus | modifySubscription (ServiceSettings &serviceSettings, SubscriptionSettings &subscriptionSettings) |
UaStatus | setPublishingMode (ServiceSettings &serviceSettings, OpcUa_Boolean publishingEnabled) |
UaStatus | createMonitoredItems (ServiceSettings &serviceSettings, OpcUa_TimestampsToReturn timestampsToReturn, const UaMonitoredItemCreateRequests &monitoredItemCreateRequests, UaMonitoredItemCreateResults &monitoredItemCreateResults) |
UaStatus | modifyMonitoredItems (ServiceSettings &serviceSettings, OpcUa_TimestampsToReturn timestampsToReturn, const UaMonitoredItemModifyRequests &monitoredItemModifyRequests, UaMonitoredItemModifyResults &monitoredItemModifyResults) |
UaStatus | setMonitoringMode (ServiceSettings &serviceSettings, OpcUa_MonitoringMode monitoringMode, const UaUInt32Array &monitoredItemIds, UaStatusCodeArray &results) |
UaStatus | deleteMonitoredItems (ServiceSettings &serviceSettings, const UaUInt32Array &monitoredItemIds, UaStatusCodeArray &results) |
UaStatus | republish (ServiceSettings &serviceSettings, OpcUa_Int32 retransmitSequenceNumber, UaDataNotifications &dataNotifications, UaDiagnosticInfos &diagnosticInfos, UaEventFieldLists &eventFieldList, UaStatus &subscriptionStatus) |
UaStatus | beginCreateMonitoredItems (ServiceSettings &serviceSettings, OpcUa_TimestampsToReturn timestampsToReturn, const UaMonitoredItemCreateRequests &monitoredItemCreateRequests, OpcUa_UInt32 transactionId) |
UaStatus | beginModifyMonitoredItems (ServiceSettings &serviceSettings, OpcUa_TimestampsToReturn timestampsToReturn, const UaMonitoredItemModifyRequests &monitoredItemModifyRequests, OpcUa_UInt32 transactionId) |
UaStatus | beginSetMonitoringMode (ServiceSettings &serviceSettings, OpcUa_MonitoringMode monitoringMode, const UaUInt32Array &monitoredItemIds, OpcUa_UInt32 transactionId) |
UaStatus | beginDeleteMonitoredItems (ServiceSettings &serviceSettings, const UaUInt32Array &monitoredItemIds, OpcUa_UInt32 transactionId) |
OpcUa_UInt32 | subscriptionId () |
OpcUa_Double | publishingInterval () |
OpcUa_UInt32 | lifetimeCount () |
OpcUa_UInt32 | maxKeepAliveCount () |
OpcUa_UInt32 | maxNotificationsPerPublish () |
OpcUa_Byte | priority () |
OpcUa_Boolean | publishingEnabled () |
Friends | |
class | UaSession |
The UaSubscription class manges a UA Client created subscription. The class provides all Subscription related UA Services as syncronous and asyncronous methods.
UaStatus UaSubscription::beginCreateMonitoredItems | ( | ServiceSettings & | serviceSettings, |
OpcUa_TimestampsToReturn | timestampsToReturn, | ||
const UaMonitoredItemCreateRequests & | monitoredItemCreateRequests, | ||
OpcUa_UInt32 | transactionId | ||
) |
Ayncronous call to create a list of monitored items in the subscriptions. The monitored items could be data monitored items or event monitored items.
[in,out] | serviceSettings | The general service settings like timeout. See ServiceSettings for more details |
[in] | timestampsToReturn | OPC UA defines two timestamps, the source and the server timestamp. This parameter allows the client to define which timestamps the server should return with the value. The source timestamp is only available for Value Attributes. The source timestamp is used to reflect the timestamp that was applied to a Variable value by the data source. It should indicate the last change of the value or status code. The source timestamp must be always generated by the same physical clock. This timestamp type was added for OPC UA to cover the use case to get the timestamp of the last value change which is different than the server timestamp definition. The server timestamp is used to reflect the time that the server received a Variable value or knew it to be accurate if the changes are reported by exeption and the connection to the data source is operating. This is the behavior expected by Classic OPC Possible values are: OpcUa_TimestampsToReturn_Source OpcUa_TimestampsToReturn_Server OpcUa_TimestampsToReturn_Both |
[in] | monitoredItemCreateRequests | List of monitored items to create |
[in] | transactionId | Transaction ID for the asynchronous call used to assign the callback to the transaction |
UaStatus UaSubscription::beginDeleteMonitoredItems | ( | ServiceSettings & | serviceSettings, |
const UaUInt32Array & | monitoredItemIds, | ||
OpcUa_UInt32 | transactionId | ||
) |
Ayncronous call to delete monitored items
[in,out] | serviceSettings | The general service settings like timeout. See ServiceSettings for more details |
[in] | monitoredItemIds | List of monitored items to delete |
[in] | transactionId | Transaction ID for the asynchronous call used to assign the callback to the transaction |
UaStatus UaSubscription::beginModifyMonitoredItems | ( | ServiceSettings & | serviceSettings, |
OpcUa_TimestampsToReturn | timestampsToReturn, | ||
const UaMonitoredItemModifyRequests & | monitoredItemModifyRequests, | ||
OpcUa_UInt32 | transactionId | ||
) |
Ayncronous call to modify monitored items
[in,out] | serviceSettings | The general service settings like timeout. See ServiceSettings for more details |
[in] | timestampsToReturn | OPC UA defines two timestamps, the source and the server timestamp. This parameter allows the client to define which timestamps the server should return with the value. The source timestamp is only available for Value Attributes. The source timestamp is used to reflect the timestamp that was applied to a Variable value by the data source. It should indicate the last change of the value or status code. The source timestamp must be always generated by the same physical clock. This timestamp type was added for OPC UA to cover the use case to get the timestamp of the last value change which is different than the server timestamp definition. The server timestamp is used to reflect the time that the server received a Variable value or knew it to be accurate if the changes are reported by exeption and the connection to the data source is operating. This is the behavior expected by Classic OPC Possible values are: OpcUa_TimestampsToReturn_Source OpcUa_TimestampsToReturn_Server OpcUa_TimestampsToReturn_Both |
[in] | monitoredItemModifyRequests | List of monitored items to modify |
[in] | transactionId | Transaction ID for the asynchronous call used to assign the callback to the transaction |
UaStatus UaSubscription::beginSetMonitoringMode | ( | ServiceSettings & | serviceSettings, |
OpcUa_MonitoringMode | monitoringMode, | ||
const UaUInt32Array & | monitoredItemIds, | ||
OpcUa_UInt32 | transactionId | ||
) |
Ayncronous call to set monitoring mode for monitored items
[in,out] | serviceSettings | The general service settings like timeout. See ServiceSettings for more details |
[in] | monitoringMode | New monitoring mode. Options are OpcUa_MonitoringMode_Disabled, OpcUa_MonitoringMode_Sampling and OpcUa_MonitoringMode_Reporting |
[in] | monitoredItemIds | List of monitored items where the monitoring mode should be changed |
[in] | transactionId | Transaction ID for the asynchronous call used to assign the callback to the transaction |
UaStatus UaSubscription::createMonitoredItems | ( | ServiceSettings & | serviceSettings, |
OpcUa_TimestampsToReturn | timestampsToReturn, | ||
const UaMonitoredItemCreateRequests & | monitoredItemCreateRequests, | ||
UaMonitoredItemCreateResults & | monitoredItemCreateResults | ||
) |
Creates a list of monitored items in the subscriptions. The monitored items could be data monitored items or event monitored items.
[in,out] | serviceSettings | The general service settings like timeout. See ServiceSettings for more details |
[in] | timestampsToReturn | OPC UA defines two timestamps, the source and the server timestamp. This parameter allows the client to define which timestamps the server should return with the value. The source timestamp is only available for Value Attributes. The source timestamp is used to reflect the timestamp that was applied to a Variable value by the data source. It should indicate the last change of the value or status code. The source timestamp must be always generated by the same physical clock. This timestamp type was added for OPC UA to cover the use case to get the timestamp of the last value change which is different than the server timestamp definition. The server timestamp is used to reflect the time that the server received a Variable value or knew it to be accurate if the changes are reported by exeption and the connection to the data source is operating. This is the behavior expected by Classic OPC Possible values are: OpcUa_TimestampsToReturn_Source OpcUa_TimestampsToReturn_Server OpcUa_TimestampsToReturn_Both |
[in] | monitoredItemCreateRequests | List of monitored items to create |
[out] | monitoredItemCreateResults | List of create results |
UaStatus UaSubscription::deleteMonitoredItems | ( | ServiceSettings & | serviceSettings, |
const UaUInt32Array & | monitoredItemIds, | ||
UaStatusCodeArray & | deleteResults | ||
) |
Delete monitored items
[in,out] | serviceSettings | The general service settings like timeout. See ServiceSettings for more details |
[in] | monitoredItemIds | List of monitored items to delete |
[out] | deleteResults | List of delete results |
OpcUa_UInt32 UaSubscription::lifetimeCount | ( | ) |
Returns the lifetime count of the subscription.
OpcUa_UInt32 UaSubscription::maxKeepAliveCount | ( | ) |
Returns the maximim keep alive count of the subscription
OpcUa_UInt32 UaSubscription::maxNotificationsPerPublish | ( | ) |
Returns the maximum number of notifications per publish for the subscription
UaStatus UaSubscription::modifyMonitoredItems | ( | ServiceSettings & | serviceSettings, |
OpcUa_TimestampsToReturn | timestampsToReturn, | ||
const UaMonitoredItemModifyRequests & | monitoredItemModifyRequests, | ||
UaMonitoredItemModifyResults & | monitoredItemModifyResults | ||
) |
Modify monitored items
[in,out] | serviceSettings | The general service settings like timeout. See ServiceSettings for more details |
[in] | timestampsToReturn | OPC UA defines two timestamps, the source and the server timestamp. This parameter allows the client to define which timestamps the server should return with the value. The source timestamp is only available for Value Attributes. The source timestamp is used to reflect the timestamp that was applied to a Variable value by the data source. It should indicate the last change of the value or status code. The source timestamp must be always generated by the same physical clock. This timestamp type was added for OPC UA to cover the use case to get the timestamp of the last value change which is different than the server timestamp definition. The server timestamp is used to reflect the time that the server received a Variable value or knew it to be accurate if the changes are reported by exeption and the connection to the data source is operating. This is the behavior expected by Classic OPC Possible values are: OpcUa_TimestampsToReturn_Source OpcUa_TimestampsToReturn_Server OpcUa_TimestampsToReturn_Both |
[in] | monitoredItemModifyRequests | List of monitored items to modify |
[out] | monitoredItemModifyResults | List of modify results |
UaStatus UaSubscription::modifySubscription | ( | ServiceSettings & | serviceSettings, |
SubscriptionSettings & | subscriptionSettings | ||
) |
Modify the subscription settings
[in,out] | serviceSettings | The general service settings like timeout. See ServiceSettings for more details |
[in,out] | subscriptionSettings | The new subscription settings. See SubscriptionSettings for more details |
OpcUa_Byte UaSubscription::priority | ( | ) |
Returns the priority of the subscription
OpcUa_Boolean UaSubscription::publishingEnabled | ( | ) |
Returns the publish enabled flag of the subscription
OpcUa_Double UaSubscription::publishingInterval | ( | ) |
Returns the publishing interval of the subscription
UaStatus UaSubscription::republish | ( | ServiceSettings & | serviceSettings, |
OpcUa_Int32 | retransmitSequenceNumber, | ||
UaDataNotifications & | dataNotifications, | ||
UaDiagnosticInfos & | diagnosticInfos, | ||
UaEventFieldLists & | eventFieldList, | ||
UaStatus & | subscriptionStatus | ||
) |
Republish call to get lost notifications
[in,out] | serviceSettings | The general service settings like timeout. See ServiceSettings for more details |
[in] | retransmitSequenceNumber | The sequence number which will be retransmited |
[out] | dataNotifications | List of data notifiations. The list can be empty if the message contains only event notifications. |
[out] | diagnosticInfos | List of diagnostic info related to the data notifications. This list can be empty. |
[out] | eventFieldList | List of event notifiations. The list can be empty if the message contains only data change notifications. |
[out] | subscriptionStatus | Contains the status of the subscription if it has changed. |
UaStatus UaSubscription::setMonitoringMode | ( | ServiceSettings & | serviceSettings, |
OpcUa_MonitoringMode | monitoringMode, | ||
const UaUInt32Array & | monitoredItemIds, | ||
UaStatusCodeArray & | setMonitoringResults | ||
) |
Set monitoring mode for monitored items
[in,out] | serviceSettings | The general service settings like timeout. See ServiceSettings for more details |
[in] | monitoringMode | New monitoring mode. Options are OpcUa_MonitoringMode_Disabled, OpcUa_MonitoringMode_Sampling and OpcUa_MonitoringMode_Reporting |
[in] | monitoredItemIds | List of monitored items where the monitoring mode should be changed |
[out] | setMonitoringResults | List of change results |
UaStatus UaSubscription::setPublishingMode | ( | ServiceSettings & | serviceSettings, |
OpcUa_Boolean | publishingEnabled | ||
) |
Set the publishing mode of the subscription
[in,out] | serviceSettings | The general service settings like timeout. See ServiceSettings for more details |
[in] | publishingEnabled | New publishing enabled setting. |
OpcUa_UInt32 UaSubscription::subscriptionId | ( | ) |
Returns the id of the subscription