HDK
 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

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

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_GroupTable::iterator
< GA_EdgeGroup
beginTraverse () const
 
GA_GroupTable::iterator
< 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
 
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 ( )
override

Member Function Documentation

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

Traverse the group table in creation order.

Warning
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 
)
inlinestatic

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
inline

Traverse the group table in creation order.

Warning
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 
)
overrideprotectedvirtual

Method to create an edge group

See Also
GA_GroupTable::jsonLoad()

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
inline

Traverse the group table in alpabetic order.

Definition at line 61 of file GA_EdgeGroupTable.h.

ordered_iterator GA_EdgeGroupTable::oend ( ) const
inline

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
inlineoverrideprotectedvirtual

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
inlineoverrideprotectedvirtual

Implements GA_GroupTable.

Definition at line 100 of file GA_EdgeGroupTable.h.


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