8 #include "Arp/System/Core/delegate.hxx"
9 #include "Arp/System/Rsc/Services/IRscWriteEnumerator.hxx"
10 #include "Arp/System/Rsc/Services/RscArrayWriter.hpp"
14 namespace Arp {
namespace System {
namespace Rsc {
namespace Services
25 typedef std::function<void(
size_t)> BeginFunction;
26 typedef std::function<void(
const T&)> NextFunction;
28 typedef std::function<void()> EndFunction;
89 return this->Next(current);
99 return this->NextArray(arraySize, elementType);
This exception is used when a method call is invalid for object's current state.
Definition: InvalidOperationException.hpp:15
Interface for writing an array or an enumerator. For regular enumerators UndefinedArrayLength is used...
Definition: IRscWriteEnumerator.hxx:23
Helper class to read an array of primtive types from an RscVariant. This class uses the array informa...
Definition: RscArrayWriter.hpp:22
Implements IRscWriteEnumerator for the service implementations. This should only be used in the imple...
Definition: RscImplWriteEnumerator.hxx:23
RscImplWriteEnumerator(const RscImplWriteEnumerator &arg)=default
Copy constructor.
RscImplWriteEnumerator(void)=default
Constructs an RscProxyArrayWriteEnumerator instance.
BeginFunction Begin
Write callback to BeginWrite implementation of service method.
Definition: RscImplWriteEnumerator.hxx:44
void WriteNext(const T &) override
Writes the next enumerator element.
Definition: RscImplWriteEnumerator.hxx:83
void EndWrite(void) override
Ends the enumerator. With an array enumerator all enumerator elements had to be written
Definition: RscImplWriteEnumerator.hxx:103
NextArrayFunction NextArray
Write callback to WriteNext implementation for array elements of service method.
Definition: RscImplWriteEnumerator.hxx:54
void BeginWrite(size_t) override
Begins the operation to write the enumerator.
Definition: RscImplWriteEnumerator.hxx:73
~RscImplWriteEnumerator(void)=default
Destructs this instance and frees all resources.
EndFunction End
Write callback to EndWrite implementation of service method.
Definition: RscImplWriteEnumerator.hxx:59
RscImplWriteEnumerator & operator=(const RscImplWriteEnumerator &arg)=default
Assignment operator.
NextFunction Next
Write callback to WriteNext implementation of service method.
Definition: RscImplWriteEnumerator.hxx:49
@ System
System components used by the System, Device, Plc or Io domains.
RscType
Datatypes supported by Rsc. Values are identical with CommonRemoting::RemotingMarshalType....
Definition: RscType.hpp:37
Root namespace for the PLCnext API