PLCnext API Documentation 23.6.0.37
Public Types | Public Member Functions | List of all members
Arp::System::Rsc::Services::RscStream Class Reference

Enables Rsc services to marshal large data packets as stream. More...

#include <RscStream.hpp>

Public Types

using Stream = Arp::System::Commons::Io::Stream
 

Public Member Functions

 RscStream (void)=default
 Constructs an instance of RscStream
 
 RscStream (RemotingWriter &writer)
 Constructs an instance of RscStream to write stream data More...
 
 RscStream (RemotingReader &reader)
 Constructs an instance of RscStream to read stream data More...
 
 RscStream (const RscStream &rscStream)=default
 Copy Constructor
 
 ~RscStream (void)=default
 Destructs this instance and frees all resources.
 
bool HasWriter (void) const
 Determines if this instance is able to write.
 
bool HasReader (void) const
 Determines if this instance is able to reade.
 
void SetWriter (RemotingWriter *pValue)
 Sets RemotingWriter needed to write stream data More...
 
void SetReader (RemotingReader *pValue)
 Sets RemotingReader needed to read stream data More...
 
void BeginRead (void)
 Begins the read operation. Need pReader to be set.
 
size_t Read (byte *pBuffer, size_t bufferSize)
 Reads up to bufferSize byte into memory referenced by pBuffer More...
 
void Skip (void)
 Skips the entire stream and disposes the read data
 
void DeserializeTo (Stream &stream)
 Deserialize the stream data and copies it to the as agument passed stream
 
void DeserializeTo (RscStream stream)
 Deserialize the stream data and copies it to the as agument passed Rsc stream
 
void BeginWrite (void)
 Begins the write operation
 
void Write (const byte *pBuffer, size_t bufferCount)
 Writes data into stream More...
 
void Flush (void)
 Ends the read writer operation and writes remaining internal buffered bytes
 
void SerializeFrom (Stream &stream)
 Serialize the stream data from the as agument passed stream
 
void SerializeFrom (RscStream stream)
 Serialize the stream data from the as agument passed stream
 

Detailed Description

Enables Rsc services to marshal large data packets as stream.

Constructor & Destructor Documentation

◆ RscStream() [1/2]

Arp::System::Rsc::Services::RscStream::RscStream ( RemotingWriter &  writer)
inline

Constructs an instance of RscStream to write stream data

Parameters
writerReference to RemotingWriter to writer stream data

◆ RscStream() [2/2]

Arp::System::Rsc::Services::RscStream::RscStream ( RemotingReader &  reader)
inline

Constructs an instance of RscStream to read stream data

Parameters
readerReference to RemotingReader to read stream data

Member Function Documentation

◆ Read()

size_t Arp::System::Rsc::Services::RscStream::Read ( byte pBuffer,
size_t  bufferSize 
)

Reads up to bufferSize byte into memory referenced by pBuffer

Parameters
pBufferPointer to buffer memory to write read bytes
bufferSizeSize of memory referenced by pBuffer
Returns
Number of bytes read into pBuffer, 0 if stream ends

◆ SetReader()

void Arp::System::Rsc::Services::RscStream::SetReader ( RemotingReader *  pValue)
inline

Sets RemotingReader needed to read stream data

Parameters
pValuePointer to RemotingReader

◆ SetWriter()

void Arp::System::Rsc::Services::RscStream::SetWriter ( RemotingWriter *  pValue)
inline

Sets RemotingWriter needed to write stream data

Parameters
pValuePointer to RemotingWriter

◆ Write()

void Arp::System::Rsc::Services::RscStream::Write ( const byte pBuffer,
size_t  bufferCount 
)

Writes data into stream

Parameters
pBufferPointer to data
bufferCountAmount of byte to write

The documentation for this class was generated from the following file: