Ist die Basisklasse von einer Template-Set. Die persistenten Objekte werden in einer std::set verwaltet.
Objekte können nur einmalig eingefügt werden.
Mehr ...
#include <GloPointerSet.h>
Öffentliche Methoden | |
PointerSet () | |
PointerSet (Base &rBase) | |
virtual | ~PointerSet () |
virtual void | clear () override |
virtual int | getPers (BasePersistent *&prRetVal, EnSeekMode eMode) override |
virtual int | getPersistent (BasePersistent *&prRetVal, const ObjID &rObjID) override |
virtual int | insertPers (BasePersistent *pNewObj) override |
virtual int | removePers (BasePersistent *pObject) override |
std::set< BasePersistent * > & | Set () |
virtual int | setCurrentObject (const ObjID &rObjID) override |
virtual int | setPosition (std::size_t nPosition) override |
virtual std::size_t | size () const override |
virtual void | getAllClassIDs (std::list< ObjID > &rAllClassIDs) const |
Siehe Beschreibung in Oberklasse. | |
virtual bool | inLot (const ObjID &object) const override |
Siehe Beschreibung in Oberklasse. | |
virtual bool | inLot (const BasePersistent &object) const override |
Siehe Beschreibung in Oberklasse. | |
virtual bool | inLot (const std::shared_ptr< BasePersistent > object) const override |
Siehe Beschreibung in Oberklasse. | |
![]() | |
PointerLot () | |
PointerLot (Base &rBase) | |
virtual | ~PointerLot () |
virtual Base * | getBase () const override |
virtual int | getObjID (ObjID &rObjID, EnSeekMode eMode) override |
virtual int | setBase (Base *pBase) override |
![]() | |
BaseLot () | |
virtual | ~BaseLot () |
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 | 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 |
Vergleichsoperator, es werden alle Attribute verglichen. | |
bool | operator!= (const CallBack &rT) const |
Vergleichsoperator, es werden alle Attribute verglichen. | |
Private Methoden | |
PointerSet (const PointerSet &) | |
PointerSet & | operator= (const PointerSet &) |
virtual int | appendPers (BasePersistent *) override |
Steht für einen Set nicht zur Verfügung | |
virtual int | appendPers (std::shared_ptr< BasePersistent >) override |
Steht für einen Set nicht zur Verfügung | |
virtual int | insertPersBefore (BasePersistent *, const BasePersistent *) override |
Steht für einen Set nicht zur Verfügung | |
virtual int | insertPersBefore (std::shared_ptr< BasePersistent >, const std::shared_ptr< BasePersistent >) override |
Steht für einen Set nicht zur Verfügung | |
Private Attribute | |
std::set< BasePersistent * > | m_poObjSet |
std::set< BasePersistent * >::iterator | m_poObjSetIterator |
Weitere Geerbte Elemente | |
![]() | |
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 |
Ist die Basisklasse von einer Template-Set. Die persistenten Objekte werden in einer std::set verwaltet.
Objekte können nur einmalig eingefügt werden.
glo::PointerSet::PointerSet | ( | ) |
Standard-Konstruktor.
Wird benutzt von PointerSet() und operator=().
glo::PointerSet::PointerSet | ( | Base & | rBase | ) |
Konstruktor mit Parameterübergabe.
[in] | rBase | Die Datenbank, in der die persistenten Objekte gespeichert sind. |
|
virtual |
Destruktor, es wird für alle Objekte in der Objekt-Set der seteigene Sperr- und Überwachungsmodus aufgehoben, der Referenzzähler durch Aufruf von GloBasePersisten::forget() dekrementiert und dann die Objekt-Set geleert.
|
private |
Der Copy-Konstruktor steht nicht zur Verfügung.
Benutzt PointerSet().
|
inlineoverrideprivatevirtual |
Steht für einen Set nicht zur Verfügung
Erneute Implementation von glo::BaseLot.
Benutzt glo::ERR_METHOD_FORBIDDEN.
|
inlineoverrideprivatevirtual |
Steht für einen Set nicht zur Verfügung
Erneute Implementation von glo::BaseLot.
Benutzt glo::ERR_METHOD_FORBIDDEN.
|
overridevirtual |
Es werden alle Objekte aus dem Set entfernt. Es wird für alle Objekte im Set der seteigene Sperr- und Überwachungsmodus aufgehoben.
Implementiert glo::BaseLot.
|
virtual |
Siehe Beschreibung in Oberklasse.
|
overridevirtual |
Liefert ein Objekt aus dem Set in Bezug auf eMode.
[in,out] | prRetVal | Bei keinem Fehler das geholte Objekt. |
[in] | eMode | Der Suchmodus. |
Parameterbeispiele:
Implementiert glo::PointerLot.
|
overridevirtual |
Liefert ein Objekt mit übergebener Objekt-ID aus dem Container.
[in,out] | prRetVal | Bei keinem Fehler das geholte Objekt. |
[in] | rObjID | Die Objekt-ID. |
Implementiert glo::AbstractBaseLot.
|
overridevirtual |
Siehe Beschreibung in Oberklasse.
Erneute Implementation von glo::PointerLot.
|
overridevirtual |
Siehe Beschreibung in Oberklasse.
Implementiert glo::PointerLot.
|
overridevirtual |
Siehe Beschreibung in Oberklasse.
Erneute Implementation von glo::PointerLot.
|
overridevirtual |
Fügt ein persistentes Objekt in den Set ein.
Wenn der Set gesperrt ist, wird das einzufügende Objekt mit den Sperrmodus des Sets gesperrt.
Wenn dier Set überwacht wird, wird das einzufügende Objekt mit den Überwachungsmodus des Sets mitüberwacht.
[in] | pNewObj | Das einzufügende persistente Objekt. Wenn kein Fehler, wird der Linkcounter von pNewObj inkrementiert. |
Erneute Implementation von glo::BaseLot.
|
inlineoverrideprivatevirtual |
Steht für einen Set nicht zur Verfügung
Erneute Implementation von glo::PointerLot.
Benutzt glo::ERR_METHOD_FORBIDDEN.
|
inlineoverrideprivatevirtual |
Steht für einen Set nicht zur Verfügung
Erneute Implementation von glo::BaseLot.
Benutzt glo::ERR_METHOD_FORBIDDEN.
|
inlineprivate |
Der Zuweisungsoperator steht nicht zur Verfügung.
Benutzt PointerSet().
|
overridevirtual |
Entfernt persistentes Objekt aus dem Set.
Wenn der Set gesperrt ist, wird das zu entfernende Objekt mit den Sperrmodus des Sets freigegeben.
Wenn der Set überwacht wird, wird die Überwachung des zu entfernende Objekts mit dem Überwachungsmodus des Sets beendet.
[in] | pObject | Das zu entfernende persistente Objekt. Es wird der Linkcounter von pObj dekrementiert, wenn in Set. |
Implementiert glo::PointerLot.
std::set< BasePersistent * > & glo::PointerSet::Set | ( | ) |
Liefert Referenz auf den internen ObjektSet.
|
overridevirtual |
Setzt den internen Iterator auf die Position des Objektes mit übergebener Objekt-ID.
[in] | rObjID | Die Objekt-ID. |
Implementiert glo::AbstractBaseLot.
|
overridevirtual |
Setzt den internen Iterator auf die übergebene Position.
[in] | nPosition | Die Position. |
Implementiert glo::AbstractBaseLot.
|
overridevirtual |
Liefert die Anzahl der Objekte im Kontainer.
Implementiert glo::AbstractBaseLot.
|
private |
Der Set von Zeigern auf Objekte vom Typ BasePersistent.
|
private |
Ein objektinterner Iterator auf den Set von Zeigern auf Objekte vom Typ BasePersistent.