#include <coherence/util/extractor/IndexAwareExtractor.hpp>
Inherits ValueExtractor.
Inherited by ConditionalExtractor [virtual].
Instances of this interface are intended to be used with the QueryMap's addIndex and removeIndex API to support the creation of custom indexes.
Public Types | |
| typedef spec::Handle | Handle |
| IndexAwareExtractor Handle definition. | |
| typedef spec::View | View |
| IndexAwareExtractor View definition. | |
| typedef spec::Holder | Holder |
| IndexAwareExtractor Holder definition. | |
Public Member Functions | |
| virtual MapIndex::Handle | createIndex (bool fOrdered, Comparator::View vComparator, Map::Handle hMapIndex) const =0 |
| Create an index and associate it with the corresponding extractor. | |
| virtual MapIndex::Handle | destroyIndex (Map::Handle hMapIndex) const =0 |
| Destroy an existing index and remove it from the given map of indexes. | |
| virtual MapIndex::Handle createIndex | ( | bool | fOrdered, | |
| Comparator::View | vComparator, | |||
| Map::Handle | hMapIndex | |||
| ) | const [pure virtual] |
Create an index and associate it with the corresponding extractor.
Important: it is a responsibility of this method's implementations to place the necessary <ValueExtractor, MapIndex> entry into the given map of indexes.
| fOrdered | true iff the contents of the indexed information should be ordered; false otherwise | |
| vComparator | the Comparator object which imposes an ordering of entries in the index contents; or NULL if the entries' values natural ordering should be used | |
| hMapIndex | a Map of ValueExtractor to MapIndex to be updated with the created index |
Implemented in ConditionalExtractor.
| virtual MapIndex::Handle destroyIndex | ( | Map::Handle | hMapIndex | ) | const [pure virtual] |
Destroy an existing index and remove it from the given map of indexes.
| hMapIndex | a Map of ValueExtractor to MapIndex to be updated by removing the index being destroyed |
Implemented in ConditionalExtractor.