All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GA_EdgeGroupTable Class Reference

#include <GA_EdgeGroupTable.h>

+ Inheritance diagram for GA_EdgeGroupTable:

Public Types

< GA_EdgeGroup
- Public Types inherited from GA_GroupTable
typedef UT_ArrayStringMap
< GA_Group * > 
typedef UT_OrderedIterator
< GA_Group
*, GA_GroupTable::iterator
< GA_Group > > 

Public Member Functions

 GA_EdgeGroupTable (GA_Detail &detail)
 ~GA_EdgeGroupTable () override
void getList (UT_Array< const GA_EdgeGroup * > &list) const
void getList (UT_Array< GA_EdgeGroup * > &list) const
void mergeTable (const GA_EdgeGroupTable &src, GA_MergeMap &map)
void mergeEdgeGroups (const GA_MergeMap &map)
void removePointsFromGroups (const GA_Range &range)
void removePointFromGroups (const GA_Offset ptoff)
void removePrimsFromGroups (const GA_Range &range)
void removePrimFromGroups (const GA_Offset primoff)
void defragment (const GA_Detail *gdp, const GA_Defragment &defrag)
GA_Size destroyEmptyGroups ()
void bumpAllDataIds ()
void makeAllEdgesValid ()
< GA_EdgeGroup
beginTraverse () const
< GA_EdgeGroup
endTraverse () const
- Public Member Functions inherited from GA_GroupTable
 GA_GroupTable (GA_Detail &detail)
virtual ~GA_GroupTable ()
virtual int64 getMemoryUsage (bool inclusive) const
 Report memory usage (includes all shared memory) More...
virtual void countMemory (UT_MemoryCounter &counter, bool inclusive) const
bool isEmpty () const
exint getPersistentCount () const
exint entries () const
GA_Groupfind (const UT_StringRef &name) const
GA_GroupnewGroup (const UT_StringHolder &name)
GA_GroupnewInternalGroup ()
GA_GroupnewGroup (const UT_StringHolder &name, bool internal)
 TODO: Deprecate internal groups with user-specified names. More...
bool destroy (GA_Group *group)
bool destroy (const UT_StringRef &name)
GA_Size destroyGroups (const Filter &filter)
void clear ()
bool renameGroup (const UT_StringRef &fromname, const UT_StringHolder &toname)
UT_StringHolder renameGroupUnspecified (const UT_StringRef &from_name)
bool jsonSave (UT_JSONWriter &w, const GA_SaveMap &map, const char *type) const
bool jsonLoad (UT_JSONParser &p, const GA_LoadMap &map, const char *type_default, GA_AttributeOwner owner)
 Load the groups from the JSON stream. More...
bool jsonShouldSave (const GA_SaveMap &map) const
 Returns true if there are any groups to be saved out. More...
GA_GroupTable::iterator< GA_GroupbeginTraverse () const
GA_GroupTable::iterator< GA_GroupendTraverse () const
GA_GroupUPtr createDetachedGroup () const
GA_GroupnewDetachedGroup () const
void stat (UT_StringArray &info, uint level)
void stat (GA_Stat &stat, uint level) const
ordered_iterator obegin () const
ordered_iterator oend () const

Protected Member Functions

GA_GroupjsonCreateGroup (UT_JSONParser &p, const char *type, const char *name, bool internal, GA_AttributeOwner owner) override
GA_GroupvirtualCreateGroup (GA_Detail &detail, const UT_StringHolder &name, bool internal) const override
GA_GroupvirtualCreateDetachedGroup (const GA_Detail &detail) const override
- Protected Member Functions inherited from GA_GroupTable
template<typename T >
iterator< Tbegin () const
template<typename T >
iterator< Tend () const
template<typename GROUP_TYPE >
void getListT (UT_Array< GROUP_TYPE * > &list) const
GA_DetailgetDetail ()
const GA_DetailgetDetail () const
GA_GroupnewGroupWithNoConflict (const UT_StringHolder &name, bool internal)
void reserveNewSymbolTableSpace (exint n)
const MapTypegetMap () const
 Used only by GA_AttributeDict. More...
typedef UT_OrderedIterator
< GA_EdgeGroup
*, GA_GroupTable::iterator
< GA_EdgeGroup > > 
ordered_iterator obegin () const
ordered_iterator oend () const
static int compareAlpha (GA_EdgeGroup *const *a, GA_EdgeGroup *const *b)

Additional Inherited Members

- Static Public Member Functions inherited from GA_GroupTable
static bool jsonStat (UT_JSONParser &p, GA_Stat &sbuf, GA_GroupType owner)
 Stat the group from the JSON stream. More...
static int compareAlpha (GA_Group *const *a, GA_Group *const *b)
- Static Protected Member Functions inherited from GA_GroupTable
static int compareGroupName (const GA_Group &a, const GA_Group &b)

Detailed Description

Definition at line 33 of file GA_EdgeGroupTable.h.

Member Typedef Documentation

Traverse the group table in alpabetic order.

Definition at line 60 of file GA_EdgeGroupTable.h.

Constructor & Destructor Documentation

GA_EdgeGroupTable::GA_EdgeGroupTable ( GA_Detail detail)
GA_EdgeGroupTable::~GA_EdgeGroupTable ( )

Member Function Documentation

GA_GroupTable::iterator<GA_EdgeGroup> GA_EdgeGroupTable::beginTraverse ( ) const

Traverse the group table in creation order.

It is NOT safe to add or remove groups during traversal.

Definition at line 48 of file GA_EdgeGroupTable.h.

void GA_EdgeGroupTable::bumpAllDataIds ( )
static int GA_EdgeGroupTable::compareAlpha ( GA_EdgeGroup *const a,
GA_EdgeGroup *const b 

Traverse the group table in alpabetic order.

Definition at line 56 of file GA_EdgeGroupTable.h.

void GA_EdgeGroupTable::defragment ( const GA_Detail gdp,
const GA_Defragment defrag 

Called by GA_Detail::defragment to update point offsets in edge groups when the point index map is being defragmented. It's also called there for the primitive index map, in case edge groups ever switch to using primitive offsets, instead of primitive pointers. NOTE: This will bump data IDs of any modified edge groups.

GA_Size GA_EdgeGroupTable::destroyEmptyGroups ( )
GA_GroupTable::iterator<GA_EdgeGroup> GA_EdgeGroupTable::endTraverse ( ) const

Traverse the group table in creation order.

It is NOT safe to add or remove groups during traversal.

Definition at line 50 of file GA_EdgeGroupTable.h.

void GA_EdgeGroupTable::getList ( UT_Array< const GA_EdgeGroup * > &  list) const
void GA_EdgeGroupTable::getList ( UT_Array< GA_EdgeGroup * > &  list) const
GA_Group* GA_EdgeGroupTable::jsonCreateGroup ( UT_JSONParser p,
const char *  type,
const char *  name,
bool  internal,
GA_AttributeOwner  owner 

Method to create an edge group

See Also

Implements GA_GroupTable.

void GA_EdgeGroupTable::makeAllEdgesValid ( )
void GA_EdgeGroupTable::mergeEdgeGroups ( const GA_MergeMap map)
void GA_EdgeGroupTable::mergeTable ( const GA_EdgeGroupTable src,
GA_MergeMap map 
ordered_iterator GA_EdgeGroupTable::obegin ( ) const

Traverse the group table in alpabetic order.

Definition at line 61 of file GA_EdgeGroupTable.h.

ordered_iterator GA_EdgeGroupTable::oend ( ) const

Traverse the group table in alpabetic order.

Definition at line 66 of file GA_EdgeGroupTable.h.

void GA_EdgeGroupTable::removePointFromGroups ( const GA_Offset  ptoff)
void GA_EdgeGroupTable::removePointsFromGroups ( const GA_Range range)
void GA_EdgeGroupTable::removePrimFromGroups ( const GA_Offset  primoff)
void GA_EdgeGroupTable::removePrimsFromGroups ( const GA_Range range)
GA_Group* GA_EdgeGroupTable::virtualCreateDetachedGroup ( const GA_Detail detail) const

Implements GA_GroupTable.

Definition at line 108 of file GA_EdgeGroupTable.h.

GA_Group* GA_EdgeGroupTable::virtualCreateGroup ( GA_Detail detail,
const UT_StringHolder name,
bool  internal 
) const

Implements GA_GroupTable.

Definition at line 100 of file GA_EdgeGroupTable.h.

The documentation for this class was generated from the following file: