PLCnext API Documentation  21.0.0.35466
SubscriptionServiceProxy.hpp
1 //
3 // Copyright PHOENIX CONTACT Electronics GmbH
4 //
6 #pragma once
7 #include "Arp/System/Rsc/Services/RscServiceProxyBase.hxx"
8 #include "ISubscriptionService.hpp"
9 
10 // DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED BY ISubscriptionService.cs
11 
12 namespace Arp { namespace Plc { namespace Gds { namespace Services
13 {
14 
15 using namespace Arp;
16 
17 class SubscriptionServiceProxy : public RscServiceProxyBase<ISubscriptionService>
18 {
19 public: // construction/destruction
21  SubscriptionServiceProxy(RscHandle providerHandle, RscHandle serviceHandle, RscClient& rscClient);
23  virtual ~SubscriptionServiceProxy(void);
24 
25 public: // ISubscriptionService operations
26  uint32 CreateSubscription(SubscriptionKind kind)override;
27  uint32 CreateRecordingSubscription(uint16 recordCount)override;
28  DataAccessError AddVariable(uint32 subscriptionId, const RscString<512>& variableName)override;
29  void AddVariables(uint32 subscriptionId, AddVariablesVariableNamesDelegate variableNamesDelegate, AddVariablesResultDelegate resultDelegate)override;
30  DataAccessError RemoveVariable(uint32 subscriptionId, const RscString<512>& variableName)override;
31  DataAccessError Subscribe(uint32 subscriptionId, uint64 sampleRate)override;
32  DataAccessError Resubscribe(uint32 subscriptionId, uint64 sampleRate)override;
33  DataAccessError Unsubscribe(uint32 subscriptionId)override;
34  DataAccessError DeleteSubscription(uint32 subscriptionId)override;
35  DataAccessError GetVariableInfos(uint32 subscriptionId, GetVariableInfosVariableInfoDelegate variableInfoDelegate)override;
36  DataAccessError GetTimeStampedVariableInfos(uint32 subscriptionId, GetTimeStampedVariableInfosVariableInfoDelegate variableInfoDelegate)override;
37  DataAccessError GetRecordInfos(uint32 subscriptionId, GetRecordInfosRecordInfosDelegate recordInfosDelegate)override;
38  DataAccessError ReadValues(uint32 subscriptionId, ReadValuesValuesDelegate valuesDelegate)override;
39  DataAccessError ReadTimeStampedValues(uint32 subscriptionId, ReadTimeStampedValuesValuesDelegate valuesDelegate)override;
40  DataAccessError ReadRecords(uint32 subscriptionId, uint16 count, ReadRecordsRecordsDelegate recordsDelegate)override;
41 
42 private: // deleted methods (for non-copyable classes)
44  SubscriptionServiceProxy& operator=(const SubscriptionServiceProxy& arg) = delete;
45 };
46 
48 // inline methods of class SubscriptionServiceProxy
50 {
51 }
52 
53 }}}} // end of namespace Arp::Plc::Gds::Services
std::uint32_t uint32
The Arp unsigned integer type of 4 byte size.
Definition: PrimitiveTypes.hpp:35
DataAccessError
This enumeration contains the possible data access errors.
Definition: DataAccessError.hpp:20
Root namespace for the PLCnext API
std::uint16_t uint16
The Arp unsigned integer type of 2 byte size.
Definition: PrimitiveTypes.hpp:31
std::uint64_t uint64
The Arp unsigned integer type of 8 byte size.
Definition: PrimitiveTypes.hpp:39
SubscriptionKind
This enumeration contains the possible kinds of subscriptions.
Definition: SubscriptionKind.hpp:29
Definition: SubscriptionServiceProxy.hpp:17
virtual ~SubscriptionServiceProxy(void)
Destructs this instance and frees all resouces.
Definition: SubscriptionServiceProxy.hpp:49