Is the base class of a template list. The persistent objects are managed in a std::list.
Objects can also be inserted multiple times and in any order.
More...
#include <GloPointerList.h>
Public Member Functions | |
PointerList () | |
PointerList (Base &rBase) | |
virtual | ~PointerList () |
virtual int | appendPers (BasePersistent *pNewObj) |
virtual void | clear () |
virtual int | getPers (BasePersistent *&prRetVal, EnSeekMode eMode) |
virtual int | getPersistent (BasePersistent *&prRetVal, const ObjID &rObjID) |
virtual int | insertPers (BasePersistent *pNewObj) |
std::list< BasePersistent * > & | List () |
virtual int | removePers (BasePersistent *pObject) |
virtual int | setCurrentObject (const ObjID &rObjID) |
virtual int | setPosition (std::size_t nPosition) |
virtual std::size_t | size () const |
virtual void | getAllClassIDs (std::list< ObjID > &rAllClassIDs) const |
See description in superclass. | |
virtual bool | inLot (const ObjID &object) const |
See description in superclass. | |
virtual bool | inLot (const BasePersistent &object) const |
See description in superclass. | |
virtual bool | inLot (const std::shared_ptr< BasePersistent > object) const |
See description in superclass. | |
![]() | |
PointerLot () | |
PointerLot (Base &rBase) | |
virtual | ~PointerLot () |
virtual Base * | getBase () const override |
virtual int | getObjID (ObjID &rObjID, EnSeekMode eMode) override |
virtual int | insertPersBefore (BasePersistent *pNewObj, const BasePersistent *pObject) override |
virtual int | setBase (Base *pBase) override |
![]() | |
BaseLot () | |
virtual | ~BaseLot () |
virtual int | appendPers (std::shared_ptr< BasePersistent > spNewObj) |
virtual int | getPers (std::shared_ptr< BasePersistent > &rRetVal, EnSeekMode eMode) |
virtual int | getTypeAsString (std::string &rsTypeName) override |
virtual int | insertPers (std::shared_ptr< BasePersistent > spNewObj) |
virtual int | insertPersBefore (std::shared_ptr< BasePersistent > spNewObj, const std::shared_ptr< BasePersistent > spObject) |
virtual int | lock (const LockSpecification &rLockSpecification) |
virtual int | lock (EnLockMode eLockMode=LK_DELETEvWRITE, EnDeepMode eDeepMode=DM_SHALLOW) |
virtual int | removePers (std::shared_ptr< BasePersistent > spObject) |
virtual int | setWatch (const WatchSpecification &rWatchSpec) |
virtual int | setWatch (TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack=0) |
virtual int | unlock (const LockSpecification &rLockSpecification) |
virtual int | unlock (EnLockMode eLockMode=LK_DELETEvWRITE, EnDeepMode eDeepMode=DM_SHALLOW) |
virtual int | unsetWatch (const WatchSpecification &rWatchSpec) |
virtual int | unsetWatch (TdWatchNotifyMode ulWatchMode, EnDeepMode eDeepMode, CallBack *pCallBack=0) |
![]() | |
AbstractBaseLot () | |
virtual | ~AbstractBaseLot () |
virtual int | getPersistent (std::shared_ptr< BasePersistent > &rRetVal, const ObjID &rObjID) |
virtual int | setCurrentObject (const BasePersistent &rObject) |
![]() | |
CallBack () | |
virtual | ~CallBack () |
virtual void | notify (NotifyNote &rNote) |
CallBack & | operator= (const CallBack &rT) |
bool | operator== (const CallBack &rT) const |
Comparison operator, all attributes are compared. | |
bool | operator!= (const CallBack &rT) const |
Comparison operator, all attributes are compared. | |
Private Member Functions | |
PointerList (const PointerList &) | |
PointerList & | operator= (const PointerList &) |
Private Attributes | |
std::list< BasePersistent * > | m_poObjList |
std::list< BasePersistent * >::iterator | m_poObjListIterator |
Additional Inherited Members | |
![]() | |
std::string | m_strDebugInfo |
![]() | |
int | lockObjID (const ObjID &rObjID) |
int | setWatchObjID (const ObjID &rObjID) |
int | takeOverBase (const BasePersistent *pObj) |
int | takeOverBase (const Reference *pRef) |
int | unlockObjID (const ObjID &rObjID) |
int | unsetWatchObjID (const ObjID &rObjID) |
![]() | |
CallBack (const CallBack &rT) | |
void | deinit () |
void | init () |
![]() | |
unsigned long | m_ulClassID |
Is the base class of a template list. The persistent objects are managed in a std::list.
Objects can also be inserted multiple times and in any order.
glo::PointerList::PointerList | ( | ) |
Standard constructor.
Referenced by PointerList(), and operator=().
glo::PointerList::PointerList | ( | Base & | rBase | ) |
Constructor with parameter passing.
[in] | rBase | The database in which the persistent objects are stored. |
|
virtual |
Destructor, for all objects in the object list the list-specific lock and watch mode is cancelled, the reference counter is decremented by calling GloBasePersisten::forget() and then the object list is cleared.
|
private |
The copy constructor is not available.
References PointerList().
|
virtual |
Appends a persistent object to the end of the list.
If the list is locked, the object to be inserted is locked with the lock mode of the list.
If the list is monitored, the object to be inserted is also monitored with the monitoring mode of the list.
[in] | pNewObj | The persistent object to be inserted. If no error, the linkcounter is incremented by pNewObj. |
Reimplemented from glo::BaseLot.
|
virtual |
All objects are removed from the list. The list-specific lock and watching mode is removed for all objects in the list.
Implements glo::BaseLot.
|
virtual |
See description in superclass.
|
virtual |
Returns an object from the list in relation to eMode.
[in,out] | prRetVal | If no error, the fetched object. |
[in] | eMode | The seek mode. |
Parameter examples:
Implements glo::PointerLot.
|
virtual |
Returns an object with passed object ID from the container.
[in,out] | prRetVal | If no error, the fetched object. |
[in] | rObjID | The object ID. |
Implements glo::AbstractBaseLot.
|
virtual |
See description in superclass.
Reimplemented from glo::PointerLot.
|
virtual |
See description in superclass.
Implements glo::PointerLot.
|
virtual |
See description in superclass.
Reimplemented from glo::PointerLot.
|
virtual |
Inserts a persistent object into the list behind the current position.
If the list is locked, the object to be inserted is locked with the lock mode of the list.
If the list is monitored, the object to be inserted is also monitored with the monitoring mode of the list.
[in] | pNewObj | The persistent object to be inserted. If no error, the linkcounter is incremented by pNewObj. |
Reimplemented from glo::BaseLot.
std::list< BasePersistent * > & glo::PointerList::List | ( | ) |
Returns the reference to the internal object list.
|
inlineprivate |
The assignment operator is not available.
References PointerList().
|
virtual |
Removes persistent object from the list.
If the list is locked, the object to be removed is released with the lock mode of the list.
If the list is monitored, the monitoring of the object to be removed is ended with the monitoring mode of the list.
[in] | pObject | The persistent object to be removed. The linkcounter of pObject is decremented, if in Set. |
Implements glo::PointerLot.
|
virtual |
Sets the internal iterator to the first position of the object with passed object ID.
[in] | rObjID | The object ID. |
Implements glo::AbstractBaseLot.
|
virtual |
Sets the internal iterator to the passed position.
[in] | nPosition | The position to be set. |
Implements glo::AbstractBaseLot.
|
virtual |
Returns the number of objects in the container.
Implements glo::AbstractBaseLot.
|
private |
The list of pointers to objects of type BasePersistent.
|
private |
An object-internal iterator to the list of pointers to objects of type BasePersistent.