PLCnext API Documentation  22.9.0.33
NullStream.hpp
1 //
3 // Copyright PHOENIX CONTACT Electronics GmbH
4 //
6 #pragma once
7 #include "Arp/System/Core/Arp.h"
8 #include "Arp/System/Commons/Io/Stream.hpp"
9 
10 namespace Arp { namespace System { namespace Commons { namespace Io
11 {
12 
13 class NullStream : public Stream
14 {
15 public: // construction/destruction
17  NullStream(void) = default;
18 
19 public: // setter/getter operations
20  boolean CanRead(void)final;
21  boolean CanWrite(void)final;
22  boolean CanSeek(void)final;
23  size_t GetLength(void)final;
24  void SetLength(size_t length)final;
25  size_t GetPosition(void)final;
26  void SetPosition(size_t position)final;
27 
28 public: // operations
29  void Flush(void)final;
30  size_t Seek(size_t offset, SeekOrigin origin)final;
31  size_t Read(byte* pBuffer, size_t bufferSize, size_t offset, size_t count)final;
32  void Write(const byte* pBuffer, size_t bufferSize, size_t offset, size_t count)final;
33  byte ReadByte(void)final;
34  void WriteByte(byte value)final;
35 
36 protected: // operations
37  void InternalDispose(void)final;
38 };
39 
40 }}}} // end of namespace Arp::System::Commons::Io
Definition: NullStream.hpp:14
NullStream(void)=default
Constructs an NullStream instance.
Provides a generic view of a sequence of bytes.
Definition: Stream.hpp:20
@ System
System components used by the System, Device, Plc or Io domains.
SeekOrigin
Provides seek reference points. To seek to the end of a stream, call stream.Seek(0,...
Definition: SeekOrigin.hpp:20
Root namespace for the PLCnext API