GlobalObjects
Loading...
Searching...
No Matches
GloOndemandSet.h
Go to the documentation of this file.
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 for OndemandLot
For each library, here 'GlobalObjects' there is a type file.
#define __glo_export_dll
Definition GloTypes.h:63
This class is the interface to the persistent objects. Here "objects" can be registered,...
Definition GloBase.h:250
Abstract base class for Persistent and the generic GenericPersistent.
Definition GloBasePersistent.h:102
An object ID consists of the class ID, a database ID and the actual unique object number (all unsigne...
Definition GloObjID.h:77
Is the abstract base class of on-demand sets and lists.
Definition GloOndemandLot.h:62
Is the base class of Template-Ondemand-Set. Objects can be inserted only once.
Definition GloOndemandSet.h:64
virtual int insertPers(BasePersistent *pNewObj)
virtual Reference * getOndemand(EnSeekMode eMode)
virtual bool inLot(const std::shared_ptr< BasePersistent > object) const
See description in superclass.
OndemandSet(Base &rBase)
virtual int removeOndemand(const Reference &rOndemand)
virtual int setPosition(std::size_t nPosition)
virtual int appendPers(std::shared_ptr< BasePersistent >)
Is not available for a set.
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 *)
Is not available for a set.
Definition GloOndemandSet.h:139
virtual void clear()
virtual int insertPersBefore(std::shared_ptr< BasePersistent >, const std::shared_ptr< BasePersistent >)
Is not available for a set.
Definition GloOndemandSet.h:140
virtual int getPersistent(BasePersistent *&prRetVal, const ObjID &rObjID)
virtual int insertPers(std::shared_ptr< BasePersistent > spNewObj)
virtual int appendPers(BasePersistent *)
Is not available for a set.
Definition GloOndemandSet.h:135
virtual int setCurrentObject(const ObjID &rObjID)
virtual bool inLot(const BasePersistent &object) const
See description in superclass.
virtual int appendOndemand(const Reference &)
Is not available for a set.
Definition GloOndemandSet.h:137
virtual bool inLot(const Reference &object) const
See description in superclass.
virtual int insertOndemandBefore(const Reference &, const Reference &)
Is not available for a set.
Definition GloOndemandSet.h:138
virtual bool inLot(const ObjID &object) const
See description in superclass.
The base class of a reference attribute from persistent objects to other persistent objects in the da...
Definition GloReference.h:65
Definition GloAbstractBaseLot.h:42
EnSeekMode
Definition GloTypes.h:166