GlobalObjects
Loading...
Searching...
No Matches
GloIndexPool.h File Reference

Header for IndexPool
IndexPool::DeletedObjIdTuple
IndexPool::ObjIdPosTuple
IndexPool::ObjStrIdTuple
IndexPool::TableObjIdIndex
IndexPool::TableObjIdIndexIterator
IndexPool::ObjectStrIndex
IndexPool::SchemaIndex
More...

#include "GloTypes.h"
#include "GloWatchNotifyManager.h"
#include "GloObjID.h"
#include "GloClassInfoAttribute.h"
#include "GloClassInfoIndex.h"
#include "EuCriticalSection.h"
#include <ctime>
#include <list>
#include <map>
#include <basetsd.h>

Go to the source code of this file.

Classes

class  glo::IndexPool::DeletedObjIdTuple
 Class to manage deleted objects in the IndexPool::SchemaIndex. More...
 
struct  glo::IndexPool::IndexComparisionFilter
 Filters can be assigned to objects of the type ObjectStrIndexIterator, which control the iteration by an ObjectStrIndex.
With this structure, a filter can be defined using "<", "<=", ">", ">=", "==" and "!=". For example, if m_sIndexFilterValue has the value "123" and m_eComparisionOperator has the value GREATER_EQUAL, only all objects with an index greater than or equal to "123" will be filtered out. More...
 
struct  glo::IndexPool::IndexFilter
 Filters can be assigned to objects of the type ObjectStrIndexIterator, which control the iteration by an ObjectStrIndex.
This filter has an index filter expression in m_sIndexFilterValue. More...
 
class  glo::IndexPool
 IndexPool is the base class for the RealIndexPool and the TransactionIndexPool for the individual transactions. More...
 
struct  glo::IndexPool::IndexRangeFilter
 Filters can be assigned to objects of the type ObjectStrIndexIterator, which control the iteration by an ObjectStrIndex.
With this structure a filter can be defined by means of a range specification. For example, if m_sIndexFilterValue has the value "123" and m_sIndexFilterEndValue has the value "155", all Objects with an index lower than "123" and higher than "155" will be filtered out. Thus, only all objects with an index greater than/equal to "123" and less than/equal to "155" will be delivered in case of a query. More...
 
class  glo::IndexPool::ObjectStrIndex
 Manages the individual string indices of a class. If this is a unique index, the ObjStrIdTuple are in a map, otherwise in a MultiMap. Then indexes in a MultiMap can be inserted as reserved, this is taken into account when inserting further. More...
 
class  glo::IndexPool::ObjectStrIndexIterator
 Has a pointer to an ObjectStrIndex and allows iteration through this index. Is instantiated e.g. for AllSets so that they can iterate independently through StringIndexes. More...
 
class  glo::IndexPool::ObjIdPosTuple
 Class to manage objects in the IndexPool::TableObjIdIndex. More...
 
class  glo::IndexPool::ObjStrIdTuple
 Class to manage objects in the IndexPool::ObjectStrIndex. More...
 
class  glo::IndexPool::SchemaIndex
 Is the index manager class for a schema resp. a database. More...
 
class  glo::IndexPool::TableObjIdIndex
 Manages the object IDs (used and released) with their position in the respective tables. More...
 
class  glo::IndexPool::TableObjIdIndexIterator
 Has a pointer to a TableObjIdIndex and allows to iterate through this index. Is instantiated e.g. for AllSets so that they can iterate through indexes independently. More...
 

Namespaces

namespace  glo
 

Detailed Description

Header for IndexPool

IndexPool::DeletedObjIdTuple
IndexPool::ObjIdPosTuple
IndexPool::ObjStrIdTuple
IndexPool::TableObjIdIndex
IndexPool::TableObjIdIndexIterator
IndexPool::ObjectStrIndex
IndexPool::SchemaIndex

Author
Helmut Jakoby

Terms of License The source code in this file is licensed.

SPDX-License-Identifier: LicenseRef-Helmut-Jakoby-Commercial-License OR LicenseRef-Helmut-Jakoby-Adapted-Prosperity-Public-License

Helmut-Jakoby-Commercial-License
For OEMs (Original Equipment Manufacturers), ISVs (Independent Software Vendors), VARs (Value Added Resellers) and other distributors who combine commercially licensed software with Software © by Helmut Jakoby and distribute it as such or in conjunction with another product and do not wish to publish the source code of the commercially licensed software under any other license that may be offered, a commercial license is available for this purpose. Please review the following information to ensure the Commercial-License requirements will be met: https://globalobjects.de/hjacomlicense_en.html .

Helmut-Jakoby-Adapted-Prosperity-Public-License
For developers of free, non-commercial software applications who want to combine and distribute their application with Software © by Helmut Jakoby, this license is a good option. Please review the following information to ensure the Adapted-Prosperity-Public-License requirements will be met: https://globalobjects.de/hjappllicense_en.html .