GlobalObjects
Lade ...
Suche ...
Keine Treffer
GloOndemandLot.h
gehe zur Dokumentation dieser Datei
1#ifndef INC_GLOONDEMANDLOT_H
2#define INC_GLOONDEMANDLOT_H
3//-----------------------------------------------------------------------------
36//-----------------------------------------------------------------------------
37#include <list>
38#include "GloTypes.h"
39#include "GloBaseLot.h"
40//-----------------------------------------------------------------------------
41namespace glo
42{
43 //---------------------------------------------------------------------------
44 #ifdef _MSC_VER
45 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von... */
46 #pragma warning( disable : 4251 )
47 #endif
48 //---------------------------------------------------------------------------
62 {
63 protected:
64 //============== Attribute
65 //-----------------------------------------------------------------------
75 std::list<Reference *> m_odRefList;
76 //-----------------------------------------------------------------------
86 std::list<Reference *>::iterator m_odRefListIterator;
87 //-----------------------------------------------------------------------
88
89 public:
90 //============== Konstruktoren
91 //-----------------------------------------------------------------------
102 //-----------------------------------------------------------------------
114 OndemandLot( Base & rBase );
115 //-----------------------------------------------------------------------
125 virtual ~OndemandLot();
126 //-----------------------------------------------------------------------
127
128 private:
129 //============== Konstruktoren
130 //-----------------------------------------------------------------------
141 //-----------------------------------------------------------------------
142
143 public:
144 //============== Methoden
145 //-----------------------------------------------------------------------
176 virtual int insertPers( BasePersistent * pNewObj );
177 //-----------------------------------------------------------------------
208 virtual int insertPers( std::shared_ptr<BasePersistent> spNewObj );
209 //-----------------------------------------------------------------------
241 virtual int insertPersBefore( BasePersistent * pNewObj,
242 const BasePersistent * pObject );
243 //-----------------------------------------------------------------------
273 virtual int appendPers( BasePersistent * pNewObj );
274 //-----------------------------------------------------------------------
308 virtual int removePers( BasePersistent * pObject );
309 //-----------------------------------------------------------------------
347 virtual int getPers( BasePersistent *& prRetVal, EnSeekMode eMode );
348 //-----------------------------------------------------------------------
382 virtual int getObjID( ObjID & rObjID, EnSeekMode eMode );
383 //-----------------------------------------------------------------------
416 virtual int insertOndemand( const Reference & rNewOndemand );
417 //-----------------------------------------------------------------------
451 virtual int insertOndemandBefore( const Reference & rNewOndemand,
452 const Reference & rOndemand );
453 //-----------------------------------------------------------------------
484 virtual int appendOndemand( const Reference & rNewOndemand );
485 //-----------------------------------------------------------------------
521 virtual int removeOndemand( const Reference & rOndemand );
522 //-----------------------------------------------------------------------
524
537 virtual bool inLot( const ObjID & object ) const;
538 virtual bool inLot( const BasePersistent & object ) const;
539 virtual bool inLot( const std::shared_ptr<BasePersistent> object ) const;
540 virtual bool inLot( const Reference & object ) const;
542 //-----------------------------------------------------------------------
563 virtual int getPersistent( BasePersistent *& prRetVal, const ObjID & rObjID );
564 //-----------------------------------------------------------------------
580 virtual int setCurrentObject( const ObjID & rObjID );
581 //-----------------------------------------------------------------------
595 virtual int setPosition( std::size_t nPosition );
596 //-----------------------------------------------------------------------
610 virtual std::size_t size() const;
611 //-----------------------------------------------------------------------
623 virtual void clear();
624 //-----------------------------------------------------------------------
640 std::list< Reference * > & List();
641 //-----------------------------------------------------------------------
676 virtual Reference * getOndemand( EnSeekMode eMode ) = 0;
677 //-----------------------------------------------------------------------
678
679 private:
680 //============== Operatoren
681 //-----------------------------------------------------------------------
691 inline OndemandLot & operator= ( const OndemandLot & );
692 //-----------------------------------------------------------------------
693 };
694 //---------------------------------------------------------------------------
695 #ifdef _MSC_VER
696 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von... */
697 #pragma warning( default : 4251 )
698 #endif
699 //---------------------------------------------------------------------------
700} // namespace glo
701#endif
Header für BaseLot
Für jede Bibliothek, hier 'GlobalObjects' gibt es eine Typen-Datei.
#define __glo_export_dll
Definition GloTypes.h:63
Diese Klasse ist die Schnittstelle zu den persistenten Objekten. Hier können "Objekte" angemeldet,...
Definition GloBase.h:250
Ist die Basisklasse von Pointer- und Ondemand-Sets bzw. Pointer- und Ondemand-Listen.
Definition GloBaseLot.h:66
Abstrakte Basisklasse für Persistent und die generische GenericPersistent.
Definition GloBasePersistent.h:102
Ein Objekt-ID besteht aus der Klassen-ID, einer Datenbank-ID und der eigentlichen eindeutigen ObjektZ...
Definition GloObjID.h:77
Ist die abstrakte Basisklasse von Ondemand-Sets und -Listen.
Definition GloOndemandLot.h:62
virtual bool inLot(const BasePersistent &object) const
Prüft, ob übergebenes Objekt im Container referenziert wird.
virtual bool inLot(const Reference &object) const
Prüft, ob übergebenes Objekt im Container referenziert wird.
virtual int appendPers(BasePersistent *pNewObj)
OndemandLot(Base &rBase)
virtual int insertPers(std::shared_ptr< BasePersistent > spNewObj)
virtual int removePers(BasePersistent *pObject)
virtual int getObjID(ObjID &rObjID, EnSeekMode eMode)
virtual std::size_t size() const
virtual int insertPers(BasePersistent *pNewObj)
std::list< Reference * > & List()
virtual Reference * getOndemand(EnSeekMode eMode)=0
virtual int getPers(BasePersistent *&prRetVal, EnSeekMode eMode)
virtual int insertOndemand(const Reference &rNewOndemand)
virtual bool inLot(const std::shared_ptr< BasePersistent > object) const
Prüft, ob übergebenes Objekt im Container referenziert wird.
virtual int insertOndemandBefore(const Reference &rNewOndemand, const Reference &rOndemand)
virtual void clear()
OndemandLot(const OndemandLot &)
std::list< Reference * > m_odRefList
Definition GloOndemandLot.h:75
virtual int appendOndemand(const Reference &rNewOndemand)
virtual int removeOndemand(const Reference &rOndemand)
virtual bool inLot(const ObjID &object) const
Prüft, ob übergebenes Objekt im Container referenziert wird.
virtual int insertPersBefore(BasePersistent *pNewObj, const BasePersistent *pObject)
std::list< Reference * >::iterator m_odRefListIterator
Definition GloOndemandLot.h:86
virtual int getPersistent(BasePersistent *&prRetVal, const ObjID &rObjID)
virtual ~OndemandLot()
virtual int setPosition(std::size_t nPosition)
virtual int setCurrentObject(const ObjID &rObjID)
Die Basisklasse eines Referenz-Attributs von persistenten Objekten auf andere persistente Objekte in ...
Definition GloReference.h:65
Definition GloAbstractBaseLot.h:42
EnSeekMode
Definition GloTypes.h:166