Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
iser::CMemoryReadArchive Class Reference

Implementation of archive using memory buffer to read the persistent objects. More...

#include <CMemoryReadArchive.h>

Inheritance diagram for iser::CMemoryReadArchive:
iser::CBinaryReadArchiveBase iser::CReadArchiveBase iser::CArchiveBase iser::IArchive istd::ILogger istd::IPolymorphic istd::IPolymorphic iser::CBitMemoryReadArchive

Public Types

typedef CBinaryReadArchiveBase BaseClass
 
- Public Types inherited from iser::CBinaryReadArchiveBase
enum  MessageId { MI_STRING_TOO_LONG = 0x3f320b0 }
 
typedef CReadArchiveBase BaseClass
 
- Public Types inherited from iser::IArchive
enum  MessageId { MI_TAG_ERROR = 0x3f320a0, MI_TAG_SKIPPED }
 

Public Member Functions

 CMemoryReadArchive (const void *bufferPtr, int bufferSize, bool serializeHeader=true)
 
 CMemoryReadArchive (const CMemoryWriteArchive &writeArchive, bool serializeHeader=true)
 
virtual void ResetPosition ()
 Seeks internal cursor to the begin of data. More...
 
virtual bool IsValid () const
 Returns true if the archive is in valid state and internal position cursor has not reached end of archive data. More...
 
virtual bool ProcessData (void *data, int size)
 Process binary data block. More...
 
- Public Member Functions inherited from iser::CBinaryReadArchiveBase
virtual bool BeginTag (const CArchiveTag &tag)
 Begin of archive tag. More...
 
virtual bool EndTag (const CArchiveTag &tag)
 End of archive tag. More...
 
virtual bool Process (bool &value)
 Process primitive type. More...
 
virtual bool Process (char &value)
 Process primitive type. More...
 
virtual bool Process (quint8 &value)
 Process primitive type. More...
 
virtual bool Process (qint8 &value)
 Process primitive type. More...
 
virtual bool Process (quint16 &value)
 Process primitive type. More...
 
virtual bool Process (qint16 &value)
 Process primitive type. More...
 
virtual bool Process (quint32 &value)
 Process primitive type. More...
 
virtual bool Process (qint32 &value)
 Process primitive type. More...
 
virtual bool Process (quint64 &value)
 Process primitive type. More...
 
virtual bool Process (qint64 &value)
 Process primitive type. More...
 
virtual bool Process (float &value)
 Process primitive type. More...
 
virtual bool Process (double &value)
 Process primitive type. More...
 
virtual bool Process (QByteArray &value)
 Process primitive type. More...
 
virtual bool Process (QString &value)
 Process primitive type. More...
 
- Public Member Functions inherited from iser::CReadArchiveBase
virtual bool IsStoring () const
 Check if this archive is loading or storing. More...
 
virtual const IVersionInfoGetVersionInfo () const
 Get version of archived stream for specific versioning type. More...
 
virtual bool ProcessBits (void *dataPtr, int bitsCount, int bytesCount)
 Process binary data block. More...
 
- Public Member Functions inherited from iser::CArchiveBase
virtual bool IsTagSkippingSupported () const
 Check if skiping to the end of tag on EndTag is supported. More...
 
virtual bool BeginMultiTag (const CArchiveTag &tag, const CArchiveTag &subTag, int &count)
 Begin of archive tag containing set of subelements of the same type. More...
 
- Public Member Functions inherited from istd::IPolymorphic
virtual ~IPolymorphic ()
 

Static Public Member Functions

static bool CloneObjectByArchive (const ISerializable &source, ISerializable &result)
 Clone serializable objects using iser::CMemoryWriteArchive and iser::CMemoryReadArchive archives. More...
 
- Static Public Member Functions inherited from iser::CArchiveBase
static const CArchiveTagGetAcfRootTag ()
 

Protected Member Functions

virtual int GetMaxStringLength () const
 Get maximal allowed string size. More...
 
- Protected Member Functions inherited from iser::CReadArchiveBase
bool SerializeAcfHeader ()
 Serialize standard header. More...
 
- Protected Member Functions inherited from iser::CArchiveBase
 CArchiveBase ()
 
- Protected Member Functions inherited from istd::ILogger
virtual void DecorateMessage (IInformationProvider::InformationCategory category, int id, int flags, QString &message, QString &messageSource) const
 Decorate message parts before outputting. More...
 
virtual bool IsLogConsumed (const IInformationProvider::InformationCategory *categoryPtr=NULL, const int *flagsPtr=NULL) const
 Check if any log message is consumed. More...
 
virtual bool SendLogMessage (IInformationProvider::InformationCategory category, int id, const QString &message, const QString &messageSource, int flags=0) const
 Send any message to log. More...
 

Protected Attributes

const quint8 * m_bufferPtr
 
int m_bufferSize
 
int m_readPosition
 
bool m_isValid
 

Additional Inherited Members

- Static Protected Attributes inherited from iser::CArchiveBase
static CArchiveTag s_acfRootTag
 

Detailed Description

Implementation of archive using memory buffer to read the persistent objects.

Internal format of this buffer is compatible with class iser::CMemoryWriteArchive.

Definition at line 23 of file CMemoryReadArchive.h.

Member Typedef Documentation

Definition at line 26 of file CMemoryReadArchive.h.

Constructor & Destructor Documentation

iser::CMemoryReadArchive::CMemoryReadArchive ( const void *  bufferPtr,
int  bufferSize,
bool  serializeHeader = true 
)
iser::CMemoryReadArchive::CMemoryReadArchive ( const CMemoryWriteArchive writeArchive,
bool  serializeHeader = true 
)

Member Function Documentation

static bool iser::CMemoryReadArchive::CloneObjectByArchive ( const ISerializable source,
ISerializable result 
)
static

Clone serializable objects using iser::CMemoryWriteArchive and iser::CMemoryReadArchive archives.

virtual int iser::CMemoryReadArchive::GetMaxStringLength ( ) const
protectedvirtual

Get maximal allowed string size.

Reimplemented from iser::CBinaryReadArchiveBase.

virtual bool iser::CMemoryReadArchive::IsValid ( ) const
virtual

Returns true if the archive is in valid state and internal position cursor has not reached end of archive data.

Reimplemented in iser::CBitMemoryReadArchive.

virtual bool iser::CMemoryReadArchive::ProcessData ( void *  dataPtr,
int  size 
)
virtual

Process binary data block.

Parameters
dataPtrpointer to memory block.
sizesize of memory block in bytes.

Implements iser::IArchive.

Reimplemented in iser::CBitMemoryReadArchive.

virtual void iser::CMemoryReadArchive::ResetPosition ( )
virtual

Seeks internal cursor to the begin of data.

Reimplemented in iser::CBitMemoryReadArchive.

Member Data Documentation

const quint8* iser::CMemoryReadArchive::m_bufferPtr
protected

Definition at line 60 of file CMemoryReadArchive.h.

int iser::CMemoryReadArchive::m_bufferSize
protected

Definition at line 61 of file CMemoryReadArchive.h.

bool iser::CMemoryReadArchive::m_isValid
protected

Definition at line 63 of file CMemoryReadArchive.h.

int iser::CMemoryReadArchive::m_readPosition
protected

Definition at line 62 of file CMemoryReadArchive.h.


The documentation for this class was generated from the following file:

© 2007-2017 Witold Gantzke and Kirill Lepskiy