GlobalObjects
Lade ...
Suche ...
Keine Treffer
GloOndemandLot.h
gehe zur Dokumentation dieser Datei
1#ifndef INC_GLOONDEMANDLOT_H
2#define INC_GLOONDEMANDLOT_H
3//-----------------------------------------------------------------------------
43//-----------------------------------------------------------------------------
44#include <list>
45#include "GloTypes.h"
46#include "GloBaseLot.h"
47//-----------------------------------------------------------------------------
48namespace glo
49{
50 //---------------------------------------------------------------------------
51 #ifdef _MSC_VER
52 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von... */
53 #pragma warning( disable : 4251 )
54 #endif
55 //---------------------------------------------------------------------------
69 {
70 protected:
71 //============== Attribute
72 //-----------------------------------------------------------------------
82 unsigned long m_ulDatabaseID;
83 //-----------------------------------------------------------------------
93 std::list<Reference *> m_odRefList;
94 //-----------------------------------------------------------------------
104 std::list<Reference *>::iterator m_odRefListIterator;
105 //-----------------------------------------------------------------------
106
107 public:
108 //============== Konstruktoren
109 //-----------------------------------------------------------------------
120 //-----------------------------------------------------------------------
132 OndemandLot( Base & rBase );
133 //-----------------------------------------------------------------------
143 virtual ~OndemandLot();
144 //-----------------------------------------------------------------------
145
146 private:
147 //============== Konstruktoren
148 //-----------------------------------------------------------------------
159 //-----------------------------------------------------------------------
160
161 public:
162 //============== Methoden
163 //-----------------------------------------------------------------------
184 virtual int setBase( Base * pBase ) override;
185 //-----------------------------------------------------------------------
200 virtual Base * getBase() const override;
201 //-----------------------------------------------------------------------
232 virtual int insertPers( BasePersistent * pNewObj ) override;
233 //-----------------------------------------------------------------------
264 virtual int insertPers( std::shared_ptr<BasePersistent> spNewObj ) override;
265 //-----------------------------------------------------------------------
297 virtual int insertPersBefore( BasePersistent * pNewObj,
298 const BasePersistent * pObject ) override;
299 //-----------------------------------------------------------------------
329 virtual int appendPers( BasePersistent * pNewObj ) override;
330 //-----------------------------------------------------------------------
364 virtual int removePers( BasePersistent * pObject ) override;
365 //-----------------------------------------------------------------------
410 virtual int getPers( BasePersistent *& prRetVal, EnSeekMode eMode ) override;
411 //-----------------------------------------------------------------------
445 virtual int getPers( std::shared_ptr<BasePersistent> & rRetVal, EnSeekMode eMode ) override;
446 //-----------------------------------------------------------------------
497 virtual int getPers( glo::ObjID & rObjID, BasePersistent *& prRetVal, EnSeekMode eMode );
498 //-----------------------------------------------------------------------
538 virtual int getPers( glo::ObjID & rObjID, std::shared_ptr<BasePersistent> & rRetVal, EnSeekMode eMode );
539 //-----------------------------------------------------------------------
573 virtual int getObjID( ObjID & rObjID, EnSeekMode eMode ) override;
574 //-----------------------------------------------------------------------
607 virtual int insertOndemand( const Reference & rNewOndemand );
608 //-----------------------------------------------------------------------
642 virtual int insertOndemandBefore( const Reference & rNewOndemand,
643 const Reference & rOndemand );
644 //-----------------------------------------------------------------------
675 virtual int appendOndemand( const Reference & rNewOndemand );
676 //-----------------------------------------------------------------------
712 virtual int removeOndemand( const Reference & rOndemand );
713 //-----------------------------------------------------------------------
715
728 virtual bool inLot( const ObjID & object ) const override;
729 virtual bool inLot( const BasePersistent & object ) const override;
730 virtual bool inLot( const std::shared_ptr<BasePersistent> object ) const override;
731 virtual bool inLot( const Reference & object ) const;
733 //-----------------------------------------------------------------------
754 virtual int getPersistent( BasePersistent *& prRetVal, const ObjID & rObjID ) override;
755 //-----------------------------------------------------------------------
771 virtual int setCurrentObject( const ObjID & rObjID ) override;
772 //-----------------------------------------------------------------------
786 virtual int setPosition( std::size_t nPosition ) override;
787 //-----------------------------------------------------------------------
801 virtual std::size_t size() const override;
802 //-----------------------------------------------------------------------
814 virtual void clear() override;
815 //-----------------------------------------------------------------------
831 std::list< Reference * > & List();
832 //-----------------------------------------------------------------------
867 virtual Reference * getOndemand( EnSeekMode eMode ) = 0;
868 //-----------------------------------------------------------------------
869
870 private:
871 //============== Operatoren
872 //-----------------------------------------------------------------------
882 inline OndemandLot & operator= ( const OndemandLot & );
883 //-----------------------------------------------------------------------
884 };
885 //---------------------------------------------------------------------------
886 #ifdef _MSC_VER
887 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von... */
888 #pragma warning( default : 4251 )
889 #endif
890 //---------------------------------------------------------------------------
891} // namespace glo
892#endif
Header für BaseLot
Für jede Bibliothek, hier 'GlobalObjects' gibt es eine Typen-Datei.
#define __glo_export_dll
Definition GloTypes.h:70
Definition GloBase.h:263
Abstrakte Basisklasse für Persistent und die generische GenericPersistent.
Definition GloBasePersistent.h:124
Ein Objekt-ID besteht aus der Klassen-ID, einer Datenbank-ID und der eigentlichen eindeutigen ObjektZ...
Definition GloObjID.h:84
virtual std::size_t size() const override
virtual int insertPers(std::shared_ptr< BasePersistent > spNewObj) override
virtual bool inLot(const Reference &object) const
Prüft, ob übergebenes Objekt im Container referenziert wird.
virtual int insertPersBefore(BasePersistent *pNewObj, const BasePersistent *pObject) override
OndemandLot(Base &rBase)
virtual int setPosition(std::size_t nPosition) override
virtual int insertPers(BasePersistent *pNewObj) override
virtual int getObjID(ObjID &rObjID, EnSeekMode eMode) override
std::list< Reference * > & List()
virtual bool inLot(const ObjID &object) const override
Prüft, ob übergebenes Objekt im Container referenziert wird.
virtual Reference * getOndemand(EnSeekMode eMode)=0
virtual int removePers(BasePersistent *pObject) override
virtual int insertOndemand(const Reference &rNewOndemand)
virtual int getPers(glo::ObjID &rObjID, BasePersistent *&prRetVal, EnSeekMode eMode)
virtual int insertOndemandBefore(const Reference &rNewOndemand, const Reference &rOndemand)
virtual void clear() override
virtual bool inLot(const BasePersistent &object) const override
Prüft, ob übergebenes Objekt im Container referenziert wird.
unsigned long m_ulDatabaseID
Definition GloOndemandLot.h:82
virtual int getPersistent(BasePersistent *&prRetVal, const ObjID &rObjID) override
virtual int getPers(glo::ObjID &rObjID, std::shared_ptr< BasePersistent > &rRetVal, EnSeekMode eMode)
virtual Base * getBase() const override
virtual int getPers(BasePersistent *&prRetVal, EnSeekMode eMode) override
OndemandLot(const OndemandLot &)
std::list< Reference * > m_odRefList
Definition GloOndemandLot.h:93
virtual int appendPers(BasePersistent *pNewObj) override
virtual int appendOndemand(const Reference &rNewOndemand)
virtual int removeOndemand(const Reference &rOndemand)
virtual bool inLot(const std::shared_ptr< BasePersistent > object) const override
Prüft, ob übergebenes Objekt im Container referenziert wird.
virtual int getPers(std::shared_ptr< BasePersistent > &rRetVal, EnSeekMode eMode) override
virtual int setCurrentObject(const ObjID &rObjID) override
virtual int setBase(Base *pBase) override
std::list< Reference * >::iterator m_odRefListIterator
Definition GloOndemandLot.h:104
virtual ~OndemandLot()
Die Basisklasse eines Referenz-Attributs von persistenten Objekten auf andere persistente Objekte in ...
Definition GloReference.h:72
Definition GloAbstractBaseLot.h:49
EnSeekMode
Definition GloTypes.h:173