ACF $AcfVersion:0$
Public Types | Public Member Functions | List of all members
iser::CJsonMemWriteArchive Class Reference

Implementation of an ACF Archive serializing to JSON string. More...

#include <CJsonMemWriteArchive.h>

Inheritance diagram for iser::CJsonMemWriteArchive:
iser::CJsonWriteArchiveBase iser::CTextWriteArchiveBase iser::CWriteArchiveBase iser::CArchiveBase iser::IArchive istd::ILogger istd::IPolymorphic istd::IPolymorphic

Public Types

typedef CJsonWriteArchiveBase BaseClass
 
- Public Types inherited from iser::CJsonWriteArchiveBase
typedef iser::CTextWriteArchiveBase BaseClass
 
- Public Types inherited from iser::CTextWriteArchiveBase
typedef CWriteArchiveBase BaseClass
 
- Public Types inherited from iser::IArchive
enum  MessageId { MI_TAG_ERROR = 0x3f320a0 , MI_TAG_SKIPPED }
 

Public Member Functions

 CJsonMemWriteArchive (const iser::IVersionInfo *versionInfoPtr=nullptr, bool serializeHeader=true, const iser::CArchiveTag &rootTag=s_acfRootTag)
 
const QByteArray & GetData () const
 Close the archive and get the created JSON string.
 
- Public Member Functions inherited from iser::CJsonWriteArchiveBase
 ~CJsonWriteArchiveBase ()
 
void SetFormat (QJsonDocument::JsonFormat jsonFormat)
 
virtual bool IsTagSkippingSupported () const override
 Checks if skipping to the end of a tag on EndTag() is supported.
 
virtual bool BeginTag (const iser::CArchiveTag &tag) override
 Begins a tagged section in the archive.
 
virtual bool BeginMultiTag (const iser::CArchiveTag &tag, const iser::CArchiveTag &subTag, int &count) override
 Begins a tagged section containing multiple elements of the same type.
 
virtual bool EndTag (const iser::CArchiveTag &tag) override
 Ends a tagged section in the archive.
 
virtual bool Process (QString &value) override
 Process primitive type.
 
virtual bool Process (QByteArray &value) override
 Process primitive type.
 
virtual bool ProcessData (void *dataPtr, int size) override
 Process binary data block.
 
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::CWriteArchiveBase
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 ()
 

Additional Inherited Members

- Static Public Member Functions inherited from iser::CArchiveBase
static const CArchiveTagGetAcfRootTag ()
 
- Protected Member Functions inherited from iser::CJsonWriteArchiveBase
 CJsonWriteArchiveBase (const iser::IVersionInfo *versionInfoPtr, bool serializeHeader, const iser::CArchiveTag &rootTag)
 
bool InitStream (bool serializeHeader)
 
bool InitArchive (QIODevice *devicePtr)
 
bool InitArchive (QByteArray &inputString)
 
bool WriteTag (const iser::CArchiveTag &tag, QString separator)
 
bool WriteJsonHeader ()
 
bool Flush ()
 
virtual bool WriteTextNode (const QByteArray &text) override
 Write single unformatted text node.
 
- Protected Member Functions inherited from iser::CTextWriteArchiveBase
 CTextWriteArchiveBase (const IVersionInfo *versionInfoPtr)
 
- Protected Member Functions inherited from iser::CWriteArchiveBase
 CWriteArchiveBase (const IVersionInfo *versionInfoPtr)
 Constructor.
 
bool SerializeAcfHeader ()
 Serialize standard header.
 
- 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.
 
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.
 
- Protected Attributes inherited from iser::CJsonWriteArchiveBase
QTextStream m_stream
 
QBuffer m_buffer
 
bool m_firstTag
 
QJsonDocument::JsonFormat m_jsonFormat
 
bool m_serializeHeader
 
iser::CArchiveTag m_rootTag
 
bool m_isSeparatorNeeded
 
bool m_allowAttribute
 
bool m_quotationMarksRequired = false
 
QList< TagsStackItemm_tagsStack
 
- Static Protected Attributes inherited from iser::CArchiveBase
static CArchiveTag s_acfRootTag
 

Detailed Description

Implementation of an ACF Archive serializing to JSON string.

Definition at line 16 of file CJsonMemWriteArchive.h.

Member Typedef Documentation

◆ BaseClass

Definition at line 19 of file CJsonMemWriteArchive.h.

Constructor & Destructor Documentation

◆ CJsonMemWriteArchive()

iser::CJsonMemWriteArchive::CJsonMemWriteArchive ( const iser::IVersionInfo versionInfoPtr = nullptr,
bool  serializeHeader = true,
const iser::CArchiveTag rootTag = s_acfRootTag 
)

Member Function Documentation

◆ GetData()

const QByteArray & iser::CJsonMemWriteArchive::GetData ( ) const

Close the archive and get the created JSON string.


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