GlobalObjects
Lade ...
Suche ...
Keine Treffer
GloOndemandSet.h
gehe zur Dokumentation dieser Datei
1#ifndef INC_GLOONDEMANDSET_H
2#define INC_GLOONDEMANDSET_H
3//-----------------------------------------------------------------------------
36//-----------------------------------------------------------------------------
37#include <set>
38#include "GloTypes.h"
39#include "GloOndemandLot.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 //---------------------------------------------------------------------------
64 {
65 public:
66 //============== Konstruktoren
67 //-----------------------------------------------------------------------
78 //-----------------------------------------------------------------------
90 OndemandSet( Base & rBase );
91 //-----------------------------------------------------------------------
103 virtual ~OndemandSet();
104 //-----------------------------------------------------------------------
105
106 private:
107 //============== Konstruktoren
108 //-----------------------------------------------------------------------
120 //-----------------------------------------------------------------------
121
122 private:
123 //============== Methoden
124 //-----------------------------------------------------------------------
126
135 virtual int appendPers( BasePersistent * ){ return ERR_METHOD_FORBIDDEN; };
136 virtual int appendPers( std::shared_ptr< BasePersistent > ){ return ERR_METHOD_FORBIDDEN; };
137 virtual int appendOndemand( const Reference & ){ return ERR_METHOD_FORBIDDEN; };
138 virtual int insertOndemandBefore( const Reference &, const Reference & ){ return ERR_METHOD_FORBIDDEN; };
139 virtual int insertPersBefore( BasePersistent *, const BasePersistent * ){ return ERR_METHOD_FORBIDDEN; };
140 virtual int insertPersBefore( std::shared_ptr< BasePersistent > , const std::shared_ptr< BasePersistent > ){ return ERR_METHOD_FORBIDDEN; };
142 //-----------------------------------------------------------------------
143
144 public:
145 //============== Methoden
146 //-----------------------------------------------------------------------
176 virtual int insertPers( BasePersistent * pNewObj );
177 //-----------------------------------------------------------------------
207 virtual int insertPers( std::shared_ptr<BasePersistent> spNewObj );
208 //-----------------------------------------------------------------------
240 virtual int insertOndemand( const Reference & rNewOndemand );
241 //-----------------------------------------------------------------------
277 virtual int removeOndemand( const Reference & rOndemand );
278 //-----------------------------------------------------------------------
280
289 virtual bool inLot( const ObjID & object ) const;
290 virtual bool inLot( const BasePersistent & object ) const;
291 virtual bool inLot( const std::shared_ptr<BasePersistent> object ) const;
292 virtual bool inLot( const Reference & object ) const;
294 //-----------------------------------------------------------------------
315 virtual int getPersistent( BasePersistent *& prRetVal, const ObjID & rObjID );
316 //-----------------------------------------------------------------------
332 virtual int setCurrentObject( const ObjID & rObjID );
333 //-----------------------------------------------------------------------
347 virtual int setPosition( std::size_t nPosition );
348 //-----------------------------------------------------------------------
362 virtual std::size_t size() const;
363 //-----------------------------------------------------------------------
375 virtual void clear();
376 //-----------------------------------------------------------------------
410 virtual Reference * getOndemand( EnSeekMode eMode );
411 //-----------------------------------------------------------------------
412
413 private:
414 //============== Operatoren
415 //-----------------------------------------------------------------------
425 inline OndemandSet & operator= ( const OndemandSet & );
426 //-----------------------------------------------------------------------
427 };
428 //---------------------------------------------------------------------------
429 #ifdef _MSC_VER
430 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von... */
431 #pragma warning( default : 4251 )
432 #endif
433 //---------------------------------------------------------------------------
434} // namespace glo
435#endif
Header für OndemandLot
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
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
Ist die Basisklasse von Template-Ondemand-Set. Objekte können nur einmalig eingefügt werden.
Definition GloOndemandSet.h:64
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:136
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:139
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:140
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:135
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:137
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:138
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:65
Definition GloAbstractBaseLot.h:42
EnSeekMode
Definition GloTypes.h:166