|
ACF $AcfVersion:0$
|
Standard implementation of static info for base component classes. More...
#include <CBaseComponentStaticInfo.h>
Public Types | |
| typedef CComponentStaticInfoBase | BaseClass |
| typedef void *(* | InterfaceExtractorPtr) (IComponent &component) |
Public Types inherited from icomp::IComponentStaticInfo | |
| enum | ComponentType { CT_NONE , CT_REAL , CT_COMPOSITE } |
| Specify type of the component realization. More... | |
| enum | MetaGroupId { MGI_EMBEDDED_COMPONENTS = IElementStaticInfo::MGI_LAST + 1 , MGI_LAST = MGI_EMBEDDED_COMPONENTS } |
Public Types inherited from icomp::IElementStaticInfo | |
| enum | MetaGroupId { MGI_INTERFACES = 0 , MGI_SUBELEMENTS , MGI_LAST = MGI_SUBELEMENTS } |
| typedef QSet< QByteArray > | Ids |
Public Types inherited from istd::IChangeable | |
| enum | ChangeFlags { CF_ACF_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 } |
| 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... | |
| typedef QMultiMap< QByteArray, QVariant > | ChangeInfoMap |
Public Member Functions | |
| CBaseComponentStaticInfo (const IRealComponentStaticInfo *baseComponentPtr=NULL) | |
| virtual void | RegisterInterfaceExtractor (const QByteArray &interfaceName, InterfaceExtractorPtr extractorPtr) |
| Register interface ID for this static component info. | |
| virtual void | RegisterAttributeInfo (const QByteArray &attributeId, const IAttributeStaticInfo *attributeInfoPtr) |
| Register static attribute info. | |
| virtual void | RegisterSubelementInfo (const QByteArray &subcomponentId, const IElementStaticInfo *staticInfoPtr) |
| Register static subcomponent info. | |
| virtual IComponentUniquePtr | CreateComponent () const override |
| Create component instance. | |
| virtual void * | GetComponentInterface (const istd::CClassInfo &interfaceType, IComponent &component, const QByteArray &subId) const override |
| Extract instance implemented specified interface from some component. | |
| virtual const IAttributeStaticInfo * | GetAttributeInfo (const QByteArray &attributeId) const override |
| Get set of attributes. | |
| virtual Ids | GetMetaIds (int metaGroupId) const override |
| Get list of meta IDs associated with some meta key. | |
| virtual const IElementStaticInfo * | GetSubelementInfo (const QByteArray &subcomponentId) const override |
| Return number of interfaces for specific slot. | |
| virtual iattr::IAttributesProvider::AttributeIds | GetAttributeMetaIds () const override |
| Get all IDs of known attribute meta informations. | |
| virtual const iattr::IAttributeMetaInfo * | GetAttributeMetaInfo (const QByteArray &attributeId) const override |
| Get property with the given index. | |
Public Member Functions inherited from icomp::CComponentStaticInfoBase | |
| virtual int | GetComponentType () const override |
| Get information about component type. | |
| virtual const IComponentStaticInfo * | GetEmbeddedComponentInfo (const QByteArray &embeddedId) const override |
| Return number of interfaces for specific slot. | |
| virtual const QString & | GetDescription () const override |
| Get human readable description of this component. | |
| virtual const QString & | GetKeywords () const override |
| Get keywords for this component. | |
Public Member Functions inherited from istd::IPolymorphic | |
| virtual | ~IPolymorphic () |
Public Member Functions inherited from istd::IChangeable | |
| virtual int | GetSupportedOperations () const |
| Get set of flags for supported operations. | |
| virtual bool | CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) |
| Copy this object from another one. | |
| virtual bool | IsEqual (const IChangeable &object) const |
| Compare this object with another object. | |
| virtual istd::TUniqueInterfacePtr< istd::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 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 Attributes | |
| static istd::CClassInfo | s_compInterfaceType |
Additional Inherited Members | |
Static Public Member Functions inherited from istd::IChangeable | |
| 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 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. | |
Standard implementation of static info for base component classes.
The main difference to 'normal' component static info is, that instances of such components cannot be created.
Definition at line 18 of file CBaseComponentStaticInfo.h.
Definition at line 23 of file CBaseComponentStaticInfo.h.
| typedef void *(* icomp::CBaseComponentStaticInfo::InterfaceExtractorPtr) (IComponent &component) |
Definition at line 24 of file CBaseComponentStaticInfo.h.
|
explicit |
|
overridevirtual |
Create component instance.
Implements icomp::IRealComponentStaticInfo.
Reimplemented in icomp::CCompositeComponentStaticInfo, and icomp::TComponentStaticInfo< Component >.
|
overridevirtual |
Get set of attributes.
Reimplemented from icomp::CComponentStaticInfoBase.
|
overridevirtual |
Get all IDs of known attribute meta informations.
Reimplemented from icomp::CComponentStaticInfoBase.
|
overridevirtual |
Get property with the given index.
Reimplemented from icomp::CComponentStaticInfoBase.
|
overridevirtual |
Extract instance implemented specified interface from some component.
Implements icomp::IComponentInterfaceExtractor.
|
overridevirtual |
Get list of meta IDs associated with some meta key.
Reimplemented from icomp::CComponentStaticInfoBase.
|
overridevirtual |
Return number of interfaces for specific slot.
| subcomponentId | ID of subcomponent. |
Reimplemented from icomp::CComponentStaticInfoBase.
|
virtual |
Register static attribute info.
| attributeId | ID of attribute. |
| attributeInfoPtr | static attribute info object used to describe attribute type and as factory. It cannot be NULL. |
Referenced by icomp::TAttributeStaticInfo< Attribute >::TAttributeStaticInfo().
|
virtual |
Register interface ID for this static component info.
This interface ID is used for static check if this component can be used to resolve reference dependecy of second one.
Referenced by icomp::TInterfaceRegistrator< Interface >::TInterfaceRegistrator().
|
virtual |
Register static subcomponent info.
| subcomponentId | ID of this subcomponent. |
| componentInfoPtr | static subcomponent info object used to describe subcomponent type and as factory. It cannot be NULL. |
Referenced by icomp::TSubelementStaticInfo< ComponentType >::TSubelementStaticInfo().
|
static |
Definition at line 26 of file CBaseComponentStaticInfo.h.
Referenced by icomp::TSubelementStaticInfo< ComponentType >::GetComponentInterface().