1#ifndef INC_GLOTABLEREADERINTERFACE_H 
    2#define INC_GLOTABLEREADERINTERFACE_H 
   45#include <unordered_map> 
   64    #pragma warning( disable : 4251 ) 
  451      virtual int openTable( 
const std::string & sTableName );
 
  594                      NUM_PTR ipClientAllSetAddress,
 
  595                      unsigned long ulClassID,
 
  596                      bool bWithSubClasses );
 
  629                      NUM_PTR ipClientAllSetAddress,
 
  630                      unsigned long ulClassID,
 
  631                      const std::string & rsIndexName );
 
  707                              NUM_PTR ipClientAllSetAddress,
 
  740                                          NUM_PTR ipClientAllSetAddress,
 
  741                                          const std::string & rsIndexSearchValue,
 
  773                                          NUM_PTR ipClientAllSetAddress,
 
  774                                          const std::string & rsIndexSearchValue,
 
  807                                          NUM_PTR ipClientAllSetAddress,
 
  808                                          const std::string & rsRangeStartIndex,
 
  809                                          const std::string & rsRangeEndIndex ) 
const;
 
  830                              const std::string & rsIndexFilterValue ) 
const;
 
  858                              const std::string & rsIndexFilterValue,
 
  887                              const std::string & rsRangeStartIndex,
 
  888                              const std::string & rsRangeEndIndex ) 
const;
 
  948                                    NUM_PTR ipClientAllSetAddress ) 
const;
 
  970                               NUM_PTR ipClientAllSetAddress ) 
const;
 
  998                         NUM_PTR ipClientAllSetAddress ) 
const;
 
 1038      int getObjIDs( std::list<ObjID> & rRetValList, 
unsigned long ulClassID );
 
 1060                     unsigned long ulClassID );
 
 1090                     const ObjID & rObjID,
 
 1118                         const ObjID & rObjID,
 
 1159                         const ObjID & rObjID,
 
 1161                         bool bInRecursion );
 
 1208                                                        NUM_PTR ipClientAllSetAddress,
 
 1209                                                        unsigned long ulClassID,
 
 1210                                                        bool bWithSubClasses = 
true );
 
 1252                                                      NUM_PTR ipClientAllSetAddress,
 
 1253                                                      unsigned long ulClassID,
 
 1254                                                      const std::string & rsIndexName );
 
 1277                     std::map< 
ObjID, 
ObjID, std::less<ObjID> > * pRetValMap,
 
 1278                     unsigned long ulClassID );
 
 1309                     const std::string & sTableName,
 
 1310                     const ObjID & rObjID,
 
 1311                     unsigned long ulClassID,
 
 1312                     bool bOnlyClassIDTable = 
false );
 
 1341                     const ObjID & rObjID,
 
 1343                     bool bOnlyClassIDTable = 
false );
 
 1385                          const std::string & sFieldNameRow,
 
 1386                          const std::string & sDataRow,
 
 1387                          std::streampos StreamPosRow,
 
 1388                          const std::string & rsTable,
 
 1389                          bool bOnlyClassIDTable = 
false );
 
 1427                          const std::string & sDataRow,
 
 1429                          std::streampos StreamPosRow,
 
 1430                          bool bOnlyClassIDTable = 
false );
 
 1461                                    const ObjID & rObjID,
 
 1462                                    unsigned long ulClassID,
 
 1463                                    bool bOnlyClassIDTable = 
false );
 
 1490                                    const ObjID & rObjID,
 
 1491                                    unsigned long ulClassID,
 
 1492                                    bool bOnlyClassIDTable = 
false );
 
 
 1551    #pragma warning( default : 4251 ) 
Header for TableInterface and TableInterface::TableInterfaceTable
 
Header for TransactionIndexPool
 
Header for TransactionOwner
 
For each library, here 'GlobalObjects' there is a type file.
 
#define __glo_export_dll
Definition GloTypes.h:70
 
Base class for the individual attributes of a Record.
Definition GloBaseRecordAttribute.h:116
 
This class contains all information to store objects of a class in a database, to build objects from ...
Definition GloClassInfo.h:86
 
Has a pointer to an ObjectStrIndex and allows iteration through this index. Is instantiated e....
Definition GloIndexPool.h:2637
 
Has a pointer to a TableObjIdIndex and allows to iterate through this index. Is instantiated e....
Definition GloIndexPool.h:1430
 
An object ID consists of the class ID, a database ID and the actual unique object number (all unsigne...
Definition GloObjID.h:84
 
The real index as opposed to the TransactionIndexPool, which is created for each transaction
Definition GloRealIndexPool.h:69
 
Objects of this class transport the data from the tables into the persistent object and from these ag...
Definition GloRecord.h:108
 
This class is the interface to a GlobalObjects schema. It contains all class information to store obj...
Definition GloSchemaInterface.h:91
 
AllSetObjectStrIndexIteratorItem(IndexPool::ObjectStrIndexIterator *pObjectStrIndexIterator, const std::string &m_sIndexName)
 
std::string m_sIndexName
Definition GloTableReaderInterface.h:134
 
std::size_t getObjectStrIndexSize() const
 
AllSetObjectStrIndexIteratorItem(const AllSetObjectStrIndexIteratorItem &)
 
int setCurrentObject(const ObjID &rObjID)
 
IndexPool::ObjectStrIndexIterator * m_pObjectStrIndexIterator
Definition GloTableReaderInterface.h:123
 
int setPosition(std::size_t nPosition)
 
bool inObjectStrIndex(const ObjID &rObjID)
 
AllSetObjectStrIndexIteratorItem()
 
~AllSetObjectStrIndexIteratorItem()
 
int setFilterInAllSet(NUM_PTR ipClientAllSetAddress, const std::string &rsRangeStartIndex, const std::string &rsRangeEndIndex) const
 
std::unordered_map< NUM_PTR, AllSetObjectStrIndexIteratorItem * > * m_pAllSetObjectStrIndexIteratorMap
Definition GloTableReaderInterface.h:346
 
int getObjIDs(std::map< ObjID, ObjID, std::less< ObjID > > &rRetValMap, unsigned long ulClassID)
 
int getObjectData(Record *&prRetVal, const ObjID &rObjID, ReaderInfo *pReaderInfo, bool bInRecursion)
 
int setTransactionIndexPool(const TransactionOwner &rCommunicatorWithTreadID, TransactionIndexPool *pTransactionIndexPool)
 
TableReaderInterface(const SchemaInterface &rScheme, RealIndexPool *pRealIndexPool)
 
int getSizeFromAllSet(std::size_t &rnSize, NUM_PTR ipClientAllSetAddress) const
 
int generateRecord(Record *&prRetVal, const std::string &sFieldNameRow, const std::string &sDataRow, std::streampos StreamPosRow, const std::string &rsTable, bool bOnlyClassIDTable=false)
 
int getIndexedObjIdListFromAllSet(std::vector< glo::ObjID > &rObjIDContainer, NUM_PTR ipClientAllSetAddress, const std::string &rsIndexSearchValue, EnComparisionOp eComparisionOp) const
 
int setFilterInAllSet(NUM_PTR ipClientAllSetAddress, const std::string &rsIndexFilterValue) const
 
int removeFilterInAllSet(NUM_PTR ipClientAllSetAddress) const
 
int getObjIdFromAllSet(ObjID &rObjID, NUM_PTR ipClientAllSetAddress, EnSeekMode eMode) const
 
int getRecord(Record *&prRetVal, const ObjID &rObjID, ClassInfo &rClassInfo, bool bOnlyClassIDTable=false)
 
int setFilterInAllSet(NUM_PTR ipClientAllSetAddress, const std::string &rsIndexFilterValue, EnComparisionOp eComparisionOp) const
 
std::unordered_map< TransactionOwner, TransactionIndexPool *, glo::TransactionOwner::HashFunction > m_pTransactionIndexPools
Definition GloTableReaderInterface.h:367
 
int isAllSetOpen(NUM_PTR ipClientAllSetAddress) const
 
int setCurrentObjectInAllSet(const ObjID &rObjID, NUM_PTR ipClientAllSetAddress) const
 
std::unordered_map< NUM_PTR, IndexPool::TableObjIdIndexIterator * > * m_pAllSetTableObjIdIndexIteratorMap
Definition GloTableReaderInterface.h:325
 
virtual ~TableReaderInterface()
 
void deleteAllSetTableObjIdIndexIteratorMap(std::unordered_map< NUM_PTR, IndexPool::TableObjIdIndexIterator * > *pMapToDelete)
 
int closeAllSet(NUM_PTR ipClientAllSetAddress)
 
int getObjectDataFromDataRow(Record *&prRetVal, const ObjID &rObjID, unsigned long ulClassID, bool bOnlyClassIDTable=false)
 
int getObjIDs(std::list< ObjID > *pRetValList, std::map< ObjID, ObjID, std::less< ObjID > > *pRetValMap, unsigned long ulClassID)
 
RealIndexPool * getRealIndexPool() const
 
void getAllTransactionIndexPools(std::vector< TransactionIndexPool * > &rTransactionIndexPoolVector) const
 
int objIDInAllSet(const ObjID &rObjID, NUM_PTR ipClientAllSetAddress) const
 
int openAllSet(const TransactionOwner &rCommunicatorWithTreadID, NUM_PTR ipClientAllSetAddress, unsigned long ulClassID, bool bWithSubClasses)
 
int getAllObjIDs(std::list< ObjID > &rRetValList)
 
int setPositionInAllSet(std::size_t nPosition, NUM_PTR ipClientAllSetAddress) const
 
int getObjectDataFromDataRow(std::shared_ptr< Record > &sprRetVal, const ObjID &rObjID, unsigned long ulClassID, bool bOnlyClassIDTable=false)
 
int getIndexedObjIdListFromAllSet(std::vector< glo::ObjID > &rObjIDContainer, NUM_PTR ipClientAllSetAddress, const std::string &rsIndexSearchValue, EnQueryType eQuerryType) const
 
std::unordered_map< ObjID, Record *, glo::ObjID::HashFunction > m_RecursionRecordMap
Definition GloTableReaderInterface.h:304
 
virtual int openTable(const std::string &sTableName)
 
int getRecord(Record *&prRetVal, const std::string &sTableName, const ObjID &rObjID, unsigned long ulClassID, bool bOnlyClassIDTable=false)
 
IndexPool::ObjectStrIndexIterator * openAllSet(int &riErr, const TransactionOwner &rCommunicatorWithTreadID, NUM_PTR ipClientAllSetAddress, unsigned long ulClassID, const std::string &rsIndexName)
 
int getObjectData(Record *&prRetVal, const ObjID &rObjID, ReaderInfo *pReaderInfo)
 
IndexPool::TableObjIdIndexIterator * openAllSet(int &riErr, const TransactionOwner &rCommunicatorWithTreadID, NUM_PTR ipClientAllSetAddress, unsigned long ulClassID, bool bWithSubClasses=true)
 
int openAllSet(const TransactionOwner &rCommunicatorWithTreadID, NUM_PTR ipClientAllSetAddress, unsigned long ulClassID, const std::string &rsIndexName)
 
TableReaderInterface(const TableReaderInterface &)
 
int getIndexedObjIdListFromAllSet(std::vector< glo::ObjID > &rObjIDContainer, NUM_PTR ipClientAllSetAddress, const std::string &rsRangeStartIndex, const std::string &rsRangeEndIndex) const
 
TransactionIndexPool * getTransactionIndexPool(const TransactionOwner &rCommunicatorWithTreadID) const
 
int getObjIDs(std::list< ObjID > &rRetValList, unsigned long ulClassID)
 
int getRecord(Record *&prRetVal, const ObjID &rObjID, ReaderInfo *pReaderInfo)
 
int generateRecord(Record *&prRetVal, const std::string &sDataRow, ClassInfo &rClassInfo, std::streampos StreamPosRow, bool bOnlyClassIDTable=false)
 
void deleteAllSetObjectStrIndexIteratorMap(std::unordered_map< NUM_PTR, AllSetObjectStrIndexIteratorItem * > *pMapToDelete)
 
This index is generated in each transaction and changes such as saving, deleting or inserting an obje...
Definition GloTransactionIndexPool.h:66
 
In order to make transactions available not only to a glo::Communicator, but also to individual threa...
Definition GloTransactionOwner.h:81
 
Definition GloAbstractBaseLot.h:49
 
EnComparisionOp
Definition GloTypes.h:1586
 
EnSeekMode
Definition GloTypes.h:192
 
EnQueryType
Definition GloTypes.h:1183
 
Objects of this structure transport data to objects of type TableReaderInterface.
Definition GloReaderWriterInfo.h:119