Complex index type for referencing metadata.
adsk::Data::Stream objects contain a list of data elements. Each element has to be accessed by Index. This is the base class for the complex index types.
#include <adskDataIndexType.h>

Classes | |
| class | IndexRegistration |
| Helper class to automatically register new index types. More... | |
Public Member Functions | |
| IndexType (const IndexType &rhs) | |
| Copy constructor, simplest level. | |
| virtual IndexType * | clone () const =0 |
| Create a duplicate of this object. | |
| virtual std::string | asString () const =0 |
| Get this index type value as a string. | |
| virtual bool | supportsDenseMode () const =0 |
| Check if this object type supports dense packing indexing. | |
| virtual IndexCount | denseSpaceBetween (const IndexType &rhs) const =0 |
| Calculate the number of elements to be packed between this one and the rhs. | |
| virtual bool | operator== (const IndexType &rhs) const =0 |
| Equality comparison of this object and the rhs. | |
| virtual bool | operator!= (const IndexType &rhs) const =0 |
| Unequality comparison of this object and the rhs. | |
| virtual bool | operator< (const IndexType &rhs) const =0 |
| LT-inequality comparison of this object and the rhs. | |
| virtual bool | operator<= (const IndexType &rhs) const =0 |
| LE-inequality comparison of this object and the rhs. | |
| virtual std::string | typeName () const =0 |
| Get the unique name of this index type. | |
Protected Member Functions | |
| virtual | ~IndexType () |
| Default destructor, nothing to do. | |
| IndexType () | |
| Default constructor, should never be used. | |
Copy constructor, simplest level.
| [in] | rhs | IndexType data to be copied |
| IndexType * clone | ( | ) | const [pure virtual] |
Create a duplicate of this object.
This is virtual so that derived types create the correct type of object.
Implemented in CRTP_IndexType< Derived >, CRTP_IndexType< IndexPair >, and CRTP_IndexType< IndexString >.
| std::string asString | ( | ) | const [pure virtual] |
Get this index type value as a string.
Implemented in IndexPair, and IndexString.
| bool supportsDenseMode | ( | ) | const [pure virtual] |
Check if this object type supports dense packing indexing.
Implemented in IndexPair, and IndexString.
| IndexCount denseSpaceBetween | ( | const IndexType & | rhs | ) | const [pure virtual] |
Calculate the number of elements to be packed between this one and the rhs.
| [in] | rhs | Object from which the packing size is calculated |
Implemented in IndexPair, and IndexString.
| bool operator== | ( | const IndexType & | rhs | ) | const [pure virtual] |
Equality comparison of this object and the rhs.
GT-inequality comparison of this object and the rhs.
GE-inequality comparison of this object and the rhs.
| [in] | rhs | Object being compared against |
| [in] | rhs | Object being compared against |
| [in] | rhs | Object being compared against |
Implemented in IndexPair, and IndexString.
| bool operator!= | ( | const IndexType & | rhs | ) | const [pure virtual] |
Unequality comparison of this object and the rhs.
| [in] | rhs | Object being compared against |
Implemented in IndexPair, and IndexString.
| bool operator< | ( | const IndexType & | rhs | ) | const [pure virtual] |
LT-inequality comparison of this object and the rhs.
| [in] | rhs | Object being compared against |
Implemented in IndexPair, and IndexString.
| bool operator<= | ( | const IndexType & | rhs | ) | const [pure virtual] |
LE-inequality comparison of this object and the rhs.
| [in] | rhs | Object being compared against |
Implemented in IndexPair, and IndexString.
| std::string typeName | ( | ) | const [pure virtual] |
Get the unique name of this index type.
Implemented in CRTP_IndexType< Derived >, CRTP_IndexType< IndexPair >, and CRTP_IndexType< IndexString >.