![]() |
ICF 3.0.5.47
Technical documentation of ICF Libraries
|
Extended message supporting attached list of objects. More...
#include <CExtMessage.h>
Classes | |
struct | AttachedObject |
Public Types | |
typedef CMessage | BaseClass |
![]() | |
enum | InformationCategory { IC_UNKNOWN = -1 , IC_NONE , IC_INFO , IC_WARNING , IC_ERROR , IC_CRITICAL } |
Category of information. More... | |
enum | InformationTypeFlags { ITF_DEBUG = 0x1 , ITF_SYSTEM = 0x2 , ITF_USER = 0x4 } |
Additionally information flags. More... | |
![]() | |
enum | ChangeFlags { CF_ICF_INTERNAL = 0 , CF_ALL_DATA , CF_ANY , CF_DESTROYING , CF_DELEGATED , CF_NO_UNDO } |
Data model change notification flags. More... | |
enum | SupportedOperations { SO_NONE = 0 , SO_OBSERVE = 1 << 0 , SO_COPY = 1 << 1 , SO_CLONE = 1 << 2 , SO_COMPARE = 1 << 3 , SO_RESET = 1 << 4 , SO_CHANGE_LOCK = 1 << 5 } |
Flags for supported operations. More... | |
enum | CompatibilityMode { CM_STRICT , CM_WITHOUT_REFS , CM_WITH_REFS , CM_CONVERT } |
Control how relationship betweeen objects are interpreted. More... | |
Public Member Functions | |
CExtMessage (const iser::IObjectFactory *factoryPtr=nullptr) | |
CExtMessage (istd::IInformationProvider::InformationCategory category, int id, const QString &text, const QString &source, int flags=0, const QDateTime *timeStampPtr=nullptr, const iser::IObjectFactory *factoryPtr=nullptr) | |
const iser::IObjectFactory * | GetObjectFactory () const |
void | SetObjectFactory (const iser::IObjectFactory *factoryPtr) |
void | ResetAttachedObjects () |
Remove all attached objects from container. | |
int | GetAttachedObjectsCount () const |
Get number of attached objects. | |
const iser::IObject * | GetAttachedObject (int index) const |
Get single attached object. | |
const QString & | GetAttachedObjectDescription (int index) const |
Get description of attached object. | |
void | InsertAttachedObject (const iser::IObject *objectPtr, const QString &description="") |
Add some object to this container. | |
QByteArray | GetFactoryId () const override |
bool | Serialize (iser::IArchive &archive) override |
Load or store state of this object as a archive stream. | |
bool | CopyFrom (const istd::IChangeable &object, CompatibilityMode mode=CM_STRICT) override |
Copy this object from another one. | |
std::unique_ptr< istd::IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const override |
Make a copy of this object. | |
![]() | |
I_DECLARE_ENUM (InformationCategory, IC_NONE, IC_INFO, IC_WARNING, IC_ERROR, IC_CRITICAL) | |
![]() | |
virtual int | GetSupportedOperations () const |
Get set of flags for supported operations. | |
virtual bool | IsEqual (const IChangeable &object) const |
Compare this object with another object. | |
virtual bool | ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) |
Reset data to its default state. | |
virtual QMutex * | GetChangesLock () const |
Get mutex beeing locked during changes, if available. | |
virtual void | BeginChanges (const ChangeSet &changeSet) |
Starts the change transaction. | |
virtual void | EndChanges (const ChangeSet &changeSet) |
Ends the change transaction. | |
virtual void | BeginChangeGroup (const ChangeSet &changeSet) |
Starts group of changes. | |
virtual void | EndChangeGroup (const ChangeSet &changeSet) |
Ends group of changes. | |
![]() | |
![]() | |
virtual quint32 | GetMinimalVersion (int versionId) const |
Get minimal needed version to correct storing of this data. | |
Static Public Member Functions | |
static QByteArray | GetTypeName () |
![]() | |
static const ChangeSet & | GetNoChanges () |
Get empty set of changes. | |
static const ChangeSet & | GetAnyChange () |
Get anonymous change set. | |
static const ChangeSet & | GetAllChanges () |
Get anonymous change set. | |
static const ChangeSet & | GetDelegatedChanges () |
Get delegated change set. | |
Additional Inherited Members | |
![]() | |
virtual void | OnBeginChanges () |
Callback function for begin change event. | |
virtual void | OnEndChanges (const ChangeSet &changeSet) |
Callback function for end change event. | |
Extended message supporting attached list of objects.
Definition at line 28 of file CExtMessage.h.
Definition at line 31 of file CExtMessage.h.
|
explicit |
ilog::CExtMessage::CExtMessage | ( | istd::IInformationProvider::InformationCategory | category, |
int | id, | ||
const QString & | text, | ||
const QString & | source, | ||
int | flags = 0, | ||
const QDateTime * | timeStampPtr = nullptr, | ||
const iser::IObjectFactory * | factoryPtr = nullptr ) |
|
overridevirtual |
Make a copy of this object.
You may check, if this functionality is supported over GetSupportedOperations()
.
Reimplemented from istd::IChangeable.
|
overridevirtual |
Copy this object from another one.
Default implementation in istd::IChangeable does nothing. You may check, if this functionality is supported over GetSupportedOperations()
.
Reimplemented from istd::IChangeable.
const iser::IObject * ilog::CExtMessage::GetAttachedObject | ( | int | index | ) | const |
Get single attached object.
const QString & ilog::CExtMessage::GetAttachedObjectDescription | ( | int | index | ) | const |
Get description of attached object.
int ilog::CExtMessage::GetAttachedObjectsCount | ( | ) | const |
Get number of attached objects.
|
overridevirtual |
Reimplemented from iser::IObject.
const iser::IObjectFactory * ilog::CExtMessage::GetObjectFactory | ( | ) | const |
|
static |
void ilog::CExtMessage::InsertAttachedObject | ( | const iser::IObject * | objectPtr, |
const QString & | description = "" ) |
Add some object to this container.
objectPtr | attached object, ownership of this object belongs to container (it will be removed automatically). |
void ilog::CExtMessage::ResetAttachedObjects | ( | ) |
Remove all attached objects from container.
|
overridevirtual |
Load or store state of this object as a archive stream.
Type of operation is depending on archive type.
Implements iser::ISerializable.
void ilog::CExtMessage::SetObjectFactory | ( | const iser::IObjectFactory * | factoryPtr | ) |
© Witold Gantzke and Kirill Lepskiy