ICF 3.0.5.47
Technical documentation of ICF Libraries
ilog::CExtMessage Class Reference

Extended message supporting attached list of objects. More...

#include <CExtMessage.h>

Inheritance diagram for ilog::CExtMessage:
Collaboration diagram for ilog::CExtMessage:

Classes

struct  AttachedObject
 

Public Types

typedef CMessage BaseClass
 
- Public Types inherited from istd::IInformationProvider
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...
 
- Public Types inherited from istd::IChangeable
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::IObjectFactoryGetObjectFactory () 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::IObjectGetAttachedObject (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::IChangeableCloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const override
 Make a copy of this object.
 
- Public Member Functions inherited from ilog::CMessage
 CMessage ()
 
 CMessage (istd::IInformationProvider::InformationCategory category, int id, const QString &text, const QString &source, int flags=0, const QDateTime *timeStampPtr=nullptr)
 
void SetMessageValues (istd::IInformationProvider::InformationCategory category, int id, const QString &text, const QString &source, int flags=0, const QDateTime *timeStampPtr=nullptr)
 
virtual void SetCategory (istd::IInformationProvider::InformationCategory category)
 
virtual void SetText (const QString &text)
 
virtual void SetSource (const QString &source)
 
QDateTime GetInformationTimeStamp () const override
 Get optional time stamp of the information.
 
InformationCategory GetInformationCategory () const override
 Get category of the information.
 
int GetInformationId () const override
 Get binary ID of the information using to automatical identification of this information type.
 
QString GetInformationDescription () const override
 Get the text description of the information.
 
QString GetInformationSource () const override
 Get the source of the information.
 
int GetInformationFlags () const override
 Get flags of the information.
 
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_WITHOUT_REFS) override
 Copy this object from another one.
 
std::unique_ptr< istd::IChangeableCloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const override
 Make a copy of this object.
 
- Public Member Functions inherited from istd::IInformationProvider
 I_DECLARE_ENUM (InformationCategory, IC_NONE, IC_INFO, IC_WARNING, IC_ERROR, IC_CRITICAL)
 
- Public Member Functions inherited from istd::IChangeable
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.
 
- Public Member Functions inherited from iser::IObject
- Public Member Functions inherited from iser::ISerializable
virtual quint32 GetMinimalVersion (int versionId) const
 Get minimal needed version to correct storing of this data.
 

Static Public Member Functions

static QByteArray GetTypeName ()
 
- Static Public Member Functions inherited from ilog::CMessage
static QByteArray GetMessageTypeId ()
 
- Static Public Member Functions inherited from istd::IChangeable
static const ChangeSetGetNoChanges ()
 Get empty set of changes.
 
static const ChangeSetGetAnyChange ()
 Get anonymous change set.
 
static const ChangeSetGetAllChanges ()
 Get anonymous change set.
 
static const ChangeSetGetDelegatedChanges ()
 Get delegated change set.
 

Additional Inherited Members

- Protected Member Functions inherited from istd::IChangeable
virtual void OnBeginChanges ()
 Callback function for begin change event.
 
virtual void OnEndChanges (const ChangeSet &changeSet)
 Callback function for end change event.
 
- Protected Attributes inherited from ilog::CMessage
istd::IInformationProvider::InformationCategory m_category
 
int m_id
 
QString m_text
 
QString m_source
 
int m_flags
 
QDateTime m_timeStamp
 

Detailed Description

Extended message supporting attached list of objects.

Definition at line 28 of file CExtMessage.h.

Member Typedef Documentation

◆ BaseClass

Constructor & Destructor Documentation

◆ CExtMessage() [1/2]

ilog::CExtMessage::CExtMessage ( const iser::IObjectFactory * factoryPtr = nullptr)
explicit

◆ CExtMessage() [2/2]

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 )

Member Function Documentation

◆ CloneMe()

std::unique_ptr< istd::IChangeable > ilog::CExtMessage::CloneMe ( CompatibilityMode mode = CM_WITHOUT_REFS) const
overridevirtual

Make a copy of this object.

You may check, if this functionality is supported over GetSupportedOperations().

Returns
new instance or nullptr, if this operation is not supported.

Reimplemented from istd::IChangeable.

◆ CopyFrom()

bool ilog::CExtMessage::CopyFrom ( const istd::IChangeable & object,
CompatibilityMode mode = CM_STRICT )
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.

◆ GetAttachedObject()

const iser::IObject * ilog::CExtMessage::GetAttachedObject ( int index) const

Get single attached object.

◆ GetAttachedObjectDescription()

const QString & ilog::CExtMessage::GetAttachedObjectDescription ( int index) const

Get description of attached object.

◆ GetAttachedObjectsCount()

int ilog::CExtMessage::GetAttachedObjectsCount ( ) const

Get number of attached objects.

◆ GetFactoryId()

QByteArray ilog::CExtMessage::GetFactoryId ( ) const
overridevirtual

Reimplemented from iser::IObject.

◆ GetObjectFactory()

const iser::IObjectFactory * ilog::CExtMessage::GetObjectFactory ( ) const

◆ GetTypeName()

static QByteArray ilog::CExtMessage::GetTypeName ( )
static

◆ InsertAttachedObject()

void ilog::CExtMessage::InsertAttachedObject ( const iser::IObject * objectPtr,
const QString & description = "" )

Add some object to this container.

Parameters
objectPtrattached object, ownership of this object belongs to container (it will be removed automatically).

◆ ResetAttachedObjects()

void ilog::CExtMessage::ResetAttachedObjects ( )

Remove all attached objects from container.

◆ Serialize()

bool ilog::CExtMessage::Serialize ( iser::IArchive & archive)
overridevirtual

Load or store state of this object as a archive stream.

Type of operation is depending on archive type.

See also
iser::IArchive

Implements iser::ISerializable.

◆ SetObjectFactory()

void ilog::CExtMessage::SetObjectFactory ( const iser::IObjectFactory * factoryPtr)

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

© Witold Gantzke and Kirill Lepskiy