8 #include "Arp/System/Rsc/Services/IRscReadEnumerator.hxx"
10 namespace Arp {
namespace System {
namespace Rsc {
namespace Services
21 typedef std::function<size_t()> BeginFunction;
22 typedef std::function<bool(T&)> NextFunction;
24 typedef std::function<void()> EndFunction;
87 return this->Next(current);
97 return this->NextArray(current);
This exception is used when a method call is invalid for object's current state.
Definition: InvalidOperationException.hpp:15
Interface for reading an array or an enumerator. For regular enumerators UndefinedArrayLength is used...
Definition: IRscReadEnumerator.hxx:21
Helper class to read an array of primtive types from an RscVariant. This class uses the array informa...
Definition: RscArrayReader.hpp:23
Implements IRscReadEnumeratorfor the service implementations. This should only be used in the impleme...
Definition: RscImplReadEnumerator.hxx:19
NextFunction Next
Write callback to ReadNext implementation of service method.
Definition: RscImplReadEnumerator.hxx:45
BeginFunction Begin
Read callback to BeginRead implementation of service method.
Definition: RscImplReadEnumerator.hxx:40
RscImplReadEnumerator(void)=default
Constructs an RscImplReadEnumerator instance.
EndFunction End
Write callback to EndRead implementation of service method.
Definition: RscImplReadEnumerator.hxx:55
RscImplReadEnumerator(const RscImplReadEnumerator &arg)=default
Copy constructor.
RscImplReadEnumerator & operator=(const RscImplReadEnumerator &arg)=default
Assignment operator.
bool ReadNext(T &) override
Reads the next enumerator element.
Definition: RscImplReadEnumerator.hxx:81
void EndRead(void) override
Ends the operation to read the enumerator. All enumerator elements had to be already been read.
Definition: RscImplReadEnumerator.hxx:101
NextArrayFunction NextArray
Write callback to ReadNext implementation for array elements of service method.
Definition: RscImplReadEnumerator.hxx:50
size_t BeginRead(void) override
Begins the operation to read the enumerator.
Definition: RscImplReadEnumerator.hxx:71
~RscImplReadEnumerator(void)=default
Destructs this instance and frees all resources.
@ System
System components used by the System, Device, Plc or Io domains.
Root namespace for the PLCnext API