13 #ifndef __GA_RTICachedRange__
14 #define __GA_RTICachedRange__
51 bool isOrdered()
const override {
return myIsOrdered; }
68 {
return myStart == 0 && myEnd == myOffsetList.size(); }
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.
const GA_OffsetList & getOffsetList() const
virtual bool singleGet(const GA_IteratorState &state, GA_Offset &value) const =0
Cache a given range for later traversal.
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
GA_Offset getFirstOffsetInPage(GA_Size) const override
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()
bool getPageElementRange(GA_Range &, GA_Size, GA_Size) const override
GA_Offset getFirstOffsetInPageNonSplittable() const
Method which can be called for getFirstOffsetInPage()
Abstract implementation of a range.
virtual void singleNext(GA_IteratorState &state) const =0
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 isSplittable() const override
GA_Size getPageCount() const override
bool isOrdered() const override
bool areTraversalDeletionsSafe() 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