ADTF
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
IStreamabstract

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

#include <stream_intf.h>

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

Static Public Attributes

static const uint8_t m_ui8PlatformByteOrder
 

Protected Member Functions

 ~IStream ()=default
 Protected destructor --> Only the final implementation can be destroyed!
 
- Protected Member Functions inherited from IObject
 ~IObject ()=default
 Protected destructor --> Only the final implementation can be destroyed!
 

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.

Member Data Documentation

◆ m_ui8PlatformByteOrder

const uint8_t m_ui8PlatformByteOrder
static

Definition at line 95 of file stream_intf.h.