13 #ifndef __GA_RTIIndex__
14 #define __GA_RTIIndex__
A class to manage an ordered array which has fixed offset handles.
virtual bool isEmpty() const =0
Check whether the range is empty.
virtual GA_RangeTypeInterface * copy() const =0
Method to create a copy of this selection.
bool areTraversalDeletionsSafe() const override
virtual bool singleGet(const GA_IteratorState &state, GA_Offset &value) const =0
virtual void iterateCopy(GA_IteratorState &dest, const GA_IteratorState &src) const =0
Copy iterator state. The dest state will not have been constructed.
virtual bool split(GA_RangeTypeInterface *list[2]) const =0
bool isSplittable() const override
virtual bool isOrdered() const
Query if the RTI is ordered according to the index.
exint GA_Size
Defines the bit width for index and offset types in GA.
A range of elements in an index-map.
bool getPageElementRangeNonSplittable() const
Method which can be called for getPageElementRange()
GA_Size getPageCount() const override
GA_Offset getFirstOffsetInPage(GA_Size) const override
GA_Offset getFirstOffsetInPageNonSplittable() const
Method which can be called for getFirstOffsetInPage()
bool canContainDuplicates() const override
void iterateNext(GA_IteratorState &state, GA_Offset &start, GA_Offset &end) const override
GA_Size GA_Index
Define the strictness of GA_Offset/GA_Index.
Abstract implementation of a range.
virtual void singleNext(GA_IteratorState &state) const =0
void iterateRewind(GA_IteratorState &state, GA_Offset &start, GA_Offset &end) const override
virtual GA_Size getMaxEntries() const =0
Get an upper bound on the size of the range.
virtual void singleRewind(GA_IteratorState &state) const =0
bool getPageElementRange(GA_Range &, GA_Size, GA_Size) const override
virtual GA_Size getEntries() const =0
Base class for ranges providing consolidation to contiguous blocks.
virtual bool isEqual(const GA_RangeTypeInterface &src) const =0