ADTF  3.18.2
IStreamabstract

The IStream interface provides defines methods for streaming data. More...

Inheritance diagram for IStream:
[legend]

Public Types

enum  tSeekOrigin : uint8_t { SO_Begin = 0 , SO_Current = 1 , SO_End = 2 }
 Stream seek origin. More...
 
enum  tStreamFlags { SF_NONE = 0x00 }
 Stream flags. More...
 

Public Member Functions

 ADTF_IID (IStream, "stream.ant.ucom.adtf.iid")
 Marks the IStream to be castable with the ucom_cast<> More...
 
 UCOM_RESOLVE (IObject, IInputStream)
 
virtual tResult Seek (tFilePos nPos, tSeekOrigin eOrigin, tFilePos *pNewPos=nullptr) const =0
 Set stream position. More...
 
virtual tResult Reset ()=0
 Reset stream. More...
 
virtual tResult Flush ()=0
 Flush stream data. More...
 
- Public Member Functions inherited from IInputStream
 ADTF_IID (IInputStream, "input_stream.ant.ucom.adtf.iid")
 Marks the IInputStream to be castable with the ucom_cast<> More...
 
virtual tResult Read (void *pvBuffer, size_t nBufferSize, size_t *pnBytesRead=nullptr) const =0
 Read data from stream. More...
 
- Public Member Functions inherited from IObject
 ADTF_IID (IObject, "object.ant.ucom.adtf.iid")
 Marks the IObject to be castable with the ucom_cast() More...
 
- Public Member Functions inherited from IOutputStream
 ADTF_IID (IOutputStream, "output_stream.ant.ucom.adtf.iid")
 Marks the IOutputStream to be castable with the ucom_cast<> More...
 
virtual tResult Write (const void *pvBuffer, size_t nBufferSize, size_t *pnBytesWritten=nullptr)=0
 Write data to stream. More...
 

Static Public Attributes

static const uint8_t m_ui8PlatformByteOrder
 

Protected Member Functions

 ~IStream ()=default
 Protected destructor --> Use implemented Destroy() instead of delete!
 
- Protected Member Functions inherited from IObject
 ~IObject ()=default
 Protected destructor --> Use implemented Destroy() instead of delete!
 

Detailed Description

The IStream interface provides defines methods for streaming data.

Definition at line 83 of file stream_intf.h.

Member Enumeration Documentation

◆ tSeekOrigin

enum tSeekOrigin : uint8_t

Stream seek origin.

Enumerator
SO_Begin 

The position origin is the beginning of the stream.

SO_Current 

The position is relative to the current stream position.

SO_End 

The position is relative to end of the stream.

Definition at line 99 of file stream_intf.h.

◆ tStreamFlags

Stream flags.

Enumerator
SF_NONE 

no flags set.

Definition at line 112 of file stream_intf.h.

Member Function Documentation

◆ ADTF_IID()

ADTF_IID ( IStream  ,
"stream.ant.ucom.adtf.iid"   
)

Marks the IStream to be castable with the ucom_cast<>

See also
ADTF_IID(_interface, _striid)

◆ Flush()

virtual tResult Flush ( )
pure virtual

Flush stream data.

The Flush method flushes all current stream data.

Returns
Returns a standard result code.

◆ Reset()

virtual tResult Reset ( )
pure virtual

Reset stream.

The Reset method resets the stream.

Returns
Returns a standard result code.

◆ Seek()

virtual tResult Seek ( tFilePos  nPos,
tSeekOrigin  eOrigin,
tFilePos pNewPos = nullptr 
) const
pure virtual

Set stream position.

The Seek method sets the current stream position.

Parameters
nPos[in] Position the stream should be set to.
eOrigin[in] Origin reference of the position value.
pNewPos[in,out] Pointer to a variable that receives the new stream position value.
Returns
Returns a standard result code.