#ifndef _SAMPLESUBSCRIPTION_H_
#define _SAMPLESUBSCRIPTION_H_ 1
#include <uaclient_subscription.h>
OPCUA_BEGIN_EXTERN_C
typedef enum _SampleSubscriptionStateMachine
{
State_SampleSubscription_Idle,
State_SampleSubscription_SubscriptionCreate,
State_SampleSubscription_SubscriptionCreateDone,
State_SampleSubscription_MonitoredItemCreate,
State_SampleSubscription_MonitoredItemCreateDone,
State_SampleSubscription_MonitoredItemDelete,
State_SampleSubscription_MonitoredItemDeleteDone,
State_SampleSubscription_SubscriptionDelete,
State_SampleSubscription_SubscriptionDeleteDone,
State_SampleSubscription_Error
} SampleSubscriptionStateMachine;
typedef struct _SampleSubscription
{
SampleSubscriptionStateMachine State;
OpcUa_UInt32 uMonitoredItemId0;
OpcUa_UInt32 uMonitoredItemId1;
OpcUa_UInt32 uDataCount;
} SampleSubscription;
OpcUa_Void SampleSubscription_Delete(SampleSubscription **ppSampleSubscription);
OpcUa_StatusCode SampleSubscription_CreateSubscription(SampleSubscription *pSampleSubscription);
OpcUa_StatusCode SampleSubscription_DeleteSubscription(SampleSubscription *pSampleSubscription);
OpcUa_StatusCode SampleSubscription_CreateMonitoredItem(SampleSubscription *pSampleSubscription);
OpcUa_StatusCode SampleSubscription_DeleteMonitoredItem(SampleSubscription *pSampleSubscription);
OPCUA_END_EXTERN_C
#endif