![]() |
ICF 3.0.5.47
Technical documentation of ICF Libraries
|
Represent input/output persistence archive. More...
#include <IArchive.h>
Public Types | |
enum | MessageId { MI_TAG_ERROR = 0x3f320a0 , MI_TAG_SKIPPED } |
Public Member Functions | |
virtual bool | IsChanging () const =0 |
Check if this archive processing change the object state. | |
virtual bool | IsTagSkippingSupported () const =0 |
Check if skiping to the end of tag on EndTag is supported. | |
virtual const IVersionInfo & | GetVersionInfo () const =0 |
Get version of archived stream for specific versioning type. | |
virtual bool | BeginTag (const CArchiveTag &tag)=0 |
Begin of archive tag. | |
virtual bool | BeginMultiTag (const CArchiveTag &tag, const CArchiveTag &subTag, int &count)=0 |
Begin of archive tag containing set of subelements of the same type. | |
virtual bool | EndTag (const CArchiveTag &tag)=0 |
End of archive tag. | |
virtual bool | Process (bool &value)=0 |
Process primitive type. | |
virtual bool | Process (char &value)=0 |
Process primitive type. | |
virtual bool | Process (quint8 &value)=0 |
Process primitive type. | |
virtual bool | Process (qint8 &value)=0 |
Process primitive type. | |
virtual bool | Process (quint16 &value)=0 |
Process primitive type. | |
virtual bool | Process (qint16 &value)=0 |
Process primitive type. | |
virtual bool | Process (quint32 &value)=0 |
Process primitive type. | |
virtual bool | Process (qint32 &value)=0 |
Process primitive type. | |
virtual bool | Process (quint64 &value)=0 |
Process primitive type. | |
virtual bool | Process (qint64 &value)=0 |
Process primitive type. | |
virtual bool | Process (float &value)=0 |
Process primitive type. | |
virtual bool | Process (double &value)=0 |
Process primitive type. | |
virtual bool | Process (QByteArray &value)=0 |
Process primitive type. | |
virtual bool | Process (QString &value)=0 |
Process primitive type. | |
virtual bool | ProcessData (void *dataPtr, int size)=0 |
Process binary data block. | |
virtual bool | ProcessBits (void *dataPtr, int bitsCount, int bytesCount)=0 |
Process binary data block. | |
Represent input/output persistence archive.
Definition at line 32 of file IArchive.h.
Enumerator | |
---|---|
MI_TAG_ERROR | |
MI_TAG_SKIPPED |
Definition at line 35 of file IArchive.h.
|
pure virtual |
Begin of archive tag containing set of subelements of the same type.
tag | main tag. |
subTag | type of subelement tag. |
count | number of subelements. If it is read archive this value will be set. If it storing archive this is input value. |
useTagSkipping | flag signalling that support of tag skipping should be enabled. |
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CArchiveBase, iser::CCompactXmlReadArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringReadArchive, iser::CJsonStringWriteArchive, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
Referenced by ialgo::TGeneralHoughSpace< Dimensions, Element >::Serialize(), iattr::TMultiAttribute< Value >::Serialize(), ibase::TFactorisableContainer< InterfaceClass >::Serialize(), ibase::TSerializableContainer< ItemClass, ContainerType >::Serialize(), icmm::TComposedColor< Size >::Serialize(), idoc::TMultiPageDocumentWrap< Base >::Serialize(), imath::TFastVector< MaxSize, Element >::Serialize(), imath::TFulcrumGrid< Position, Fulcrums >::Serialize(), imath::TMathVectorWrap< Base >::Serialize(), imeas::TDiscreteDataSequence< Element >::Serialize(), iser::CPrimitiveTypesSerializer::SerializeContainer(), and iser::CPrimitiveTypesSerializer::SerializeSimpleContainer().
|
pure virtual |
Begin of archive tag.
tag | tag object. |
useTagSkipping | flag signalling that support of tag skipping should be enabled. |
Implemented in ifile::CFileReadArchive, ifile::CFileWriteArchive, ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlReadArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringReadArchive, iser::CJsonStringWriteArchive, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
Referenced by ialgo::TGeneralHoughSpace< Dimensions, Element >::Serialize(), iattr::TAttribute< Value >::Serialize(), iattr::TMultiAttribute< Value >::Serialize(), ibase::TFactorisableContainer< InterfaceClass >::Serialize(), ibase::TSerializableContainer< ItemClass, ContainerType >::Serialize(), icmm::TComposedColor< Size >::Serialize(), idoc::TMultiPageDocumentWrap< Base >::Serialize(), iipr::TWeightedFeatureWrap< BaseObject >::Serialize(), ilog::TExtMessage< Element >::Serialize(), imath::TFastVector< MaxSize, Element >::Serialize(), imath::TFulcrumGrid< Position, Fulcrums >::Serialize(), imath::TMathVectorWrap< Base >::Serialize(), imath::TMatrix< Width, Height, Element >::Serialize(), imath::TMultidimensionalPolynomial< Dimensions, Element >::Serialize(), imeas::TDiscreteDataSequence< Element >::Serialize(), imeas::TMeasurementValue< ValueType >::Serialize(), iser::CPrimitiveTypesSerializer::SerializeContainer(), idoc::TMultiPageDocumentWrap< Base >::SerializePage(), and iser::CPrimitiveTypesSerializer::SerializeSimpleContainer().
|
pure virtual |
End of archive tag.
This method should be allways called after BeginTag is successfull called. If skipping of tag contains is supported, this will skip to the end of tag while archive reading. Otherwise you have to read contains of archive completely.
Implemented in ifile::CFileReadArchive, ifile::CFileWriteArchive, ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlReadArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringReadArchive, iser::CJsonStringWriteArchive, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
Referenced by ialgo::TGeneralHoughSpace< Dimensions, Element >::Serialize(), iattr::TAttribute< Value >::Serialize(), iattr::TMultiAttribute< Value >::Serialize(), ibase::TFactorisableContainer< InterfaceClass >::Serialize(), ibase::TSerializableContainer< ItemClass, ContainerType >::Serialize(), icmm::TComposedColor< Size >::Serialize(), idoc::TMultiPageDocumentWrap< Base >::Serialize(), iipr::TWeightedFeatureWrap< BaseObject >::Serialize(), ilog::TExtMessage< Element >::Serialize(), imath::TFastVector< MaxSize, Element >::Serialize(), imath::TFulcrumGrid< Position, Fulcrums >::Serialize(), imath::TMathVectorWrap< Base >::Serialize(), imath::TMatrix< Width, Height, Element >::Serialize(), imath::TMultidimensionalPolynomial< Dimensions, Element >::Serialize(), imeas::TDiscreteDataSequence< Element >::Serialize(), imeas::TMeasurementValue< ValueType >::Serialize(), iser::CPrimitiveTypesSerializer::SerializeContainer(), idoc::TMultiPageDocumentWrap< Base >::SerializePage(), and iser::CPrimitiveTypesSerializer::SerializeSimpleContainer().
|
pure virtual |
Get version of archived stream for specific versioning type.
versionId | versioning type. It allows you to distinguish different version aspects. For example version number of framework cann differ from application version. |
Implemented in iser::CReadArchiveBase, and iser::CWriteArchiveBase.
|
pure virtual |
Check if this archive processing change the object state.
Implemented in iser::CReadArchiveBase, and iser::CWriteArchiveBase.
Referenced by ialgo::TGeneralHoughSpace< Dimensions, Element >::Serialize(), iattr::TAttribute< Value >::Serialize(), iattr::TMultiAttribute< Value >::Serialize(), ibase::TFactorisableContainer< InterfaceClass >::Serialize(), ibase::TSerializableContainer< ItemClass, ContainerType >::Serialize(), icmm::TComposedColor< Size >::Serialize(), idoc::TMultiPageDocumentWrap< Base >::Serialize(), iipr::TWeightedFeatureWrap< BaseObject >::Serialize(), imath::TFastVector< MaxSize, Element >::Serialize(), imath::TFulcrumGrid< Position, Fulcrums >::Serialize(), imath::TMathVectorWrap< Base >::Serialize(), imath::TMatrix< Width, Height, Element >::Serialize(), imath::TMultidimensionalPolynomial< Dimensions, Element >::Serialize(), imeas::TDiscreteDataSequence< Element >::Serialize(), imeas::TMeasurementMessage< BaseMessageType, ValueType >::Serialize(), imeas::TMeasurementValue< ValueType >::Serialize(), iser::CPrimitiveTypesSerializer::SerializeContainer(), iser::CPrimitiveTypesSerializer::SerializeEnum(), iser::CPrimitiveTypesSerializer::SerializeEnum(), and iser::CPrimitiveTypesSerializer::SerializeSimpleContainer().
|
pure virtual |
Check if skiping to the end of tag on EndTag is supported.
Implemented in ifile::CFileReadArchive, ifile::CFileWriteArchive, iser::CArchiveBase, iser::CCompactXmlReadArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CTextReadArchiveBase, iser::CTextWriteArchiveBase, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
Referenced by ialgo::TGeneralHoughSpace< Dimensions, Element >::Serialize(), iattr::TAttribute< Value >::Serialize(), iattr::TMultiAttribute< Value >::Serialize(), ibase::TFactorisableContainer< InterfaceClass >::Serialize(), icmm::TComposedColor< Size >::Serialize(), iipr::TWeightedFeatureWrap< BaseObject >::Serialize(), imath::TFastVector< MaxSize, Element >::Serialize(), imath::TFulcrumGrid< Position, Fulcrums >::Serialize(), imath::TMathVectorWrap< Base >::Serialize(), imath::TMatrix< Width, Height, Element >::Serialize(), imath::TMultidimensionalPolynomial< Dimensions, Element >::Serialize(), imath::TVector< Size, Element >::Serialize(), imeas::TDiscreteDataSequence< Element >::Serialize(), imeas::TMeasurementValue< ValueType >::Serialize(), iser::CPrimitiveTypesSerializer::SerializeEnum(), iser::CPrimitiveTypesSerializer::SerializeEnum(), iser::CPrimitiveTypesSerializer::SerializeIndex(), and iser::CPrimitiveTypesSerializer::SerializeSimpleContainer().
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CTextReadArchiveBase, iser::CTextWriteArchiveBase, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CTextReadArchiveBase, iser::CTextWriteArchiveBase, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CTextReadArchiveBase, iser::CTextWriteArchiveBase, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CTextReadArchiveBase, iser::CTextWriteArchiveBase, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CTextReadArchiveBase, iser::CTextWriteArchiveBase, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CTextReadArchiveBase, iser::CTextWriteArchiveBase, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CTextReadArchiveBase, iser::CTextWriteArchiveBase, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CTextReadArchiveBase, iser::CTextWriteArchiveBase, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlReadArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringReadArchive, iser::CJsonStringWriteArchive, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CTextReadArchiveBase, iser::CTextWriteArchiveBase, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CTextReadArchiveBase, iser::CTextWriteArchiveBase, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CTextReadArchiveBase, iser::CTextWriteArchiveBase, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process primitive type.
Implemented in ifile::CSettingsReadArchive, ifile::CSettingsWriteArchive, iser::CBinaryReadArchiveBase, iser::CBinaryWriteArchiveBase, iser::CCompactXmlWriteArchiveBase, iser::CJsonStringWriteArchive, iser::CTextReadArchiveBase, iser::CTextWriteArchiveBase, iser::CXmlReadArchiveBase, and iser::CXmlWriteArchiveBase.
|
pure virtual |
Process binary data block.
dataPtr | pointer to memory block. |
bitsCount | number of bits. |
bytesCount | size of memory block in bytes. |
Implemented in iser::CBitMemoryReadArchive, iser::CBitMemoryWriteArchive, iser::CReadArchiveBase, and iser::CWriteArchiveBase.
|
pure virtual |
Process binary data block.
dataPtr | pointer to memory block. |
size | size of memory block in bytes. |
Implemented in ifile::CFileReadArchive, ifile::CFileWriteArchive, iser::CBitMemoryReadArchive, iser::CBitMemoryWriteArchive, iser::CMemoryReadArchive, iser::CMemoryWriteArchive, iser::CTextReadArchiveBase, and iser::CTextWriteArchiveBase.
© Witold Gantzke and Kirill Lepskiy