The SearchSpacePool accomplishes 2 main functions:
More...
#include <searchspacepool.h>
|
| BaseSearchSpacePool (const DataSetType *dataset) |
| By default, the SearchSpacePool constructor takes a DataSet which it will use for creating indices. More...
|
|
void | recreate () |
| Recreates the SearchSpacePool and all the indices (needed for instance when the dataset it is pointing to has been changed).
|
|
SearchSpaceType * | getAllPoints () const |
| Returns a SearchSpace containing all points. More...
|
|
void | indexOn (const QString &descriptorName) |
| Indexes on the given descriptorName. More...
|
|
bool | hasIndex (const QString &descriptorName) const |
| Returns whether an index exists for the given descriptorName.
|
|
SearchSpaceType * | getSubSpace (const parser::Predicate *pred) const |
|
const DataSetType * | dataset () const |
|
|
void | clearIndices () |
|
int | getCuttingPos (const SearchSpaceType &sspace, int idx, int type, Real value, int start, int end) const |
|
void | indexOnValue (const QString &descriptorName) |
| assumes descriptorName is the fully qualified name
|
|
void | indexOnLabel (const QString &descriptorName) |
| assumes descriptorName is the fully qualified name
|
|
void | indexOnEnum (const QString &descriptorName) |
| assumes descriptorName is the fully qualified name
|
|
|
class | BaseQueryOptimizer< SearchPointType, DataSetType > |
|
template<typename SearchPointType, typename DataSetType>
class gaia2::BaseSearchSpacePool< SearchPointType, DataSetType >
The SearchSpacePool accomplishes 2 main functions:
- it holds references to precomputed SearchSpaces which correspond to indexed descriptors
- it acts as a pool of preallocated SearchSpaces, to avoid the cost of creating / deleting them each time.
template<typename SearchPointType , typename DataSetType >
BaseSearchSpacePool::BaseSearchSpacePool |
( |
const DataSetType * |
dataset | ) |
|
By default, the SearchSpacePool constructor takes a DataSet which it will use for creating indices.
It is necessary to call the indexOn() method explicitly, though.
template<typename SearchPointType , typename DataSetType >
BaseSearchSpace< SearchPointType, DataSetType > * BaseSearchSpacePool::getAllPoints |
( |
| ) |
const |
Returns a SearchSpace containing all points.
FIXME: implementation needs to get a space from ::acquire() instead of creating a new one each time
template<typename SearchPointType , typename DataSetType >
void BaseSearchSpacePool::indexOn |
( |
const QString & |
descriptorName | ) |
|
Indexes on the given descriptorName.
Queries which then use this descriptor should be faster.
The documentation for this class was generated from the following files: