8 #include "Arp/System/Rsc/Services/IRscService.hpp" 9 #include "SubscriptionServiceProxyFactory.hpp" 10 #include "Arp/System/Core/delegate.hxx" 11 #include "Arp/System/Rsc/Services/IRscReadEnumerator.hxx" 12 #include "Arp/System/Rsc/Services/IRscWriteEnumerator.hxx" 13 #include "Arp/System/Rsc/Services/RscString.hxx" 14 #include "Arp/System/Rsc/Services/RscVariant.hxx" 15 #include "DataAccessError.hpp" 16 #include "SubscriptionKind.hpp" 17 #include "VariableInfo.hpp" 21 namespace Arp {
namespace Plc {
namespace Gds {
namespace Services
88 typedef std::shared_ptr<ISubscriptionService> Ptr;
89 typedef delegate<void(IRscWriteEnumerator<RscString<512>>&)> AddVariablesVariableNamesDelegate;
90 typedef delegate<void(IRscReadEnumerator<DataAccessError>&)> AddVariablesResultDelegate;
91 typedef delegate<void(IRscReadEnumerator<VariableInfo>&)> GetVariableInfosVariableInfoDelegate;
92 typedef delegate<void(IRscReadEnumerator<VariableInfo>&)> GetTimeStampedVariableInfosVariableInfoDelegate;
93 typedef delegate<void(IRscReadEnumerator<VariableInfo>&)> GetRecordInfosRecordInfosDelegate;
94 typedef delegate<void(IRscReadEnumerator<RscVariant<512>>&)> ReadValuesValuesDelegate;
95 typedef delegate<void(IRscReadEnumerator<RscVariant<512>>&)> ReadTimeStampedValuesValuesDelegate;
96 typedef delegate<void(IRscReadEnumerator<RscVariant<512>>&)> ReadRecordsRecordsDelegate;
105 static IRscServiceProxyFactory& GetProxyFactory(
void);
229 virtual uint32 CreateRecordingSubscription(
uint16 recordCount) = 0;
302 virtual void AddVariables(
uint32 subscriptionId, AddVariablesVariableNamesDelegate variableNamesDelegate, AddVariablesResultDelegate resultDelegate) = 0;
510 virtual DataAccessError GetVariableInfos(
uint32 subscriptionId, GetVariableInfosVariableInfoDelegate variableInfoDelegate) = 0;
559 virtual DataAccessError GetTimeStampedVariableInfos(
uint32 subscriptionId, GetTimeStampedVariableInfosVariableInfoDelegate variableInfoDelegate) = 0;
616 virtual DataAccessError GetRecordInfos(
uint32 subscriptionId, GetRecordInfosRecordInfosDelegate recordInfosDelegate) = 0;
665 virtual DataAccessError ReadValues(
uint32 subscriptionId, ReadValuesValuesDelegate valuesDelegate) = 0;
712 virtual DataAccessError ReadTimeStampedValues(
uint32 subscriptionId, ReadTimeStampedValuesValuesDelegate valuesDelegate) = 0;
808 inline IRscServiceProxyFactory& ISubscriptionService::GetProxyFactory()
810 return SubscriptionServiceProxyFactory::GetInstance();
Namespace for classes and interfaces for the Remote Service Call implementation
Definition: IRscReadEnumerator.hxx:9
std::uint32_t uint32
The Arp unsigned integer type of 4 byte size.
Definition: PrimitiveTypes.hpp:35
Services for the subscription.
Definition: ISubscriptionService.hpp:85
ISubscriptionService(void)
Constructs an ISubscriptionService instance.
Definition: ISubscriptionService.hpp:800
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
Base interface for all Rsc service interface.
Definition: IRscService.hpp:18
SubscriptionKind
This enumeration contains the possible kinds of subscriptions.
Definition: SubscriptionKind.hpp:29
virtual ~ISubscriptionService(void)
Destructs this instance and frees all resouces.
Definition: ISubscriptionService.hpp:804