HDK
|
#include <GA_ATIGroupBool.h>
Public Member Functions | |
const GA_Detail & | getDetail () const overridefinal |
GA_Detail & | getDetail () |
GA_ElementGroup (const GA_Detail &detail, GA_AttributeOwner owner) | |
~GA_ElementGroup () override | |
int64 | getMemoryUsage (bool inclusive) const override |
void | countMemory (UT_MemoryCounter &counter, bool inclusive) const override |
bool | isOrdered () const overridefinal |
Returns true if the group is currently ordered. More... | |
bool | setOrdered (bool ordered) |
void | makeOrdered () |
void | makeUnordered () |
void | clearOrdered () |
Clear all order information, including any mixed entries. More... | |
bool | copyMembership (const GA_ATIGroupBool &src, bool copy_ordering=true) |
GA_Offset | findOffsetAtGroupIndex (GA_Size i) const |
SYS_FORCE_INLINE void | setElement (GA_Offset ai, bool v) |
SYS_FORCE_INLINE void | setElement (const GA_Range &it, bool v) |
NOTE: This cannot be used in parallel on an ordered group. More... | |
void | toggleElement (GA_Offset ai) |
void | toggleElement (const GA_Range &it) |
NOTE: This cannot be used in parallel on an ordered group. More... | |
bool | combine (const GA_Group *src) overridefinal |
GA_ElementGroup & | operator|= (const GA_ElementGroup &g) |
SYS_FORCE_INLINE bool | contains (GA_Offset offset) const |
bool | containsIndex (GA_Index ai) const |
SYS_FORCE_INLINE bool | containsOffset (GA_Offset offset) const |
SYS_FORCE_INLINE bool | containsAny (const GA_Range &range) const |
SYS_FORCE_INLINE bool | isGroupEmpty () const |
SYS_FORCE_INLINE bool | isEmpty () const |
Query whether the group is empty of primary elements. More... | |
bool | isEmptyMix () const |
Query whether the group is empty of elements, primary or mixed. More... | |
GA_Size | entries () const overridefinal |
Will return the number of primary elements. More... | |
virtual GA_Size | entriesMix () const final |
Will return the total number of elements, primary and mixed. More... | |
GA_Size | getGroupEntries () const |
GA_Size | computeGroupEntries () const |
bool | isMixed () const overridefinal |
Query if the group contains any mixed elements. More... | |
SYS_FORCE_INLINE void | setOffset (GA_Offset ai, bool v) |
void | getConstantSpan (GA_Offset start, GA_Offset end, GA_Size &size, bool &value) const |
void | clear () override |
void | makeConstant (bool value) |
void | invalidateGroupEntries () |
bool | needDestruction () const override |
Methods which can be overridden from GA_Attribute. More... | |
void | destructElement (GA_Offset offset) override |
Callback invoked if needsDestruction() returns true. More... | |
void | reconstructElementBlock (GA_Offset offset, GA_Offset nelements) override |
void | addAll () overridefinal |
Add all elements to the group. More... | |
void | setEntries () |
Add all elements to the group, only writing to real elements' offsets. More... | |
void | toggleEntries () |
Toggle membership of all elements. More... | |
WriteConcurrence | getSupportedWriteConcurrence () const override |
const GA_AIFCopyData * | getAIFCopyData () const override |
Return the attribute's copy interface or NULL. More... | |
const GA_AIFTuple * | getAIFTuple () const override |
Return the attribute's tuple interface or NULL. More... | |
const GA_AIFInterp * | getAIFInterp () const override |
Return the attribute's interpolation interface or NULL. More... | |
const GA_AIFMerge * | getAIFMerge () const override |
Return the attribute's merge interface or NULL. More... | |
const GA_AIFCompare * | getAIFCompare () const override |
Return the attribute's comparison interface or NULL. More... | |
GA_ElementGroupOrder * | getOrdered () |
const GA_ElementGroupOrder * | getOrdered () const |
GA_ElementGroup * | getGroup () |
const GA_ElementGroup * | getGroup () const |
GA_ElementGroup * | getAttribute () |
const GA_ElementGroup * | getAttribute () const |
bool | loadGroupH9 (UT_IStream &is) |
bool | loadGroupByIndexOrderH9 (const UT_BitArray &array) |
bool | saveGroupH9 (std::ostream &os, bool binary) const |
bool | debugValidateArrayCapacity (GA_Offset sz) const override |
Debug validation of allocated array size. More... | |
bool | jsonSave (UT_JSONWriter &w, const GA_SaveMap &map) const |
bool | jsonLoad (UT_JSONParser &p, const GA_LoadMap &map) |
Load from a JSON stream. More... | |
bool | jsonSaveData (UT_JSONWriter &w, const GA_SaveMap &map) const override |
bool | jsonLoadData (UT_JSONParser &p, const GA_LoadMap &map) override |
Load from a JSON stream. More... | |
bool | stat (UT_WorkBuffer &info, uint level) const override |
Compute detailed information. More... | |
bool | setArraySize (GA_Offset new_size) override |
Grow or shrink the array size. More... | |
GA_Offset | getArraySize () const |
SYS_FORCE_INLINE GA_DataBitArray & | getData () |
SYS_FORCE_INLINE const GA_DataBitArray & | getData () const |
Returns the read-only raw bit array. More... | |
SYS_FORCE_INLINE bool | isPageConstant (GA_PageNum pagenum) const |
SYS_FORCE_INLINE bool | getPageValue (GA_PageNum pagenum) const |
SYS_FORCE_INLINE void | setPageConstant (GA_PageNum pagenum, const bool value) |
Sets all elements of the specified page to the given value. More... | |
void | tryCompressAllPages (GA_Offset start_offset=GA_Offset(0), GA_Offset end_offset=GA_INVALID_OFFSET) override |
Try to compress data pages. More... | |
void | hardenAllPages (GA_Offset start_offset=GA_Offset(0), GA_Offset end_offset=GA_INVALID_OFFSET) override |
Harden data pages. More... | |
void | copyNonStorageMetadata (const GA_Attribute *that) overridefinal |
void | replace (const GA_Attribute &src) overridefinal |
void | defragment (const GA_Defragment &defrag) override |
void | orEqual (const GA_ATIGroupBool *src) |
void | andEqual (const GA_ATIGroupBool *src) |
void | xorEqual (const GA_ATIGroupBool *src) |
void | subEqual (const GA_ATIGroupBool *src) |
void | toggleAll (GA_Size numelements) |
GA_ElementGroup & | operator&= (const GA_ElementGroup &g) |
GA_ElementGroup & | operator-= (const GA_ElementGroup &g) |
GA_ElementGroup & | operator^= (const GA_ElementGroup &g) |
GA_ElementGroup & | operator= (const GA_ElementGroup &g) |
SYS_FORCE_INLINE void | addIndex (GA_Index ai) |
SYS_FORCE_INLINE void | toggleIndex (GA_Index ai) |
SYS_FORCE_INLINE void | removeIndex (GA_Index ai) |
SYS_FORCE_INLINE void | addOffset (GA_Offset ai) |
SYS_FORCE_INLINE void | toggleOffset (GA_Offset ai) |
SYS_FORCE_INLINE void | removeOffset (GA_Offset ai) |
SYS_FORCE_INLINE void | addRange (const GA_Range &it) |
SYS_FORCE_INLINE void | toggleRange (const GA_Range &it) |
SYS_FORCE_INLINE void | removeRange (const GA_Range &it) |
bool | copy (GA_Offset desti, GA_Offset srci) overridefinal |
bool | copy (GA_Offset desti, const GA_Attribute &src, GA_Offset srci) overridefinal |
bool | copy (GA_Offset desti, const GA_ATIGroupBool &src, GA_Offset srci) |
bool | copy (const GA_Range &destrange, const GA_Range &srcrange) overridefinal |
bool | copy (const GA_Range &destrange, const GA_Attribute &src, const GA_Range &srcrange) overridefinal |
bool | copy (const GA_Range &destrange, const GA_ATIGroupBool &src, const GA_Range &srcrange) |
bool | fill (const GA_Range &destrange, GA_Offset srci) overridefinal |
bool | fill (const GA_Range &destrange, const GA_Attribute &src, GA_Offset srci) overridefinal |
bool | fill (const GA_Range &destrange, const GA_ATIGroupBool &src, GA_Offset srci) |
Public Member Functions inherited from GA_Attribute | |
GA_Attribute (const GA_AttributeType &type, const GA_IndexMap &index_map, GA_AttributeScope scope, const UT_StringHolder &name) | |
virtual | ~GA_Attribute () |
SYS_FORCE_INLINE const GA_AttributeType & | getType () const |
SYS_FORCE_INLINE const GA_IndexMap & | getIndexMap () const |
SYS_FORCE_INLINE const GA_Detail & | getDetail () const |
SYS_FORCE_INLINE GA_Detail & | getDetail () |
SYS_FORCE_INLINE GA_AttributeOwner | getOwner () const |
SYS_FORCE_INLINE GA_AttributeScope | getScope () const |
SYS_FORCE_INLINE bool | isGroup () const |
SYS_FORCE_INLINE GA_TypeInfo | getTypeInfo () const |
SYS_FORCE_INLINE void | setTypeInfo (GA_TypeInfo type) |
bool | shouldInterpretAsTexCoord (bool allow_float2=false) const |
GA_StorageClass | getStorageClass () const |
Returns the approximate type of the attribute. More... | |
int | getTupleSize () const |
Size of the AIFTuple, if it exists. If it doesn't, 1. More... | |
SYS_FORCE_INLINE const UT_StringHolder & | getName () const |
SYS_FORCE_INLINE const UT_StringHolder & | getFullName () const |
SYS_FORCE_INLINE GA_DataId | getDataId () const |
SYS_FORCE_INLINE void | assignNewDataId () |
SYS_FORCE_INLINE void | bumpDataId () |
SYS_FORCE_INLINE void | clearDataId () |
SYS_FORCE_INLINE void | cloneDataId (const GA_Attribute &src, bool allow_clear=false) |
SYS_FORCE_INLINE void | cloneOrBumpDataId (const GA_Attribute &src, bool allow_clear=false) |
NOTE: Just call cloneDataId(src). More... | |
virtual const GA_AIFDelta * | getAIFDelta () const |
Return the attribute's delta interface or NULL. More... | |
virtual const GA_AIFMath * | getAIFMath () const |
Return the attribute's math interface or NULL. More... | |
virtual const GA_AIFBlob * | getAIFBlob () const |
Return the attribute's blob interface or NULL. More... | |
virtual const GA_AIFBlobArray * | getAIFBlobArray () const |
Return the attribute's blob array interface or NULL. More... | |
virtual const GA_AIFStringTuple * | getAIFStringTuple () const |
Return the attribute's string tuple interface or NULL. More... | |
virtual const GA_AIFSharedStringTuple * | getAIFSharedStringTuple () const |
Return the attribute's shared string tuple interface or NULL. More... | |
virtual const GA_AIFSharedStringArray * | getAIFSharedStringArray () const |
Return the attribute's shared string array interface or NULL. More... | |
virtual const GA_AIFSharedDictTuple * | getAIFSharedDictTuple () const |
Return the attribute's shared options tuple interface or NULL. More... | |
virtual const GA_AIFSharedDictArray * | getAIFSharedDictArray () const |
Return the attribute's shared options tuple interface or NULL. More... | |
virtual const GA_AIFIndexPair * | getAIFIndexPair () const |
Return the attribute's index pair interface or NULL. More... | |
virtual const GA_AIFBlindData * | getAIFBlindData () const |
Return the attribute's blind data interface or NULL. More... | |
virtual const GA_AIFEdit * | getAIFEdit () const |
Return the attribute's edit interface or NULL. More... | |
virtual const GA_AIFNumericArray * | getAIFNumericArray () const |
Return the attribute's arraydata interface or NULL. More... | |
virtual const GA_AIFStat * | getAIFStat () const |
template<typename T > | |
const T * | getAIF () const |
Generic method for getting an AIF by type. More... | |
const GA_AttributeOptions & | getOptions () const |
GA_AttributeOptions & | getOptions () |
void | setNonTransforming (bool val) |
bool | needsTransform (bool include_P=true) const |
bool | isDetached () const |
void | mergeOptions (const GA_AttributeOptions &src) |
Merge the options passed in with the options in the attribute. More... | |
bool | importOption (const char *name, int &v) const |
bool | importOption (const char *name, bool &v) const |
bool | importOption (const char *name, fpreal32 &v) const |
bool | importOption (const char *name, fpreal64 &v) const |
bool | importOption (const char *name, UT_String &v) const |
void | setTailInitialization (bool onoff) |
bool | isTailInitialization () const |
Check whether the attribute is set to tail initialization. More... | |
void | reconstructElement (GA_Offset offset) |
virtual void | compactStorage () |
virtual void | batchDeletion () |
GA_Attribute * | clone (const GA_IndexMap &index_map, const UT_StringHolder &name, bool clone_options) const |
bool | jsonSaveDefinition (UT_JSONWriter &w) const |
Save the GA_Attribute-Definition section. More... | |
virtual const GA_AIFJSON * | getAIFJSON () const |
Return the AIF to handle saving/loading of the private data section. More... | |
virtual int | getSaveVersion () const |
virtual bool | matchesStorage (const GA_Attribute *that) const |
SYS_FORCE_INLINE GA_AttributeProxyHandle | getProxy () |
SYS_FORCE_INLINE GA_ConstAttributeProxyHandle | getProxy () const |
void | setExportName (const char *external_name) |
bool | hasExportName () const |
std::string | getExportName () const |
GA_CEAttribute * | getCEAttribute (GA_StorageClass storage, int &tuplesize, bool isarray, bool read, bool write) |
GA_CEAttribute * | getCEAttribute (GA_StorageClass storage, GA_Precision precision, int &tuplesize, bool isarray, bool read, bool write) |
void | setCEAttribute (GA_CEAttribute *ceattrib, bool leave_on_gpu=false) |
void | flushCEWriteCaches (bool clearwriteback=true) |
bool | hasPendingCEWriteBack () const |
void | flushCECaches () |
Remove all CE Caches, copying back any marked as written to. More... | |
void | stealCEAttribute (const GA_Attribute &src) |
bool | isActivelyStreamed () const |
void | setActivelyStreamed (bool isstreaming) |
bool | existedPriorToStream () const |
void | setExistedPriorToStream (bool preexisted) |
bool | hasFlag (AttribFlag flag) const |
void | setFlag (AttribFlag flag, bool onoff) |
Public Member Functions inherited from GA_Group | |
virtual | ~GA_Group () |
const UT_StringHolder & | getName () const |
bool | isInternal () const |
bool | getInternal () const |
void | setInternal (bool on_off) |
bool | isDetached () const |
GA_GroupType | classType () const |
GA_GroupMaskType | classMaskType () const |
bool | isElementGroup () const |
SYS_FORCE_INLINE bool | isEmpty () const |
void | clearEntries () |
virtual bool | jsonShouldSave (const GA_SaveMap &map) const |
bool | jsonSaveDefinition (UT_JSONWriter &w, const char *type) const |
void | dump (std::ostream &os) |
A convenience function to do a JSON dump of the group contents. More... | |
Protected Member Functions | |
GA_ElementGroup (GA_Detail &detail, GA_AttributeOwner owner, const UT_StringHolder &name, bool internal, bool detached) | |
Protected Member Functions inherited from GA_Attribute | |
int64 | getBaseMemoryUsage () const |
void | setDetached (bool detached) |
Only called by GA_AttributeSet and GA_ElementGroup. More... | |
Protected Member Functions inherited from GA_Group | |
GA_Group (const UT_StringHolder &name, bool internal, GA_GroupType type, bool detached) | |
Friends | |
class | GU_Group |
class | GU_ElementGroup |
class | GOP_GroupParse |
Additional Inherited Members | |
Public Types inherited from GA_Attribute | |
enum | WriteConcurrence { WRITE_CONCURRENCE_NONE, WRITE_CONCURRENCE_PAGE, WRITE_CONCURRENCE_ELEMENT } |
enum | AttribFlag { FLAG_TAIL_INITIALIZE = 1, FLAG_STREAM_ACTIVE = 2, FLAG_STREAM_NOPREEXIST = 4 } |
Static Protected Member Functions inherited from GA_Attribute | |
static bool | checkGlobalOverwrite (const GA_MergeMap &map, const GA_Attribute *attrib) |
Definition at line 54 of file GA_ATIGroupBool.h.
|
protected |
GA_ElementGroup::GA_ElementGroup | ( | const GA_Detail & | detail, |
GA_AttributeOwner | owner | ||
) |
|
override |
|
inlinefinaloverridevirtual |
Add all elements to the group.
Implements GA_Group.
Definition at line 421 of file GA_ATIGroupBool.h.
|
inline |
Access elements of the group by ordered index rather than offset. Internally, this method just find the data offset and calls appropriate method.
Definition at line 333 of file GA_ATIGroupBool.h.
|
inline |
Access elements by their offset in the index map NOTE: When using addOffset, toggleOffset, removeOffset in parallel, you must call invalidateGroupEntries() afterward, else entries() may return an incorrect value. NOTE: These cannot be used in parallel on an ordered group.
Definition at line 359 of file GA_ATIGroupBool.h.
|
inline |
Access elements by a GA_Range These have the advantage of being able to operate a page at a time when applicable. NOTE: These cannot be used in parallel on an ordered group.
Definition at line 384 of file GA_ATIGroupBool.h.
void GA_ElementGroup::andEqual | ( | const GA_ATIGroupBool * | src | ) |
These methods only work on unordered groups.
|
inlinestatic |
Definition at line 87 of file GA_ATIGroupBool.h.
|
inlinestatic |
Definition at line 94 of file GA_ATIGroupBool.h.
|
inlinestatic |
Definition at line 109 of file GA_ATIGroupBool.h.
|
inlinestatic |
Definition at line 116 of file GA_ATIGroupBool.h.
void GA_ElementGroup::clearOrdered | ( | ) |
Clear all order information, including any mixed entries.
|
finaloverridevirtual |
Add all elements corresponding with src to this group. src can be a point, vertex, primitive, or edge group. Breakpoint groups won't crash, but may add more elements than required.
Reimplemented from GA_Group.
GA_Size GA_ElementGroup::computeGroupEntries | ( | ) | const |
|
inline |
Definition at line 260 of file GA_ATIGroupBool.h.
|
inline |
Definition at line 276 of file GA_ATIGroupBool.h.
|
inline |
Definition at line 264 of file GA_ATIGroupBool.h.
|
inline |
Definition at line 271 of file GA_ATIGroupBool.h.
Copy attribute values for a single element.
Reimplemented from GA_Attribute.
Definition at line 616 of file GA_ATIGroupBool.h.
|
inlinefinaloverridevirtual |
Copy attribute values for a single element.
Reimplemented from GA_Attribute.
Definition at line 621 of file GA_ATIGroupBool.h.
|
inline |
Copy attribute values for a single element.
Definition at line 629 of file GA_ATIGroupBool.h.
|
inlinefinaloverridevirtual |
Copy attribute values for a range of elements.
Reimplemented from GA_Attribute.
Definition at line 638 of file GA_ATIGroupBool.h.
|
inlinefinaloverridevirtual |
Copy attribute values for a range of elements.
Reimplemented from GA_Attribute.
Definition at line 643 of file GA_ATIGroupBool.h.
|
inline |
Copy attribute values for a range of elements.
Definition at line 650 of file GA_ATIGroupBool.h.
bool GA_ElementGroup::copyMembership | ( | const GA_ATIGroupBool & | src, |
bool | copy_ordering = true |
||
) |
Copy membership information from the source group. This will fail if the groups have different index maps. This will also copy over the ordered information if copy_ordering
is set to true
.
|
finaloverridevirtual |
In the case that we're copying from an attribute whose storage type matches this exactly, this function copies the metadata not associated with the storage, e.g. myOptions, excluding the name and the data ID.
Reimplemented from GA_Attribute.
|
overridevirtual |
Count memory usage using a UT_MemoryCounter in order to count shared memory correctly. If inclusive is true, the size of this object is counted, else only memory owned by this object is counted. If this is pointed to by the calling object, inclusive should be true. If this is contained in the calling object, inclusive should be false. (Its memory was already counted in the size of the calling object.)
NOTE: If you're implementing this in a direct subclass of GA_Attribute, call getBaseMemoryUsage() to get the amount of memory in the base class. If in a more distant descendant class, call Base::countMemory(counter, false) to count the memory in Base and above, excluding sizeof(Base).
Implements GA_Attribute.
|
overridevirtual |
Debug validation of allocated array size.
Reimplemented from GA_Attribute.
|
overridevirtual |
Interface for defragmentation
Implements GA_Attribute.
Callback invoked if needsDestruction() returns true.
Reimplemented from GA_Attribute.
|
inlinefinaloverridevirtual |
Will return the number of primary elements.
Implements GA_Group.
Definition at line 297 of file GA_ATIGroupBool.h.
|
inlinefinalvirtual |
Will return the total number of elements, primary and mixed.
Definition at line 300 of file GA_ATIGroupBool.h.
|
inlinefinaloverridevirtual |
Assign all elements of a range from a single attribute value.
Reimplemented from GA_Attribute.
Definition at line 658 of file GA_ATIGroupBool.h.
|
inlinefinaloverridevirtual |
Assign all elements of a range from a single attribute value.
Reimplemented from GA_Attribute.
Definition at line 663 of file GA_ATIGroupBool.h.
|
inline |
Assign all elements of a range from a single attribute value.
Definition at line 671 of file GA_ATIGroupBool.h.
Return GA offset of the Nth element of the group. NOTE: This may be quite expensive to compute. Returns GA_INVALID_OFFSET if there aren't enough elements in the group.
|
inlineoverridevirtual |
Return the attribute's comparison interface or NULL.
Reimplemented from GA_Attribute.
Definition at line 453 of file GA_ATIGroupBool.h.
|
inlineoverridevirtual |
Return the attribute's copy interface or NULL.
Reimplemented from GA_Attribute.
Definition at line 445 of file GA_ATIGroupBool.h.
|
inlineoverridevirtual |
Return the attribute's interpolation interface or NULL.
Reimplemented from GA_Attribute.
Definition at line 449 of file GA_ATIGroupBool.h.
|
inlineoverridevirtual |
Return the attribute's merge interface or NULL.
Reimplemented from GA_Attribute.
Definition at line 451 of file GA_ATIGroupBool.h.
|
inlineoverridevirtual |
Return the attribute's tuple interface or NULL.
Reimplemented from GA_Attribute.
Definition at line 447 of file GA_ATIGroupBool.h.
|
inline |
Get the array size of the attribute. This is primarily here for checking detached groups, when the detail may have more elements added since the group was created.
Definition at line 547 of file GA_ATIGroupBool.h.
|
inline |
Definition at line 461 of file GA_ATIGroupBool.h.
|
inline |
Definition at line 462 of file GA_ATIGroupBool.h.
|
inline |
Query the length of repeated bit values starting from 'start' until 'end' or a change in bit values.
Definition at line 403 of file GA_ATIGroupBool.h.
|
inline |
Returns the writable raw bit array. WARNING: Only use this if this is an unordered group, and invalidateGroupEntries() has been called, so that writing doesn't cause problems.
Definition at line 555 of file GA_ATIGroupBool.h.
|
inline |
Returns the read-only raw bit array.
Definition at line 563 of file GA_ATIGroupBool.h.
|
inlinefinaloverridevirtual |
Implements GA_Group.
Definition at line 64 of file GA_ATIGroupBool.h.
|
inline |
Definition at line 68 of file GA_ATIGroupBool.h.
|
inline |
Definition at line 459 of file GA_ATIGroupBool.h.
|
inline |
Definition at line 460 of file GA_ATIGroupBool.h.
|
inline |
Definition at line 307 of file GA_ATIGroupBool.h.
|
overridevirtual |
Report the memory usage
NOTE: If you're implementing this in a direct subclass of GA_Attribute, call getBaseMemoryUsage() to get the amount of memory in the base class. If in a more distant descendant class, call Base::getMemoryUsage(false) to count the memory in Base and above, excluding sizeof(Base).
Implements GA_Attribute.
|
inline |
Definition at line 457 of file GA_ATIGroupBool.h.
|
inline |
Definition at line 458 of file GA_ATIGroupBool.h.
|
inline |
If pagenum is a constant page, this returns the constant value of the page. Otherwise, this function shouldn't be called.
Definition at line 577 of file GA_ATIGroupBool.h.
|
inlineoverridevirtual |
Data is paged, so concurrent writes to separate pages supported, unless the group is ordered. Rather, that would be the case if the updates to myGroupEntries were thread-safe.
Implements GA_Attribute.
Definition at line 442 of file GA_ATIGroupBool.h.
|
inlinestatic |
Definition at line 79 of file GA_ATIGroupBool.h.
|
inlinestatic |
Definition at line 76 of file GA_ATIGroupBool.h.
|
overridevirtual |
Harden data pages.
Implements GA_Attribute.
|
inline |
Definition at line 412 of file GA_ATIGroupBool.h.
|
inline |
Query whether the group is empty of primary elements.
Definition at line 287 of file GA_ATIGroupBool.h.
|
inline |
Query whether the group is empty of elements, primary or mixed.
Definition at line 292 of file GA_ATIGroupBool.h.
|
inline |
Definition at line 281 of file GA_ATIGroupBool.h.
|
inlinefinaloverridevirtual |
Query if the group contains any mixed elements.
Implements GA_Group.
Definition at line 317 of file GA_ATIGroupBool.h.
|
inlinefinaloverridevirtual |
Returns true
if the group is currently ordered.
Implements GA_Group.
Definition at line 140 of file GA_ATIGroupBool.h.
|
inline |
Returns true iff the specified page is constant-compressed, where a single value is stored to represent GA_PAGE_SIZE values in the page, (or possibly fewer if only one page).
Definition at line 571 of file GA_ATIGroupBool.h.
|
inlinestatic |
Definition at line 82 of file GA_ATIGroupBool.h.
|
inlinestatic |
Definition at line 101 of file GA_ATIGroupBool.h.
bool GA_ElementGroup::jsonLoad | ( | UT_JSONParser & | p, |
const GA_LoadMap & | map | ||
) |
Load from a JSON stream.
|
overridevirtual |
Load from a JSON stream.
Implements GA_Group.
bool GA_ElementGroup::jsonSave | ( | UT_JSONWriter & | w, |
const GA_SaveMap & | map | ||
) | const |
Save data to a JSON file. We do not provide an GA_AIFJSON interface since the data is saved by the group (not the attribute). This method is called directly by GA_ElementGroup instead.
|
overridevirtual |
Save data to a JSON stream.
Private data for an element group
Implements GA_Group.
bool GA_ElementGroup::loadGroupByIndexOrderH9 | ( | const UT_BitArray & | array | ) |
bool GA_ElementGroup::loadGroupH9 | ( | UT_IStream & | is | ) |
void GA_ElementGroup::makeConstant | ( | bool | value | ) |
void GA_ElementGroup::makeOrdered | ( | ) |
|
inline |
Definition at line 167 of file GA_ATIGroupBool.h.
|
overridevirtual |
Methods which can be overridden from GA_Attribute.
Element destruction event. When an element is destroyed, the attribute may be notified of this event.
Reimplemented from GA_Attribute.
GA_ElementGroup& GA_ElementGroup::operator&= | ( | const GA_ElementGroup & | g | ) |
These operators only support g having the same owner as this.
GA_ElementGroup& GA_ElementGroup::operator-= | ( | const GA_ElementGroup & | g | ) |
These operators only support g having the same owner as this.
|
inline |
These operators only support g having the same owner as this.
Definition at line 252 of file GA_ATIGroupBool.h.
GA_ElementGroup& GA_ElementGroup::operator^= | ( | const GA_ElementGroup & | g | ) |
These operators only support g having the same owner as this.
GA_ElementGroup& GA_ElementGroup::operator|= | ( | const GA_ElementGroup & | g | ) |
operator|= supports point, vertex, and primitive groups, regardless of this group type.
combine
or point/vertex/primitive group operator. void GA_ElementGroup::orEqual | ( | const GA_ATIGroupBool * | src | ) |
These methods only work on unordered groups.
|
overridevirtual |
When the array size is grown, attributes should initialize the value appropriately. When elements are reused, however, reconstructElementBlock is called. This happens if an element is deleted and then a new element is allocated (using the existing slot)
Implements GA_Attribute.
|
static |
|
inline |
Access elements of the group by ordered index rather than offset. Internally, this method just find the data offset and calls appropriate method.
Definition at line 345 of file GA_ATIGroupBool.h.
|
inline |
Access elements by their offset in the index map NOTE: When using addOffset, toggleOffset, removeOffset in parallel, you must call invalidateGroupEntries() afterward, else entries() may return an incorrect value. NOTE: These cannot be used in parallel on an ordered group.
Definition at line 371 of file GA_ATIGroupBool.h.
|
inline |
Access elements by a GA_Range These have the advantage of being able to operate a page at a time when applicable. NOTE: These cannot be used in parallel on an ordered group.
Definition at line 394 of file GA_ATIGroupBool.h.
|
finaloverridevirtual |
This replaces the entirety of this attribute's content and non- storage metadata (except the name) with that of the src attribute. This copies the src group order if present and destroys any if not. matchesStorage(src) should already return true. This is primarily for use by GA_AttributeSet::replace(). NOTE: The internal content sizes may not match exactly if the attribute type may overallocate, but the sizes should be such that any real data will fit in the destination, so be careful and deal with the myTailInitialize flag appropriately if any extra elements aren't equal to the default.
Implements GA_Attribute.
bool GA_ElementGroup::saveGroupH9 | ( | std::ostream & | os, |
bool | binary | ||
) | const |
|
overridevirtual |
Grow or shrink the array size.
Implements GA_Attribute.
|
inline |
NOTE: When using setElement(GA_Offset,bool) in parallel, you must call invalidateGroupEntries() afterward, else getGroupEntries() may return an incorrect value. NOTE: This cannot be used in parallel on an ordered group.
Definition at line 192 of file GA_ATIGroupBool.h.
|
inline |
NOTE: This cannot be used in parallel on an ordered group.
Definition at line 204 of file GA_ATIGroupBool.h.
|
inline |
Add all elements to the group, only writing to real elements' offsets.
Definition at line 426 of file GA_ATIGroupBool.h.
|
inline |
Definition at line 323 of file GA_ATIGroupBool.h.
|
inline |
When ordered
is set to true
, convert this group to an ordered group, otherwise convert to an unordered group. If the group contains mixed entries, a conversion to unordered will fail, and the function return false
. Conversion to ordered group will always succeed.
Definition at line 149 of file GA_ATIGroupBool.h.
|
inline |
Sets all elements of the specified page to the given value.
Definition at line 582 of file GA_ATIGroupBool.h.
|
overridevirtual |
Compute detailed information.
Reimplemented from GA_Group.
void GA_ElementGroup::subEqual | ( | const GA_ATIGroupBool * | src | ) |
These methods only work on unordered groups.
NOTE: When using toggleElement(GA_Offset) in parallel, you must call invalidateGroupEntries() afterward, else getGroupEntries() may return an incorrect value. NOTE: This cannot be used in parallel on an ordered group.
NOTE: This cannot be used in parallel on an ordered group.
|
inline |
Toggle membership of all elements.
Definition at line 431 of file GA_ATIGroupBool.h.
|
inline |
Access elements of the group by ordered index rather than offset. Internally, this method just find the data offset and calls appropriate method.
Definition at line 339 of file GA_ATIGroupBool.h.
|
inline |
Access elements by their offset in the index map NOTE: When using addOffset, toggleOffset, removeOffset in parallel, you must call invalidateGroupEntries() afterward, else entries() may return an incorrect value. NOTE: These cannot be used in parallel on an ordered group.
Definition at line 365 of file GA_ATIGroupBool.h.
|
inline |
Access elements by a GA_Range These have the advantage of being able to operate a page at a time when applicable. NOTE: These cannot be used in parallel on an ordered group.
Definition at line 389 of file GA_ATIGroupBool.h.
|
overridevirtual |
Try to compress data pages.
Implements GA_Attribute.
void GA_ElementGroup::xorEqual | ( | const GA_ATIGroupBool * | src | ) |
These methods only work on unordered groups.
|
friend |
Definition at line 776 of file GA_ATIGroupBool.h.
|
friend |
Definition at line 775 of file GA_ATIGroupBool.h.
Definition at line 774 of file GA_ATIGroupBool.h.