GlobalObjects
Lade ...
Suche ...
Keine Treffer
GloOndemandSet.h
gehe zur Dokumentation dieser Datei
1#ifndef INC_GLOONDEMANDSET_H
2#define INC_GLOONDEMANDSET_H
3//-----------------------------------------------------------------------------
43//-----------------------------------------------------------------------------
44#include <set>
45#include "GloTypes.h"
46#include "GloOndemandLot.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 //---------------------------------------------------------------------------
71 {
72 public:
73 //============== Konstruktoren
74 //-----------------------------------------------------------------------
85 //-----------------------------------------------------------------------
97 OndemandSet( Base & rBase );
98 //-----------------------------------------------------------------------
110 virtual ~OndemandSet();
111 //-----------------------------------------------------------------------
112
113 private:
114 //============== Konstruktoren
115 //-----------------------------------------------------------------------
127 //-----------------------------------------------------------------------
128
129 private:
130 //============== Methoden
131 //-----------------------------------------------------------------------
133
142 virtual int appendPers( BasePersistent * ){ return ERR_METHOD_FORBIDDEN; };
143 virtual int appendPers( std::shared_ptr< BasePersistent > ){ return ERR_METHOD_FORBIDDEN; };
144 virtual int appendOndemand( const Reference & ){ return ERR_METHOD_FORBIDDEN; };
145 virtual int insertOndemandBefore( const Reference &, const Reference & ){ return ERR_METHOD_FORBIDDEN; };
146 virtual int insertPersBefore( BasePersistent *, const BasePersistent * ){ return ERR_METHOD_FORBIDDEN; };
147 virtual int insertPersBefore( std::shared_ptr< BasePersistent > , const std::shared_ptr< BasePersistent > ){ return ERR_METHOD_FORBIDDEN; };
149 //-----------------------------------------------------------------------
150
151 public:
152 //============== Methoden
153 //-----------------------------------------------------------------------
183 virtual int insertPers( BasePersistent * pNewObj );
184 //-----------------------------------------------------------------------
214 virtual int insertPers( std::shared_ptr<BasePersistent> spNewObj );
215 //-----------------------------------------------------------------------
247 virtual int insertOndemand( const Reference & rNewOndemand );
248 //-----------------------------------------------------------------------
284 virtual int removeOndemand( const Reference & rOndemand );
285 //-----------------------------------------------------------------------
287
296 virtual bool inLot( const ObjID & object ) const;
297 virtual bool inLot( const BasePersistent & object ) const;
298 virtual bool inLot( const std::shared_ptr<BasePersistent> object ) const;
299 virtual bool inLot( const Reference & object ) const;
301 //-----------------------------------------------------------------------
322 virtual int getPersistent( BasePersistent *& prRetVal, const ObjID & rObjID );
323 //-----------------------------------------------------------------------
339 virtual int setCurrentObject( const ObjID & rObjID );
340 //-----------------------------------------------------------------------
354 virtual int setPosition( std::size_t nPosition );
355 //-----------------------------------------------------------------------
369 virtual std::size_t size() const;
370 //-----------------------------------------------------------------------
382 virtual void clear();
383 //-----------------------------------------------------------------------
417 virtual Reference * getOndemand( EnSeekMode eMode );
418 //-----------------------------------------------------------------------
419
420 private:
421 //============== Operatoren
422 //-----------------------------------------------------------------------
432 inline OndemandSet & operator= ( const OndemandSet & );
433 //-----------------------------------------------------------------------
434 };
435 //---------------------------------------------------------------------------
436 #ifdef _MSC_VER
437 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von... */
438 #pragma warning( default : 4251 )
439 #endif
440 //---------------------------------------------------------------------------
441} // namespace glo
442#endif
Header für OndemandLot
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
Ist die abstrakte Basisklasse von Ondemand-Sets und -Listen.
Definition GloOndemandLot.h:69
Ist die Basisklasse von Template-Ondemand-Set. Objekte können nur einmalig eingefügt werden.
Definition GloOndemandSet.h:71
virtual int insertPers(BasePersistent *pNewObj)
virtual Reference * getOndemand(EnSeekMode eMode)
virtual bool inLot(const std::shared_ptr< BasePersistent > object) const
Siehe Beschreibung in Oberklasse.
OndemandSet(Base &rBase)
virtual int removeOndemand(const Reference &rOndemand)
virtual int setPosition(std::size_t nPosition)
virtual int appendPers(std::shared_ptr< BasePersistent >)
Steht für einen Set nicht zur Verfügung
Definition GloOndemandSet.h:143
virtual int insertOndemand(const Reference &rNewOndemand)
virtual ~OndemandSet()
OndemandSet(const OndemandSet &)
virtual std::size_t size() const
virtual int insertPersBefore(BasePersistent *, const BasePersistent *)
Steht für einen Set nicht zur Verfügung
Definition GloOndemandSet.h:146
virtual void clear()
virtual int insertPersBefore(std::shared_ptr< BasePersistent >, const std::shared_ptr< BasePersistent >)
Steht für einen Set nicht zur Verfügung
Definition GloOndemandSet.h:147
virtual int getPersistent(BasePersistent *&prRetVal, const ObjID &rObjID)
virtual int insertPers(std::shared_ptr< BasePersistent > spNewObj)
virtual int appendPers(BasePersistent *)
Steht für einen Set nicht zur Verfügung
Definition GloOndemandSet.h:142
virtual int setCurrentObject(const ObjID &rObjID)
virtual bool inLot(const BasePersistent &object) const
Siehe Beschreibung in Oberklasse.
virtual int appendOndemand(const Reference &)
Steht für einen Set nicht zur Verfügung
Definition GloOndemandSet.h:144
virtual bool inLot(const Reference &object) const
Siehe Beschreibung in Oberklasse.
virtual int insertOndemandBefore(const Reference &, const Reference &)
Steht für einen Set nicht zur Verfügung
Definition GloOndemandSet.h:145
virtual bool inLot(const ObjID &object) const
Siehe Beschreibung in Oberklasse.
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