GlobalObjects
|
Header for IndexPool
Header für IndexPool
TransactionIndexPool
RealIndexPool
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::RealIndexPool |
The real index as opposed to the TransactionIndexPool, which is created for each transaction 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... | |
class | glo::TransactionIndexPool |
This index is generated in each transaction and changes such as saving, deleting or inserting an object are only entered here until the transaction is committed or aborted. More... | |
Namespaces | |
namespace | glo |
Header for IndexPool
Header für IndexPool
TransactionIndexPool
RealIndexPool
IndexPool::DeletedObjIdTuple
IndexPool::ObjIdPosTuple
IndexPool::ObjStrIdTuple
IndexPool::TableObjIdIndex
IndexPool::TableObjIdIndexIterator
IndexPool::ObjectStrIndex
IndexPool::SchemaIndex
Terms of License
This file is part of the GlobalObjects module.
GlobalObjects is free software:
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
GNU Affero General Public License Usage
You can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. Please review the following information to ensure the GNU Affero General Public License requirements will be met: https://www.gnu.org/licenses/agpl-3.0.en.html .