ACF $AcfVersion:0$
Public Types | Public Member Functions | Protected Member Functions | List of all members
ifile::CSimpleXmlFileReadArchive Class Reference

Simple implementation of archive reading from XML file. More...

#include <CSimpleXmlFileReadArchive.h>

Inheritance diagram for ifile::CSimpleXmlFileReadArchive:
iser::CXmlStreamReadArchiveBase ifile::CFileArchiveInfo iser::CXmlReadArchiveBase ifile::IFileArchiveInfo iser::CTextReadArchiveBase iser::CXmlDocumentInfoBase istd::IPolymorphic iser::CReadArchiveBase iser::CArchiveBase iser::IArchive istd::ILogger istd::IPolymorphic istd::IPolymorphic

Public Types

typedef iser::CXmlStreamReadArchiveBase BaseClass
 
typedef CFileArchiveInfo BaseClass2
 
- Public Types inherited from iser::CXmlStreamReadArchiveBase
typedef CXmlReadArchiveBase BaseClass
 
- Public Types inherited from iser::CXmlReadArchiveBase
typedef CTextReadArchiveBase BaseClass
 
- Public Types inherited from iser::CTextReadArchiveBase
typedef CReadArchiveBase BaseClass
 
- Public Types inherited from iser::IArchive
enum  MessageId { MI_TAG_ERROR = 0x3f320a0 , MI_TAG_SKIPPED }
 

Public Member Functions

 CSimpleXmlFileReadArchive (const QString &filePath, bool serializeHeader=true, const iser::CArchiveTag &rootTag=s_acfRootTag)
 
virtual ~CSimpleXmlFileReadArchive ()
 
- Public Member Functions inherited from iser::CXmlStreamReadArchiveBase
int GetLastReadLine () const
 
- Public Member Functions inherited from iser::CXmlReadArchiveBase
virtual bool IsTagSkippingSupported () const override
 Checks if skipping to the end of a tag on EndTag() is supported.
 
virtual bool BeginTag (const CArchiveTag &tag) override
 Begins a tagged section in the archive.
 
virtual bool BeginMultiTag (const CArchiveTag &tag, const CArchiveTag &subTag, int &count) override
 Begins a tagged section containing multiple elements of the same type.
 
virtual bool EndTag (const CArchiveTag &tag) override
 Ends a tagged section in the archive.
 
virtual bool Process (QByteArray &value) override
 Process primitive type.
 
virtual bool Process (QString &value) override
 Process primitive type.
 
virtual bool Process (bool &value) override
 Processes (reads or writes) a boolean value.
 
virtual bool Process (char &value) override
 Process primitive type.
 
virtual bool Process (quint8 &value) override
 Process primitive type.
 
virtual bool Process (qint8 &value) override
 Process primitive type.
 
virtual bool Process (quint16 &value) override
 Process primitive type.
 
virtual bool Process (qint16 &value) override
 Process primitive type.
 
virtual bool Process (quint32 &value) override
 Process primitive type.
 
virtual bool Process (qint32 &value) override
 Process primitive type.
 
virtual bool Process (quint64 &value) override
 Process primitive type.
 
virtual bool Process (qint64 &value) override
 Process primitive type.
 
virtual bool Process (float &value) override
 Process primitive type.
 
virtual bool Process (double &value) override
 Process primitive type.
 
virtual bool Process (QByteArray &value) override
 Process primitive type.
 
- Public Member Functions inherited from iser::CTextReadArchiveBase
virtual bool ProcessData (void *dataPtr, int size) override
 Process binary data block.
 
- Public Member Functions inherited from iser::CReadArchiveBase
virtual bool IsStoring () const override
 Checks if this archive is in storing (writing) or loading (reading) mode.
 
virtual const IVersionInfoGetVersionInfo () const override
 Gets version information for the archived stream.
 
virtual bool ProcessBits (void *dataPtr, int bitsCount, int bytesCount) override
 Process binary data block.
 
- Public Member Functions inherited from iser::IArchive
template<typename Primitive >
bool TagAndProcess (const CArchiveTag &tag, Primitive &value)
 
- Public Member Functions inherited from istd::IPolymorphic
virtual ~IPolymorphic ()
 
- Public Member Functions inherited from iser::CXmlDocumentInfoBase
 CXmlDocumentInfoBase ()
 
bool IsCommentEnabled () const
 Check if comments in XML document are enabled.
 
void SetCommentEnabled (bool state=true)
 Allows comments in XML document.
 
- Public Member Functions inherited from ifile::CFileArchiveInfo
 CFileArchiveInfo (const QString &filePath)
 
virtual const QString & GetCurrentFilePath () const override
 

Protected Member Functions

virtual void DecorateMessage (istd::IInformationProvider::InformationCategory category, int id, int flags, QString &message, QString &messageSource) const override
 Decorate message parts before outputting.
 
- Protected Member Functions inherited from iser::CXmlStreamReadArchiveBase
 CXmlStreamReadArchiveBase (const CArchiveTag &rootTag=s_acfRootTag)
 
virtual bool ReadToDelimeter (const QByteArray &delimeters, QByteArray &result, bool skipDelimeter=true, char *foundDelimeterPtr=NULL) override
 Read input stream till one of specified delimeters is found.
 
- Protected Member Functions inherited from iser::CXmlReadArchiveBase
 CXmlReadArchiveBase (const CArchiveTag &rootTag)
 
bool InternEndTag (const CArchiveTag &tag, bool &wasTagSkipped)
 Extended implementation of EndTag() with additional flag signalizing that tag is skipped.
 
virtual bool ReadXmlHeader ()
 
virtual bool ReadXmlFooter ()
 
virtual bool ReadTextNode (QByteArray &text) override
 Read single unformatted text node.
 
- Protected Member Functions inherited from iser::CReadArchiveBase
bool SerializeAcfHeader ()
 Serialize standard header.
 
- Protected Member Functions inherited from iser::CArchiveBase
 CArchiveBase ()
 
virtual bool IsLogConsumed (const IInformationProvider::InformationCategory *categoryPtr=NULL, const int *flagsPtr=NULL) const
 Check if any log message is consumed.
 
virtual bool SendLogMessage (IInformationProvider::InformationCategory category, int id, const QString &message, const QString &messageSource, int flags=0) const
 Send any message to log.
 

Additional Inherited Members

- Static Public Member Functions inherited from iser::CArchiveBase
static const CArchiveTagGetAcfRootTag ()
 
- Static Public Member Functions inherited from iser::CXmlDocumentInfoBase
static void EncodeXml (const QByteArray &text, QByteArray &xmlText)
 
static void DecodeXml (const QByteArray &xmlText, QByteArray &text)
 
static void EncodeXml (const QString &text, QByteArray &xmlText)
 
static void DecodeXml (const QByteArray &xmlText, QString &text)
 
static const QString & GetElementSeparator ()
 
- Protected Attributes inherited from iser::CXmlStreamReadArchiveBase
QTextStream m_stream
 
- Protected Attributes inherited from ifile::CFileArchiveInfo
QString m_filePath
 
- Static Protected Attributes inherited from iser::CArchiveBase
static CArchiveTag s_acfRootTag
 

Detailed Description

Simple implementation of archive reading from XML file.

This implementation doesn't use any external parser. It uses only single pass and is very fast, but it doesn't support of tags skipping and it needs counter attribute indicating number of subtags for each mutli tag node. XML file in this format can be created using ifile::CSimpleXmlFileWriteArchive.

Definition at line 26 of file CSimpleXmlFileReadArchive.h.

Member Typedef Documentation

◆ BaseClass

Definition at line 31 of file CSimpleXmlFileReadArchive.h.

◆ BaseClass2

Definition at line 32 of file CSimpleXmlFileReadArchive.h.

Constructor & Destructor Documentation

◆ CSimpleXmlFileReadArchive()

ifile::CSimpleXmlFileReadArchive::CSimpleXmlFileReadArchive ( const QString &  filePath,
bool  serializeHeader = true,
const iser::CArchiveTag rootTag = s_acfRootTag 
)
explicit

◆ ~CSimpleXmlFileReadArchive()

virtual ifile::CSimpleXmlFileReadArchive::~CSimpleXmlFileReadArchive ( )
virtual

Member Function Documentation

◆ DecorateMessage()

virtual void ifile::CSimpleXmlFileReadArchive::DecorateMessage ( istd::IInformationProvider::InformationCategory  category,
int  id,
int  flags,
QString &  message,
QString &  messageSource 
) const
overrideprotectedvirtual

Decorate message parts before outputting.

Reimplemented from iser::CXmlStreamReadArchiveBase.


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