8 #include "Arp/System/Commons/Io/SeekOrigin.hpp" 10 namespace Arp {
namespace System {
namespace Commons {
namespace Io
29 virtual boolean CanRead(
void) = 0;
30 virtual boolean CanWrite(
void) = 0;
31 virtual boolean CanSeek(
void) = 0;
32 virtual size_t GetLength(
void) = 0;
33 virtual void SetLength(
size_t length) = 0;
34 virtual size_t GetPosition(
void) = 0;
35 virtual void SetPosition(
size_t position) = 0;
38 virtual void Flush(
void) = 0;
39 virtual size_t Seek(
size_t offset,
SeekOrigin origin) = 0;
40 virtual size_t Read(
byte* pBuffer,
size_t bufferSize,
size_t offset,
size_t count) = 0;
41 virtual void Write(
const byte* pBuffer,
size_t bufferSize,
size_t offset,
size_t count) = 0;
43 virtual byte ReadByte(
void);
44 virtual void WriteByte(
byte value);
50 boolean IsDisposed(
void);
51 void CheckDisposed(
void);
52 virtual void InternalDispose(
void) = 0;
72 inline boolean Stream::IsDisposed(
void)
74 return this->isDisposed;
Stream(void)
Constructs an Stream instance.
Definition: Stream.hpp:63
virtual ~Stream(void)
Destructs this instance and frees all resources.
Definition: Stream.hpp:68
Stream & operator=(const Stream &arg)=delete
Assignment operator.
Provides a generic view of a sequence of bytes.
Definition: Stream.hpp:16
Root namespace for the PLCnext API
SeekOrigin
Provides seek reference points. To seek to the end of a stream, call stream.Seek(0, SeekOrigin.End).
Definition: SeekOrigin.hpp:19
System components used by the System, Device, Plc or Io domains.
unsigned char byte
The Arp character type.
Definition: PrimitiveTypes.hpp:23