![]() |
ICF 3.0.5.47
Technical documentation of ICF Libraries
|
Template implementation of multiple component attribute. More...
#include <TMultiAttribute.h>
Classes | |
struct | Wrap |
Public Types | |
enum | DefaultAttributeFlags { DAF_OBLIGATORY = IAttributeMetaInfo::AF_OBLIGATORY | IAttributeMetaInfo::AF_NULLABLE | IAttributeMetaInfo::AF_MULTIPLE | IAttributeMetaInfo::AF_VALUE , DAF_OPTIONAL = IAttributeMetaInfo::AF_NULLABLE | IAttributeMetaInfo::AF_MULTIPLE | IAttributeMetaInfo::AF_VALUE } |
typedef Value | ValueType |
typedef iser::TCopySerializedWrap< iser::IObject > | BaseClass |
![]() | |
typedef iser::IObject | BaseClass |
![]() | |
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 | |
TMultiAttribute () | |
TMultiAttribute (const TMultiAttribute &attribute) | |
TMultiAttribute (int elementsCount, Value *valuesPtr) | |
Constructor. | |
virtual int | GetValuesCount () const |
virtual const Value & | GetValueAt (int index) const |
virtual void | SetValueAt (int index, const Value &value) |
virtual void | InsertValue (const Value &value) |
virtual void | Reset () |
virtual int | FindValue (const Value &value) const |
QByteArray | GetFactoryId () const |
virtual bool | Serialize (iser::IArchive &archive) |
Load or store state of this object as a archive stream. | |
QByteArray | GetTypeName () |
QByteArray | GetTypeName () |
QByteArray | GetTypeName () |
QByteArray | GetTypeName () |
QByteArray | GetTypeName () |
![]() | |
TCopySerializedWrap (Args &&... args) | |
int | GetSupportedOperations () const override |
bool | CopyFrom (const istd::IChangeable &object, istd::IChangeable::CompatibilityMode mode=istd::IChangeable::CM_WITHOUT_REFS) override |
bool | IsEqual (const istd::IChangeable &object) const override |
![]() | |
![]() | |
virtual quint32 | GetMinimalVersion (int versionId) const |
Get minimal needed version to correct storing of this data. | |
![]() | |
virtual std::unique_ptr< IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const |
Make a copy of this 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. | |
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. | |
Protected Attributes | |
QVector< Wrap > | m_values |
Additional Inherited Members | |
![]() | |
virtual void | OnBeginChanges () |
Callback function for begin change event. | |
virtual void | OnEndChanges (const ChangeSet &changeSet) |
Callback function for end change event. | |
Template implementation of multiple component attribute.
Definition at line 32 of file TMultiAttribute.h.
iser::TCopySerializedWrap<iser::IObject> iattr::TMultiAttribute< Value >::BaseClass |
Definition at line 36 of file TMultiAttribute.h.
Value iattr::TMultiAttribute< Value >::ValueType |
Definition at line 35 of file TMultiAttribute.h.
enum iattr::TMultiAttribute::DefaultAttributeFlags |
Enumerator | |
---|---|
DAF_OBLIGATORY | |
DAF_OPTIONAL |
Definition at line 38 of file TMultiAttribute.h.
iattr::TMultiAttribute< Value >::TMultiAttribute | ( | ) |
Definition at line 88 of file TMultiAttribute.h.
iattr::TMultiAttribute< Value >::TMultiAttribute | ( | const TMultiAttribute< Value > & | attribute | ) |
Definition at line 95 of file TMultiAttribute.h.
iattr::TMultiAttribute< Value >::TMultiAttribute | ( | int | elementsCount, |
Value * | valuesPtr ) |
Constructor.
elementsCount | number of elements stored at valuesPtr . |
valuesPtr | pointer to array of elements. |
Definition at line 103 of file TMultiAttribute.h.
References iattr::TMultiAttribute< Value >::m_values, and iattr::TMultiAttribute< Value >::Wrap::value.
|
virtual |
Definition at line 158 of file TMultiAttribute.h.
References iattr::TMultiAttribute< Value >::Wrap::value.
|
virtual |
Reimplemented from iser::IObject.
Definition at line 170 of file TMultiAttribute.h.
|
static |
Definition at line 215 of file TMultiAttribute.h.
References istd::CClassInfo::GetName().
|
inline |
Definition at line 226 of file TMultiAttribute.h.
|
inline |
Definition at line 233 of file TMultiAttribute.h.
|
inline |
Definition at line 240 of file TMultiAttribute.h.
|
inline |
Definition at line 247 of file TMultiAttribute.h.
|
inline |
Definition at line 254 of file TMultiAttribute.h.
|
virtual |
Definition at line 122 of file TMultiAttribute.h.
|
virtual |
Definition at line 115 of file TMultiAttribute.h.
|
virtual |
Definition at line 142 of file TMultiAttribute.h.
References iattr::TMultiAttribute< Value >::Wrap::value.
Referenced by icomp::CSimComponentContextBase::InsertMultiAttr().
|
virtual |
Definition at line 151 of file TMultiAttribute.h.
|
virtual |
Load or store state of this object as a archive stream.
Type of operation is depending on archive type.
Implements iser::ISerializable.
Definition at line 179 of file TMultiAttribute.h.
References iser::IArchive::BeginMultiTag(), iser::IArchive::BeginTag(), iser::IArchive::EndTag(), iser::IArchive::IsChanging(), iser::IArchive::Process(), iser::CArchiveTag::TT_LEAF, and iser::CArchiveTag::TT_MULTIPLE.
|
virtual |
Definition at line 132 of file TMultiAttribute.h.
|
protected |
Definition at line 81 of file TMultiAttribute.h.
Referenced by iattr::TMultiAttribute< Value >::TMultiAttribute().
© Witold Gantzke and Kirill Lepskiy