This CRTP (Curiously Recurring Template Pattern) class implements some shared methods which all derived classes can use, and for whom the implementations use the same pattern.
For all derived index types use this declaration for the class:
class METADATA_EXPORT MyIndex : public CRTP_IndexType<MyIndex> { ... }
This will automatically instantiate a common clone() method as well as establishing the abstract interface each index type needs to implement.
#include <adskDataIndexType.h>

Public Member Functions | |
| virtual IndexType * | clone () const |
| Create a duplicate of this object. | |
| virtual std::string | typeName () const |
| Get the unique name of this index type. | |
| virtual IndexType* clone | ( | ) | const [inline, virtual] |
Create a duplicate of this object.
This is virtual so that derived types create the correct type of object.
Implements IndexType.
| virtual std::string typeName | ( | ) | const [inline, virtual] |
Get the unique name of this index type.
Implements IndexType.