GlobalObjects
Lade ...
Suche ...
Keine Treffer
GloGenPersObjectSpy.h
gehe zur Dokumentation dieser Datei
1#ifndef INC_GLOGENPERSOBJECTSPY_H
2#define INC_GLOGENPERSOBJECTSPY_H
3//-----------------------------------------------------------------------------
36//-----------------------------------------------------------------------------
37#include "GloTypes.h"
38#include <unordered_map>
39#include <memory>
40#if defined (__PTHREADS)
41 #include <EuPCriticalSection.h>
42#else
43 #include "EuCriticalSection.h"
44#endif
45//-----------------------------------------------------------------------------
46namespace glo
47{
48 //---------------------------------------------------------------------------
49 /* Forwards */
50 class GenericPersistent;
51 //---------------------------------------------------------------------------
52 #ifdef _MSC_VER
53 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von... */
54 #pragma warning( disable : 4251 )
55 #endif
56 //---------------------------------------------------------------------------
76 {
77 private:
78 //============== Friends
79 //-----------------------------------------------------------------------
80 friend class GenericPersistent;
81 //-----------------------------------------------------------------------
82
83 //============== Attribute
84 //-----------------------------------------------------------------------
97 #if defined (__PTHREADS)
98 EuPCriticalSection m_LocalCriticalSection;
99 #else
101 #endif
102 //-----------------------------------------------------------------------
118 std::unordered_map< unsigned long, GenericPersistent * > m_PersObjectList;
119 //-----------------------------------------------------------------------
129 std::unordered_map< unsigned long, GenericPersistent * >::iterator m_PersObjectListIterator;
130 //-----------------------------------------------------------------------
131
132 public:
133 //============== Konstruktoren
134 //-----------------------------------------------------------------------
145 //-----------------------------------------------------------------------
156 //-----------------------------------------------------------------------
157
158 private:
159 //============== Konstruktoren
160 //-----------------------------------------------------------------------
171 //-----------------------------------------------------------------------
172
173 public:
174 //============== Methoden
175 //-----------------------------------------------------------------------
187 std::size_t sizeOfPersObjectList() const;
188 //-----------------------------------------------------------------------
225 //-----------------------------------------------------------------------
274 //-----------------------------------------------------------------------
311 int getPersistentObject( std::shared_ptr<GenericPersistent> & srRetVal,
312 EnSeekMode eMode );
313 //-----------------------------------------------------------------------
336 //-----------------------------------------------------------------------
370 const ObjID & rGloObjID );
371 //-----------------------------------------------------------------------
394 int getPersistentObject( std::shared_ptr<GenericPersistent> & rRetVal,
395 const ObjID & rGloObjID );
396 //-----------------------------------------------------------------------
412 int insertPersistentObject( const GenericPersistent * pPersObject );
413 //-----------------------------------------------------------------------
429 int removePersistentObject( const GenericPersistent * pPersObject );
430 //-----------------------------------------------------------------------
431
432 private:
433 //============== Operatoren
434 //-----------------------------------------------------------------------
444 GenPersObjectSpy & operator= ( const GenPersObjectSpy & );
445 //-----------------------------------------------------------------------
446 };
447 //---------------------------------------------------------------------------
448 #ifdef _MSC_VER
449 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von... */
450 #pragma warning( default : 4251 )
451 #endif
452 //---------------------------------------------------------------------------
453} // namespace glo
454#endif
Header für CriticalSection
Header für EuPCriticalSection
Für jede Bibliothek, hier 'GlobalObjects' gibt es eine Typen-Datei.
#define __glo_export_dll
Definition GloTypes.h:63
Ist ein Mutex, welcher über sein Lock-Modus abgefragt werden kann. Siehe isLocked().
Definition EuPCriticalSection.h:89
Ist ein Mutex, welcher über sein Lock-Modus abgefragt werden kann. Siehe isLocked().
Definition EuCriticalSection.h:94
Klasse um die generischen persistente Objekte einer Datenbank im Speicher im Zugriff zu haben.
Definition GloGenPersObjectSpy.h:76
int getPersistentObject(std::shared_ptr< GenericPersistent > &srRetVal, EnSeekMode eMode)
int getPersistentObject(GenericPersistent *&prRetVal, const ObjID &rGloObjID)
std::unordered_map< unsigned long, GenericPersistent * > m_PersObjectList
Definition GloGenPersObjectSpy.h:118
int getPersistentObject(GenericPersistent *&prRetVal, EnSeekMode eMode)
virtual ~GenPersObjectSpy()
int removePersistentObject(const GenericPersistent *pPersObject)
std::size_t sizeOfPersObjectList() const
GenPersObjectSpy(const GenPersObjectSpy &)
GenericPersistent * getPersistentObject(const ObjID &rGloObjID)
std::unordered_map< unsignedlong, GenericPersistent * >::iterator m_PersObjectListIterator
Definition GloGenPersObjectSpy.h:129
eut::CriticalSection m_LocalCriticalSection
Definition GloGenPersObjectSpy.h:100
int getPersistentObject(std::shared_ptr< GenericPersistent > &rRetVal, const ObjID &rGloObjID)
GenericPersistent * getPersistentObject(EnSeekMode eMode)
int insertPersistentObject(const GenericPersistent *pPersObject)
Generische persistente Klasse. Benötigt keinen ObjCreator oder ObjectMaker. Es können Objekte aus der...
Definition GloGenericPersistent.h:84
Ein Objekt-ID besteht aus der Klassen-ID, einer Datenbank-ID und der eigentlichen eindeutigen ObjektZ...
Definition GloObjID.h:77
Definition GloAbstractBaseLot.h:42
EnSeekMode
Definition GloTypes.h:166