8#include "Arp/System/Commons/Io/Stream.hpp"
9#include "Arp/System/Commons/Exceptions/Exceptions.h"
13namespace Arp {
namespace System {
namespace Commons {
namespace Io
22 MemoryStream(
byte* buffer,
size_t bufferSize,
boolean writable);
23 MemoryStream(
byte* buffer,
size_t bufferSize,
size_t index,
size_t count);
24 MemoryStream(
byte* buffer,
size_t bufferSize,
size_t index,
size_t count,
boolean writable);
25 MemoryStream(
byte* buffer,
size_t bufferSize,
size_t index,
size_t count,
boolean writable,
boolean publiclyVisible);
33 size_t GetLength(
void);
34 void SetLength(
size_t value);
37 size_t GetCapacity(
void);
38 void SetCapacity(
size_t value);
41 size_t Seek(
size_t offset, SeekOrigin origin)
override;
42 size_t Read(
byte* pBuffer,
size_t bufferSize,
size_t offset,
size_t count)
override;
43 void Write(
const byte* pBuffer,
size_t bufferSize,
size_t offset,
size_t count)
override;
44 void Flush(
void)
override;
47 std::vector<byte> ToArray(
void);
50 void Construct(
byte* buffer,
size_t bufferSize,
size_t index,
size_t count,
boolean publicallyVisible);
51 void EnsureSize(
size_t newSize);
56 size_t streamBufferSize;
68 boolean allowGetBuffer;
73 static size_t minCapacity;
This abstract class shall be the base class of all stream implementations.
Definition: Stream.hpp:20
Definition: MemoryStream.hpp:17
MemoryStream(const MemoryStream &arg)=delete
Copy constructor.
size_t GetPosition(void) override
Gets the position of the stream, if it can seek.
Definition: MemoryStream.cpp:190
virtual ~MemoryStream(void)
Destructs this instance and frees all resources.
Definition: MemoryStream.cpp:118
void SetPosition(size_t value) override
Sets the position of the stream, if it can seek.
Definition: MemoryStream.cpp:195
MemoryStream(void)
Initializes a new instance of the T:System.IO.MemoryStream class with an expandable capacity initiali...
Definition: MemoryStream.cpp:14
MemoryStream & operator=(const MemoryStream &arg)=delete
Assignment operator.
Root namespace for the PLCnext API