12 #ifndef __GA_RTIOffsetList__
13 #define __GA_RTIOffsetList__
63 {
return myStart == 0 && myEnd == myOffsetList.size(); }
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.
virtual bool isSplittable() const =0
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 getPageElementRange(GA_Range &, GA_Size, GA_Size) const override
bool areTraversalDeletionsSafe() const override
exint GA_Size
Defines the bit width for index and offset types in GA.
A range of elements in an index-map.
GLuint GLsizei const GLuint const GLintptr * offsets
GA_Offset getFirstOffsetInPage(GA_Size) const override
bool getPageElementRangeNonSplittable() const
Method which can be called for getPageElementRange()
GA_Offset getFirstOffsetInPageNonSplittable() const
Method which can be called for getFirstOffsetInPage()
const GA_OffsetList & getOffsetList() const
void iterateNext(GA_IteratorState &state, GA_Offset &start, GA_Offset &end) const override
Abstract implementation of a range.
virtual void singleNext(GA_IteratorState &state) const =0
Define a range based on a specific offset list.
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
GA_Size getPageCount() 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