GB_Detail Class Reference

#include <GB_Detail.h>

Inheritance diagram for GB_Detail:

GD_Detail GEO_Detail GEO_Profiles GU_Detail GOP_Guide

List of all members.

Public Member Functions

 GB_Detail (GB_ElementList *ptlist, GB_ElementList *primlist)
virtual ~GB_Detail ()
virtual void clearAndDestroy ()
virtual int save (const char *, int binary, const UT_Options *options) const =0
virtual int save (ostream &os, int binary, const UT_Options *options) const =0
virtual int load (const char *, const UT_Options *options)=0
virtual bool load (UT_IStream &is, const UT_Options *options)=0
virtual int saveVertex (ostream &os, const GB_Vertex &vtx, int b) const
virtual bool loadVertex (UT_IStream &is, GB_Vertex &vtx)
GB_ElementinsertPointElem (GB_Element &pt, const GB_Element *prev=0)
int isPointUsed (const GB_Element &p) const
int countPointUsed (const GB_Element &p, int maxcount=-1) const
void deletePoint (GB_Element &p, unsigned deleteFast=0)
void deletePoint (unsigned int num, unsigned deleteFast=0)
int deletePoint (const GB_PointGroup &ptGrp, unsigned deleteFast=0, bool remove_degenerate=false)
GB_PrimitiveinsertPrimElem (GB_Primitive *prim, const GB_Primitive *beforeWhich=0, int cleargroups=1)
GB_PrimitiveappendPrimElem (GB_Primitive *prim, int cleargroups=1)
virtual void deletePrimitive (GB_Primitive &p, int andpoints=0)
virtual void deletePrimitive (unsigned int num, int andpoints=0)
virtual void deletePrimitives (const GB_PrimitiveGroup &primGrp, int andpoints=0)
virtual void deletePrimitives (const UT_PtrArray< GEO_Primitive * > &prims_in, int andpoints=0)
int removeUnusedPointGroups ()
int removeUnusedPrimGroups ()
void removeUnusedGroups ()
int removeUnusedPoints (const GB_PointGroup *ptgrp=0)
int removeDegeneratePrimitives (const GB_PrimitiveGroup *prims=0, int andpoints=0)
void removeUnused (const GB_PrimitiveGroup *prims=0, const GB_PointGroup *ptgrp=0)
virtual GB_BreakpointallocBreakpoint () const
int getBBox (UT_BoundingBox *bbox, const GB_PrimitiveGroup *g=0, const GB_PrimGroupClosure *c=0, bool closure_is_hidden=true) const
int getBBox (UT_BoundingBox &bbox, const UT_Matrix4 &transform, const GB_PrimitiveGroup *g=0, const GB_PrimGroupClosure *c=0, bool closure_is_hidden=true) const
int getBSphere (UT_BoundingSphere *bsphere, const GB_PrimitiveGroup *g=0, int updateRequired=0, const GB_PrimGroupClosure *c=0, bool closure_is_hidden=true) const
virtual int getPointBBox (UT_BoundingBox *bbox, const GB_PointGroup *g=0) const =0
virtual int getPointBBox (UT_BoundingBox &bbox, const UT_Matrix4 &transform, const GB_PointGroup *g=0) const =0
virtual int getPointBSphere (UT_BoundingSphere *bsphere, const GB_PointGroup *g=0, int updateRequired=0) const =0
GB_PointGroupnewPointGroup (const char *name, int internal=0)
void destroyPointGroup (GB_PointGroup *grp)
void destroyPointGroup (const char *name)
GB_PointGroupfindPointGroup (const char *name) const
GB_PrimitiveGroupnewPrimitiveGroup (const char *name, int internal=0)
void destroyPrimitiveGroup (GB_PrimitiveGroup *grp)
void destroyPrimitiveGroup (const char *name)
GB_PrimitiveGroupfindPrimitiveGroup (const char *name) const
void destroyGroup (GB_BaseGroup *grp)
GB_PointGroupgetHomogeneousGroup (void)
GB_PointGroupcopyGroup (const GB_PointGroup &grp, const char *name)
GB_PrimitiveGroupcopyGroup (const GB_PrimitiveGroup &grp, const char *name)
void mergeGroups (const GB_Detail &src, int override=1)
GB_PointGroupmergeGroup (const GB_Detail &src, const GB_PointGroup &group, int override=1)
GB_PrimitiveGroupmergeGroup (const GB_Detail &src, const GB_PrimitiveGroup &group, int override=1)
GB_GroupListpointGroups ()
GB_GroupListprimitiveGroups ()
const GB_GroupListpointGroups () const
const GB_GroupListprimitiveGroups () const
GB_ElementListbasePoints ()
GB_ElementListbasePrims ()
const GB_ElementListbasePoints () const
const GB_ElementListbasePrims () const
int getVersion (void) const
int getUniqueId () const
void renumberPoints (int start=0)
void renumberPrimitives (int start=0)
void registerAttributeHandle (GB_AttributeHandleBase *gah) const
void unregisterAttributeHandle (GB_AttributeHandleBase *gah) const
UT_NotifierImpl< GB_Element * > & edgeGroupNotifier () const

Protected Member Functions

GB_PrimitivereplacePrimElem (GB_Primitive *prim, GB_Primitive *axeme, int cleargroups)
int getLatestVersion (void) const
void setVersion (int v)
GB_ElementattachPoint (GB_Element &crt, const GB_Element *prv=0)
int savePrimitives (int n, ostream &os, int binary) const
bool loadPrimitives (int n, UT_IStream &is)
int saveGroups (ostream &os, int binary, bool savepointgroups, bool saveprimgroups) const
bool loadGroups (UT_IStream &is, int nptgrps, int nprimgrps)
void clearAllGroups (GB_Primitive &prim)
int checkMagic (UT_IStream &is) const
int asciiMagic (void) const
int binaryMagic (void) const
virtual GB_PrimitiveappendNewPrimitive (unsigned type)=0
virtual unsigned getPrimitiveType (const char *name) const =0
virtual const char * getPrimitiveName (unsigned type) const =0
int useRecycledData () const
void useRecycledData (int yesno)
void getTransformedBBoxBBox (const UT_BoundingBox &bbox, const UT_Matrix4 &transform, UT_BoundingBox &bbox_out) const

Protected Attributes

GB_ElementListptList
GB_ElementListprimList


Detailed Description

Definition at line 54 of file GB_Detail.h.


Constructor & Destructor Documentation

GB_Detail::GB_Detail ( GB_ElementList ptlist,
GB_ElementList primlist 
)

virtual GB_Detail::~GB_Detail (  )  [virtual]


Member Function Documentation

virtual GB_Breakpoint* GB_Detail::allocBreakpoint (  )  const [virtual]

Reimplemented in GEO_Detail.

virtual GB_Primitive* GB_Detail::appendNewPrimitive ( unsigned  type  )  [protected, pure virtual]

Implemented in GD_Detail, and GEO_Detail.

GB_Primitive* GB_Detail::appendPrimElem ( GB_Primitive prim,
int  cleargroups = 1 
) [inline]

Definition at line 115 of file GB_Detail.h.

int GB_Detail::asciiMagic ( void   )  const [inline, protected]

Definition at line 347 of file GB_Detail.h.

GB_Element* GB_Detail::attachPoint ( GB_Element crt,
const GB_Element prv = 0 
) [protected]

const GB_ElementList& GB_Detail::basePoints (  )  const [inline]

Definition at line 280 of file GB_Detail.h.

GB_ElementList& GB_Detail::basePoints (  )  [inline]

Definition at line 277 of file GB_Detail.h.

const GB_ElementList& GB_Detail::basePrims (  )  const [inline]

Definition at line 281 of file GB_Detail.h.

GB_ElementList& GB_Detail::basePrims (  )  [inline]

Definition at line 278 of file GB_Detail.h.

int GB_Detail::binaryMagic ( void   )  const [inline, protected]

Definition at line 351 of file GB_Detail.h.

int GB_Detail::checkMagic ( UT_IStream is  )  const [protected]

void GB_Detail::clearAllGroups ( GB_Primitive prim  )  [protected]

virtual void GB_Detail::clearAndDestroy (  )  [virtual]

Reimplemented in GD_Detail, GEO_Detail, and GU_Detail.

GB_PrimitiveGroup* GB_Detail::copyGroup ( const GB_PrimitiveGroup grp,
const char *  name 
)

GB_PointGroup* GB_Detail::copyGroup ( const GB_PointGroup grp,
const char *  name 
)

int GB_Detail::countPointUsed ( const GB_Element p,
int  maxcount = -1 
) const

int GB_Detail::deletePoint ( const GB_PointGroup ptGrp,
unsigned  deleteFast = 0,
bool  remove_degenerate = false 
)

void GB_Detail::deletePoint ( unsigned int  num,
unsigned  deleteFast = 0 
)

void GB_Detail::deletePoint ( GB_Element p,
unsigned  deleteFast = 0 
) [inline]

Definition at line 94 of file GB_Detail.h.

virtual void GB_Detail::deletePrimitive ( unsigned int  num,
int  andpoints = 0 
) [virtual]

Reimplemented in GD_Detail, and GEO_Detail.

virtual void GB_Detail::deletePrimitive ( GB_Primitive p,
int  andpoints = 0 
) [inline, virtual]

Reimplemented in GD_Detail, and GEO_Detail.

Definition at line 120 of file GB_Detail.h.

virtual void GB_Detail::deletePrimitives ( const UT_PtrArray< GEO_Primitive * > &  prims_in,
int  andpoints = 0 
) [virtual]

virtual void GB_Detail::deletePrimitives ( const GB_PrimitiveGroup primGrp,
int  andpoints = 0 
) [virtual]

Reimplemented in GEO_Detail.

void GB_Detail::destroyGroup ( GB_BaseGroup grp  ) 

void GB_Detail::destroyPointGroup ( const char *  name  )  [inline]

Definition at line 201 of file GB_Detail.h.

void GB_Detail::destroyPointGroup ( GB_PointGroup grp  )  [inline]

Definition at line 196 of file GB_Detail.h.

void GB_Detail::destroyPrimitiveGroup ( const char *  name  )  [inline]

Definition at line 226 of file GB_Detail.h.

void GB_Detail::destroyPrimitiveGroup ( GB_PrimitiveGroup grp  )  [inline]

Definition at line 222 of file GB_Detail.h.

UT_NotifierImpl<GB_Element *>& GB_Detail::edgeGroupNotifier (  )  const [inline]

Definition at line 304 of file GB_Detail.h.

GB_PointGroup* GB_Detail::findPointGroup ( const char *  name  )  const [inline]

Definition at line 211 of file GB_Detail.h.

GB_PrimitiveGroup* GB_Detail::findPrimitiveGroup ( const char *  name  )  const [inline]

Definition at line 230 of file GB_Detail.h.

int GB_Detail::getBBox ( UT_BoundingBox bbox,
const UT_Matrix4 transform,
const GB_PrimitiveGroup g = 0,
const GB_PrimGroupClosure c = 0,
bool  closure_is_hidden = true 
) const

Find the bounding box (optionally of a group of primitives) of transformed instantiation. Return 0 if the box is empty and 1 otherwise.

int GB_Detail::getBBox ( UT_BoundingBox bbox,
const GB_PrimitiveGroup g = 0,
const GB_PrimGroupClosure c = 0,
bool  closure_is_hidden = true 
) const

int GB_Detail::getBSphere ( UT_BoundingSphere bsphere,
const GB_PrimitiveGroup g = 0,
int  updateRequired = 0,
const GB_PrimGroupClosure c = 0,
bool  closure_is_hidden = true 
) const

GB_PointGroup* GB_Detail::getHomogeneousGroup ( void   )  [inline]

Definition at line 239 of file GB_Detail.h.

int GB_Detail::getLatestVersion ( void   )  const [protected]

virtual int GB_Detail::getPointBBox ( UT_BoundingBox bbox,
const UT_Matrix4 transform,
const GB_PointGroup g = 0 
) const [pure virtual]

Implemented in GD_Detail, and GEO_Detail.

virtual int GB_Detail::getPointBBox ( UT_BoundingBox bbox,
const GB_PointGroup g = 0 
) const [pure virtual]

Implemented in GD_Detail, and GEO_Detail.

virtual int GB_Detail::getPointBSphere ( UT_BoundingSphere bsphere,
const GB_PointGroup g = 0,
int  updateRequired = 0 
) const [pure virtual]

Implemented in GD_Detail, and GEO_Detail.

virtual const char* GB_Detail::getPrimitiveName ( unsigned  type  )  const [protected, pure virtual]

Implemented in GD_Detail, and GEO_Detail.

virtual unsigned GB_Detail::getPrimitiveType ( const char *  name  )  const [protected, pure virtual]

Implemented in GD_Detail, and GEO_Detail.

void GB_Detail::getTransformedBBoxBBox ( const UT_BoundingBox bbox,
const UT_Matrix4 transform,
UT_BoundingBox bbox_out 
) const [protected]

Transforms the given bbox by a given matrix, and computes a new bounding box around all the points of the transformed input bbox. Puts the result into bbox_out.

int GB_Detail::getUniqueId (  )  const [inline]

Definition at line 285 of file GB_Detail.h.

int GB_Detail::getVersion ( void   )  const [inline]

Definition at line 284 of file GB_Detail.h.

GB_Element* GB_Detail::insertPointElem ( GB_Element pt,
const GB_Element prev = 0 
)

GB_Primitive* GB_Detail::insertPrimElem ( GB_Primitive prim,
const GB_Primitive beforeWhich = 0,
int  cleargroups = 1 
)

int GB_Detail::isPointUsed ( const GB_Element p  )  const

virtual bool GB_Detail::load ( UT_IStream is,
const UT_Options options 
) [pure virtual]

Implemented in GD_Detail, GEO_Detail, and GU_Detail.

virtual int GB_Detail::load ( const char *  ,
const UT_Options options 
) [pure virtual]

Implemented in GD_Detail, GEO_Detail, and GU_Detail.

bool GB_Detail::loadGroups ( UT_IStream is,
int  nptgrps,
int  nprimgrps 
) [protected]

bool GB_Detail::loadPrimitives ( int  n,
UT_IStream is 
) [protected]

virtual bool GB_Detail::loadVertex ( UT_IStream is,
GB_Vertex vtx 
) [virtual]

Reimplemented in GEO_Detail.

GB_PrimitiveGroup* GB_Detail::mergeGroup ( const GB_Detail src,
const GB_PrimitiveGroup group,
int  override = 1 
)

GB_PointGroup* GB_Detail::mergeGroup ( const GB_Detail src,
const GB_PointGroup group,
int  override = 1 
)

void GB_Detail::mergeGroups ( const GB_Detail src,
int  override = 1 
)

GB_PointGroup* GB_Detail::newPointGroup ( const char *  name,
int  internal = 0 
) [inline]

Examples:
POP/POP_RadialBirth.C, and SOP/SOP_HDKObject.C.

Definition at line 191 of file GB_Detail.h.

GB_PrimitiveGroup* GB_Detail::newPrimitiveGroup ( const char *  name,
int  internal = 0 
) [inline]

Examples:
SIM/SNOW_Solver.C, and SOP/SOP_HDKObject.C.

Definition at line 217 of file GB_Detail.h.

const GB_GroupList& GB_Detail::pointGroups (  )  const [inline]

Definition at line 274 of file GB_Detail.h.

GB_GroupList& GB_Detail::pointGroups (  )  [inline]

Examples:
SOP/SOP_GroupRename.C.

Definition at line 271 of file GB_Detail.h.

const GB_GroupList& GB_Detail::primitiveGroups (  )  const [inline]

Definition at line 275 of file GB_Detail.h.

GB_GroupList& GB_Detail::primitiveGroups (  )  [inline]

Examples:
SOP/SOP_GroupRename.C.

Definition at line 272 of file GB_Detail.h.

void GB_Detail::registerAttributeHandle ( GB_AttributeHandleBase gah  )  const

Registers a GB_AttributeHandleBase with a detail. Should only be called by GB_AttributeHandleBase constructors and operator=.

int GB_Detail::removeDegeneratePrimitives ( const GB_PrimitiveGroup prims = 0,
int  andpoints = 0 
)

void GB_Detail::removeUnused ( const GB_PrimitiveGroup prims = 0,
const GB_PointGroup ptgrp = 0 
) [inline]

Definition at line 150 of file GB_Detail.h.

void GB_Detail::removeUnusedGroups (  )  [inline]

Definition at line 142 of file GB_Detail.h.

int GB_Detail::removeUnusedPointGroups (  ) 

int GB_Detail::removeUnusedPoints ( const GB_PointGroup ptgrp = 0  ) 

int GB_Detail::removeUnusedPrimGroups (  ) 

void GB_Detail::renumberPoints ( int  start = 0  ) 

void GB_Detail::renumberPrimitives ( int  start = 0  ) 

GB_Primitive* GB_Detail::replacePrimElem ( GB_Primitive prim,
GB_Primitive axeme,
int  cleargroups 
) [protected]

virtual int GB_Detail::save ( ostream &  os,
int  binary,
const UT_Options options 
) const [pure virtual]

Implemented in GD_Detail, GEO_Detail, and GU_Detail.

virtual int GB_Detail::save ( const char *  ,
int  binary,
const UT_Options options 
) const [pure virtual]

Implemented in GD_Detail, GEO_Detail, and GU_Detail.

int GB_Detail::saveGroups ( ostream &  os,
int  binary,
bool  savepointgroups,
bool  saveprimgroups 
) const [protected]

int GB_Detail::savePrimitives ( int  n,
ostream &  os,
int  binary 
) const [protected]

virtual int GB_Detail::saveVertex ( ostream &  os,
const GB_Vertex vtx,
int  b 
) const [virtual]

Reimplemented in GEO_Detail.

void GB_Detail::setVersion ( int  v  )  [inline, protected]

Definition at line 320 of file GB_Detail.h.

void GB_Detail::unregisterAttributeHandle ( GB_AttributeHandleBase gah  )  const

Releases the GB_AttributeHandleBase from the detail's list. Should only be called by GB_AttributeHandleBase destructor.

void GB_Detail::useRecycledData ( int  yesno  )  [inline, protected]

Definition at line 372 of file GB_Detail.h.

int GB_Detail::useRecycledData (  )  const [inline, protected]

Definition at line 370 of file GB_Detail.h.


Member Data Documentation

Definition at line 308 of file GB_Detail.h.

Definition at line 307 of file GB_Detail.h.


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

Generated on Mon Jan 28 00:48:14 2013 for HDK by  doxygen 1.5.9