|
@@ -19,38 +19,43 @@ typedef struct {
|
|
} UA_UInt32_BoundedValue;
|
|
} UA_UInt32_BoundedValue;
|
|
|
|
|
|
typedef struct UA_MonitoredItem_s {
|
|
typedef struct UA_MonitoredItem_s {
|
|
- UA_NodeId node;
|
|
+ UA_UInt32 TimestampsToReturn;
|
|
|
|
+ UA_UInt32 MonitoringMode;
|
|
|
|
+ UA_NodeId ItemNodeId;
|
|
|
|
+ UA_UInt32 AttributeID;
|
|
|
|
+ // FIXME: indexRange is ignored; array values default to element 0
|
|
|
|
+ // FIXME: dataEncoding is hardcoded to UA binary
|
|
LIST_ENTRY(UA_MonitoredItem_s) listEntry;
|
|
LIST_ENTRY(UA_MonitoredItem_s) listEntry;
|
|
} UA_MonitoredItem;
|
|
} UA_MonitoredItem;
|
|
|
|
|
|
-
|
|
+typedef LIST_HEAD(UA_ListOfUAMonitoredItems_s, UA_MonitoredItem_s) UA_ListOfUAMonitoredItems;
|
|
typedef struct UA_Subscription_s {
|
|
typedef struct UA_Subscription_s {
|
|
- UA_UInt32_BoundedValue LiveTime;
|
|
+ UA_UInt32_BoundedValue LifeTime;
|
|
UA_UInt32_BoundedValue KeepAliveCount;
|
|
UA_UInt32_BoundedValue KeepAliveCount;
|
|
- UA_Int32 PublishingInterval;
|
|
+ UA_Int32 PublishingInterval;
|
|
- UA_Int32 SubscriptionID;
|
|
+ UA_Int32 SubscriptionID;
|
|
- UA_Int32 NotificationsPerPublish;
|
|
+ UA_Int32 NotificationsPerPublish;
|
|
- UA_Byte PublishingMode;
|
|
+ UA_Boolean PublishingMode;
|
|
- UA_UInt32 Priority;
|
|
+ UA_UInt32 Priority;
|
|
LIST_ENTRY(UA_Subscription_s) listEntry;
|
|
LIST_ENTRY(UA_Subscription_s) listEntry;
|
|
- LIST_HEAD(ListOfUAMonitoredItems, UA_MonitoredItem_s) *MonitoredItems;
|
|
+ UA_ListOfUAMonitoredItems *MonitoredItems;
|
|
} UA_Subscription;
|
|
} UA_Subscription;
|
|
|
|
|
|
-
|
|
+typedef LIST_HEAD(UA_ListOfUASubscriptions_s, UA_Subscription_s) UA_ListOfUASubscriptions;
|
|
typedef struct UA_SubscriptionManager_s {
|
|
typedef struct UA_SubscriptionManager_s {
|
|
UA_Int32_BoundedValue GlobalPublishingInterval;
|
|
UA_Int32_BoundedValue GlobalPublishingInterval;
|
|
UA_UInt32_BoundedValue GlobalLifeTimeCount;
|
|
UA_UInt32_BoundedValue GlobalLifeTimeCount;
|
|
UA_UInt32_BoundedValue GlobalKeepAliveCount;
|
|
UA_UInt32_BoundedValue GlobalKeepAliveCount;
|
|
UA_Int32_BoundedValue GlobalNotificationsPerPublish;
|
|
UA_Int32_BoundedValue GlobalNotificationsPerPublish;
|
|
UA_Int32 LastSessionID;
|
|
UA_Int32 LastSessionID;
|
|
- LIST_HEAD(ListOfUASubscription, UA_Subscription_s) *ServerSubscriptions;
|
|
+ UA_ListOfUASubscriptions *ServerSubscriptions;
|
|
} UA_SubscriptionManager;
|
|
} UA_SubscriptionManager;
|
|
|
|
|
|
void SubscriptionManager_init(UA_Server *server);
|
|
void SubscriptionManager_init(UA_Server *server);
|
|
UA_Subscription *UA_Subscription_new(UA_Int32 SubscriptionID);
|
|
UA_Subscription *UA_Subscription_new(UA_Int32 SubscriptionID);
|
|
void SubscriptionManager_addSubscription(UA_SubscriptionManager *manager, UA_Subscription *subscription);
|
|
void SubscriptionManager_addSubscription(UA_SubscriptionManager *manager, UA_Subscription *subscription);
|
|
-void SubscriptionManager_getSubscriptionByID(UA_SubscriptionManager *manager, UA_Int32 SubscriptionID);
|
|
+UA_Subscription *SubscriptionManager_getSubscriptionByID(UA_SubscriptionManager *manager, UA_Int32 SubscriptionID);
|
|
-void SubscriptionManager_deleteSubscription(UA_SubscriptionManager *manager, UA_Subscription *subscription);
|
|
+void SubscriptionManager_deleteSubscription(UA_SubscriptionManager *manager, UA_Int32 SubscriptionID);
|
|
|
|
|
|
#endif // ifndef... define UA_SUBSCRIPTION_MANAGER_H_
|
|
#endif // ifndef... define UA_SUBSCRIPTION_MANAGER_H_
|
|
#endif // ifdef EnableSubscriptions ...
|
|
#endif // ifdef EnableSubscriptions ...
|