|
ACF $AcfVersion:0$
|
Implementation of ibase::IObjectQueue including some smart optimizations. More...
#include <CObjectQueueComp.h>
Public Types | |
| typedef icomp::CComponentBase | BaseClass |
Public Types inherited from ibase::IObjectQueue | |
| typedef QVector< istd::IChangeable * > | ObjectList |
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 | |
| virtual int | GetObjectsCount (const QByteArray *typeIdPtr=NULL) const override |
| Get number of objects in this queue. | |
| virtual void | ClearQueue () override |
| Remove all objects from queue. | |
| virtual istd::IChangeable * | CreateFrontObject (int offsetPos=0, const QByteArray *typeIdPtr=NULL) override |
| Create object at the front of this queue. | |
| virtual istd::IChangeable * | CreateBackObject (int offsetPos=0, const QByteArray *typeIdPtr=NULL) override |
| Create object at the end of this queue. | |
| virtual void | RemoveFrontObject (int offsetPos=0, const QByteArray *typeIdPtr=NULL) override |
| Remove object at the front of this queue. | |
| virtual void | RemoveBackObject (int offsetPos=0, const QByteArray *typeIdPtr=NULL) override |
| Remove object at the end of this queue. | |
| virtual istd::IChangeable * | GetFrontObject (int offsetPos=0, const QByteArray *typeIdPtr=NULL) const override |
| Get object at the front of queue. | |
| virtual istd::IChangeable * | GetBackObject (int offsetPos=0, const QByteArray *typeIdPtr=NULL) const override |
| Get object at the end of queue. | |
| virtual void | SelectObjects (ObjectList &result, bool doAppend=false, int offsetPos=0, const QByteArray *typeIdPtr=NULL) const override |
| Find set of objects. | |
| virtual istd::IChangeable * | PopFrontObject (int offsetPos=0, const QByteArray *typeIdPtr=NULL) override |
| Get object at the front of queue and remove it from queue. | |
| virtual istd::IChangeable * | PopBackObject (int offsetPos=0, const QByteArray *typeIdPtr=NULL) override |
| Get object at the end of queue and remove it from queue. | |
| virtual bool | Serialize (iser::IArchive &archive) override |
| Load or store state of this object as a archive stream. | |
Public Member Functions inherited from icomp::CComponentBase | |
| CComponentBase () | |
| Create component and assign it to specific context. | |
| virtual const icomp::IComponent * | GetParentComponent (bool ownerOnly=false) const override |
| Get parent of this component. | |
| virtual void * | GetInterface (const istd::CClassInfo &interfaceType, const QByteArray &subId="") override |
| Get access to specified component interface. | |
| virtual IComponentContextSharedPtr | GetComponentContext () const override |
| Get access to component context describing all application-specified component information loaded from components registry. | |
| virtual void | SetComponentContext (const IComponentContextSharedPtr &contextPtr, const icomp::IComponent *parentPtr, bool isParentOwner) override |
| Set component context of 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. | |
Public Member Functions inherited from iser::ISerializable | |
| virtual quint32 | GetMinimalVersion (int versionId) const |
| Get minimal needed version to correct storing of this data. | |
Protected Member Functions | |
| istd::IChangeable * | CreateObject () |
| void | TryReductReserve () |
| virtual void | OnComponentDestroyed () override |
Protected Member Functions inherited from icomp::CComponentBase | |
| bool | IsComponentActive () const |
| Check if component is active. | |
| virtual void | OnComponentCreated () |
| virtual const icomp::IRealComponentStaticInfo & | GetComponentStaticInfo () const =0 |
| Get access to static info of this component. | |
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. | |
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. | |
Static Protected Member Functions inherited from icomp::CComponentBase | |
| static const icomp::IRealComponentStaticInfo & | InitStaticInfo (IComponent *componentPtr) |
| static QByteArray | GetComponentId (const icomp::IComponentContext *componentContextPtr, const QByteArray &contextId=QByteArray()) |
Implementation of ibase::IObjectQueue including some smart optimizations.
Definition at line 21 of file CObjectQueueComp.h.
Definition at line 27 of file CObjectQueueComp.h.
|
overridevirtual |
Remove all objects from queue.
Implements ibase::IObjectQueue.
|
overridevirtual |
Create object at the end of this queue.
This object belongs to queue, and will be by the queue removed from memory.
| offsetPos | position from the end, where the object should be placed. |
| typeIdPtr | optional object ID, if many of object types are supported. |
Implements ibase::IObjectQueue.
|
overridevirtual |
Create object at the front of this queue.
This object belongs to queue, and will be by the queue removed from memory.
| offsetPos | position from the front, where the object should be placed. |
| typeIdPtr | optional object ID, if many of object types are supported. |
Implements ibase::IObjectQueue.
|
protected |
|
overridevirtual |
Get object at the end of queue.
| offsetPos | position from the end. |
| typeIdPtr | optional object ID, if many of object types are supported. |
Implements ibase::IObjectQueue.
|
overridevirtual |
Get object at the front of queue.
| offsetPos | position from the front. |
| typeIdPtr | optional object ID, if many of object types are supported. |
Implements ibase::IObjectQueue.
|
overridevirtual |
Get number of objects in this queue.
| typeIdPtr | optional object ID, if many of object types are supported. |
Implements ibase::IObjectQueue.
|
overrideprotectedvirtual |
Reimplemented from icomp::CComponentBase.
|
overridevirtual |
Get object at the end of queue and remove it from queue.
It means, this object will be overtaken by caller.
| offsetPos | position from the end. |
| typeIdPtr | optional object ID, if many of object types are supported. |
Implements ibase::IObjectQueue.
|
overridevirtual |
Get object at the front of queue and remove it from queue.
It means, this object will be overtaken by caller.
| offsetPos | position from the front. |
| typeIdPtr | optional object ID, if many of object types are supported. |
Implements ibase::IObjectQueue.
|
overridevirtual |
Remove object at the end of this queue.
The object must not be physically removed from memory at this moment.
| offsetPos | position from the end. |
| typeIdPtr | optional object ID, if many of object types are supported. |
Implements ibase::IObjectQueue.
|
overridevirtual |
Remove object at the front of this queue.
The object must not be physically removed from memory at this moment.
| offsetPos | position from the front. |
| typeIdPtr | optional object ID, if many of object types are supported. |
Implements ibase::IObjectQueue.
|
overridevirtual |
Find set of objects.
Implements ibase::IObjectQueue.
|
overridevirtual |
Load or store state of this object as a archive stream.
Type of operation is depending on archive type.
Implements iser::ISerializable.
|
protected |