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