GlobalObjects
Loading...
Searching...
No Matches
GloPointerSet.h
Go to the documentation of this file.
1#ifndef INC_GLOPOINTERSET_H
2#define INC_GLOPOINTERSET_H
3//-----------------------------------------------------------------------------
43//-----------------------------------------------------------------------------
44#include <set>
45#include "GloTypes.h"
46#include "GloPointerLot.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 //---------------------------------------------------------------------------
73 {
74 private:
75 //============== Attribute
76 //-----------------------------------------------------------------------
86 std::set<BasePersistent *> m_poObjSet;
87 //-----------------------------------------------------------------------
99 std::set< BasePersistent * >::iterator m_poObjSetIterator;
100 //-----------------------------------------------------------------------
101
102 public:
103 //============== Konstruktoren
104 //-----------------------------------------------------------------------
115 //-----------------------------------------------------------------------
128 PointerSet( Base & rBase );
129 //-----------------------------------------------------------------------
144 virtual ~PointerSet();
145 //-----------------------------------------------------------------------
146
147 private:
148 //============== Konstruktoren
149 //-----------------------------------------------------------------------
160 //-----------------------------------------------------------------------
161
162 private:
163 //============== Methoden
164 //-----------------------------------------------------------------------
166
175 virtual int appendPers( BasePersistent * ){ return ERR_METHOD_FORBIDDEN; };
176 virtual int appendPers( std::shared_ptr< BasePersistent > ){ return ERR_METHOD_FORBIDDEN; };
177 virtual int insertPersBefore( BasePersistent *, const BasePersistent * ){ return ERR_METHOD_FORBIDDEN; };
178 virtual int insertPersBefore( std::shared_ptr< BasePersistent > , const std::shared_ptr< BasePersistent > ){ return ERR_METHOD_FORBIDDEN; };
180 //-----------------------------------------------------------------------
181
182 public:
183 //============== Methoden
184 //-----------------------------------------------------------------------
216 virtual int insertPers( BasePersistent * pNewObj );
217 //-----------------------------------------------------------------------
253 virtual int removePers( BasePersistent * pObject );
254 //-----------------------------------------------------------------------
292 virtual int getPers( BasePersistent *& prRetVal, EnSeekMode eMode );
293 //-----------------------------------------------------------------------
295
304 virtual void getAllClassIDs( std::list< ObjID > & rAllClassIDs ) const;
305 virtual bool inLot( const ObjID & object ) const;
306 virtual bool inLot( const BasePersistent & object ) const;
307 virtual bool inLot( const std::shared_ptr<BasePersistent> object ) const;
309 //-----------------------------------------------------------------------
330 virtual int getPersistent( BasePersistent *& prRetVal, const ObjID & rObjID );
331 //-----------------------------------------------------------------------
347 virtual int setCurrentObject( const ObjID & rObjID );
348 //-----------------------------------------------------------------------
362 virtual int setPosition( std::size_t nPosition );
363 //-----------------------------------------------------------------------
375 virtual std::size_t size() const;
376 //-----------------------------------------------------------------------
388 virtual void clear();
389 //-----------------------------------------------------------------------
405 std::set< BasePersistent * > & Set();
406 //-----------------------------------------------------------------------
407
408
409 private:
410 //============== Operatoren
411 //-----------------------------------------------------------------------
421 inline PointerSet & operator= ( const PointerSet & );
422 //-----------------------------------------------------------------------
423 };
424 //---------------------------------------------------------------------------
425 #ifdef _MSC_VER
426 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von... */
427 #pragma warning( default : 4251 )
428 #endif
429 //---------------------------------------------------------------------------
430} // namespace glo
431#endif
Header for PointerLot
For each library, here 'GlobalObjects' there is a type file.
#define __glo_export_dll
Definition GloTypes.h:70
Definition GloBase.h:263
Abstract base class for Persistent and the generic GenericPersistent.
Definition GloBasePersistent.h:124
An object ID consists of the class ID, a database ID and the actual unique object number (all unsigne...
Definition GloObjID.h:84
Is the abstract base class of pointer sets and lists.
Definition GloPointerLot.h:69
Is the base class of a template set. The persistent objects are managed in a std::set....
Definition GloPointerSet.h:73
PointerSet(const PointerSet &)
std::set< BasePersistent * > & Set()
virtual bool inLot(const ObjID &object) const
See description in superclass.
std::set< BasePersistent * > m_poObjSet
Definition GloPointerSet.h:86
virtual int appendPers(std::shared_ptr< BasePersistent >)
Is not available for a set.
Definition GloPointerSet.h:176
virtual int insertPersBefore(BasePersistent *, const BasePersistent *)
Is not available for a set.
Definition GloPointerSet.h:177
virtual int setCurrentObject(const ObjID &rObjID)
virtual int insertPers(BasePersistent *pNewObj)
virtual int insertPersBefore(std::shared_ptr< BasePersistent >, const std::shared_ptr< BasePersistent >)
Is not available for a set.
Definition GloPointerSet.h:178
virtual int getPersistent(BasePersistent *&prRetVal, const ObjID &rObjID)
virtual void clear()
PointerSet(Base &rBase)
std::set< BasePersistent * >::iterator m_poObjSetIterator
Definition GloPointerSet.h:99
virtual std::size_t size() const
virtual bool inLot(const std::shared_ptr< BasePersistent > object) const
See description in superclass.
virtual int setPosition(std::size_t nPosition)
virtual int appendPers(BasePersistent *)
Is not available for a set.
Definition GloPointerSet.h:175
virtual int removePers(BasePersistent *pObject)
virtual bool inLot(const BasePersistent &object) const
See description in superclass.
virtual int getPers(BasePersistent *&prRetVal, EnSeekMode eMode)
virtual void getAllClassIDs(std::list< ObjID > &rAllClassIDs) const
See description in superclass.
virtual ~PointerSet()
Definition GloAbstractBaseLot.h:49
EnSeekMode
Definition GloTypes.h:173