CFx SDK Documentation
2023 SP0
|
#include <GsNode.h>
Classes | |
struct | UpdateManagerContext |
Public Member Functions | |
bool | invalidVp () const |
void | setToDrawable (const OdGiDrawable *pUnderlyingDrawable) |
ODRX_DECLARE_MEMBERS (OdGsNode) | |
void * | operator new (size_t) |
void | operator delete (void *) |
void | addRef () |
void | release () |
OdGsNode (OdGsBaseModel *pModel, const OdGiDrawable *pUnderlyingDrawable) | |
virtual | ~OdGsNode () |
OdGsBaseModel * | baseModel () const |
OdGsModel * | model () const |
bool | isContainer () const |
virtual ENodeType | nodeType () const =0 |
bool | isSyncDrawable () const |
virtual void | invalidate (OdGsContainerNode *pParent, OdGsViewImpl *pView, OdUInt32 mask)=0 |
OdGiDrawablePtr | underlyingDrawable () const |
OdDbStub * | underlyingDrawableId () const |
virtual void | update (OdGsUpdateContext &ctx, OdGsContainerNode *pParent, OdSiSpatialIndex *pParentIndex)=0 |
virtual void | updateVisible (OdGsViewImpl *pViewImpl) |
virtual void | display (OdGsDisplayContext &ctx)=0 |
virtual void | propagateLayerChanges (OdGsViewImpl &view)=0 |
virtual void | highlight (bool bDoIt, bool bWholeBranch) |
bool | isHighlighted () const |
bool | isHighlightedAll () const |
virtual void | destroy ()=0 |
void | hide (bool bDoIt) |
bool | isHidden () const |
void | setSelectableIfHidden (bool bSelectable) |
bool | isSelectableIfHidden () const |
virtual bool | saveNodeState (OdGsFiler *pFiler, OdGsBaseVectorizer *pVectorizer=NULL) const |
virtual bool | loadNodeState (OdGsFiler *pFiler, OdGsBaseVectorizer *pVectorizer=NULL) |
virtual bool | saveClientNodeState (OdGsFiler *pFiler, OdGsBaseVectorizer *pVectorizer) const |
virtual bool | loadClientNodeState (OdGsFiler *pFiler, OdGsBaseVectorizer *pVectorizer) |
virtual bool | postprocessNodeLoading (OdGsFiler *pFiler) |
TD_USING (OdGsCache::extents) | |
virtual bool | extents (const OdGsView *pView, OdGeExtents3d &ext) const |
virtual OdDb::LineWeight | getMaxLineweightUsed () const |
virtual void | setDrawableNull () |
virtual void | addContentToUpdateManager (OdUInt32 viewportId, OdGsUpdateManager *pManager, const UpdateManagerContext &context) |
Public Member Functions inherited from OdGsCache | |
ODRX_DECLARE_MEMBERS (OdGsCache) | |
virtual bool | extents (OdGeExtents3d &extents) const =0 |
Public Member Functions inherited from OdRxObject | |
ODRX_HEAP_OPERATORS () | |
OdRxObject () | |
virtual | ~OdRxObject () |
virtual OdRxObject * | queryX (const OdRxClass *pClass) const |
virtual OdRxObject * | x (const OdRxClass *pClass) const |
virtual OdRxClass * | isA () const |
virtual long | numRefs () const |
bool | isKindOf (const OdRxClass *pClass) const |
virtual OdRxObjectPtr | clone () const |
virtual void | copyFrom (const OdRxObject *pSource) |
virtual OdRx::Ordering | comparedTo (const OdRxObject *pOther) const |
virtual bool | isEqualTo (const OdRxObject *pOther) const |
Protected Types | |
enum | { kPersistent = 0x00000001 , kContainer = 0x00000002 , kHLT = 0x00000004 , kHLT_All = 0x00000008 , kSyncDrawable = 0x00000010 , kHidden = 0x00000020 , kSelectHidden = 0x00000040 , kLastFlag = kSelectHidden } |
enum | { kInvalidateVp = 0x80000000 } |
Protected Member Functions | |
void | setInvalidVp (bool val) |
void | clearDrawable () |
OdGsNode (const OdGsNode &c) | |
Protected Attributes | |
OdGsNode * | m_pPrev |
OdGsNode * | m_pNext |
OdGsBaseModel * | m_pModel |
void * | m_underlyingDrawable |
OdUInt32 | m_flags |
Static Protected Attributes | |
static GS_STATIC_EXPORT AllocatorArray | s_aAlloc |
Friends | |
class | OdGsBaseModel |
class | OdGsViewImpl |
GS_TOOLKIT_EXPORT OdGiDrawablePtr | fxUnderlyingDrawable (const OdGsNode *) |
Additional Inherited Members | |
Static Public Member Functions inherited from OdRxObject | |
static OdRxObjectPtr | cast (const OdRxObject *pointer) |
static OdRxClass * | desc () |
This class is the base class for custom GsNode objects which implement custom caching support for Teigha vectorization applications.
This cached information can be fed into the Teigha vectorization framework during a redraw instead of making the usual calls to subWorldDraw() and subViewportDraw(), thereby greatly improving the speed of redraws.
Corresponding C++ library: TD_Gs <group OdGs_Classes>
|
protected |
OdGsNode::OdGsNode | ( | OdGsBaseModel * | pModel, |
const OdGiDrawable * | pUnderlyingDrawable | ||
) |
pModel | [in] Pointer to the BaseModel object. |
pUnderlyingDrawable | [in] Pointer to the underlying Drawable object. |
|
protected |
|
virtual |
|
inlinevirtual |
Adds content of node to the update manager
viewportId | [in] Id of viewport |
pManager | [in] Pointer to the Update Manager instance |
context | [in] UpdateManagerContext that specify what values should be initialized |
Reimplemented in OdGsEntityNode, and OdGsContainerNode.
|
virtual |
Implements OdRxObject.
|
inline |
|
protected |
Removes the associations between the underlying Drawable object and this GsNode object.
|
pure virtual |
Implemented in OdGsMaterialNode, OdGsLayerNode, OdGsEntityNode, OdGsContainerNode, OdGsMInsertBlockNode, OdGsBlockReferenceNode, and OdGsBlockNode.
|
pure virtual |
Paints the specified view with the cached data associated with this Node object.
view | [in] View to be painted. |
Implemented in OdGsMaterialNode, OdGsLayerNode, OdGsEntityNode, OdGsContainerNode, and OdGsBlockNode.
|
virtual |
Reimplemented in OdGsEntityNode, and OdGsContainerNode.
|
virtual |
Reimplemented in OdGsEntityNode.
|
inlinevirtual |
Reimplemented in OdGsEntityNode, and OdGsMInsertBlockNode.
|
pure virtual |
Invalidates the cached data within this object.
pParent | [in] Pointer to the ContainerNode object for this Node object. |
pView | [in] Pointer to the VectorizeView object for which data are to be invalidated. |
mask | [in] Mask. |
Implemented in OdGsBlockNode, OdGsMaterialNode, OdGsLightNode, OdGsLayerNode, OdGsEntityNode, OdGsContainerNode, OdGsMInsertBlockNode, and OdGsBlockReferenceNode.
|
inline |
|
virtual |
Reimplemented in OdGsLightNode, OdGsMInsertBlockNode, and OdGsBlockReferenceNode.
|
virtual |
Reimplemented in OdGsMaterialNode, OdGsLayerNode, OdGsEntityNode, OdGsContainerNode, and OdGsBlockNode.
|
virtual |
Returns pointer to the Model object associated with this Cache object.
Implements OdGsCache.
|
pure virtual |
Implemented in OdGsMaterialNode, OdGsLayerNode, OdGsEntityNode, OdGsContainerNode, and OdGsBlockNode.
OdGsNode::ODRX_DECLARE_MEMBERS | ( | OdGsNode | ) |
void* OdGsNode::operator new | ( | size_t | ) |
|
virtual |
Reimplemented in OdGsContainerNode, OdGsMInsertBlockNode, OdGsBlockReferenceNode, and OdGsBlockNode.
|
pure virtual |
Invalidates parts of cache depended on layers modified since last regeneration.
Implemented in OdGsMaterialNode, OdGsLayerNode, OdGsEntityNode, OdGsContainerNode, OdGsBlockReferenceNode, and OdGsBlockNode.
|
virtual |
Implements OdRxObject.
|
virtual |
Reimplemented in OdGsLightNode, OdGsMInsertBlockNode, and OdGsBlockReferenceNode.
|
virtual |
Reimplemented in OdGsMaterialNode, OdGsLayerNode, OdGsEntityNode, OdGsContainerNode, and OdGsBlockNode.
|
virtual |
Reset pointer to the underlying GiDrawable object associated with this Cache object.
Implements OdGsCache.
|
inline |
void OdGsNode::setToDrawable | ( | const OdGiDrawable * | pUnderlyingDrawable | ) |
OdGsNode::TD_USING | ( | OdGsCache::extents | ) |
|
inline |
|
inline |
|
pure virtual |
Updates the cached data within this Node object for the specified VectorizeView and ContainerNode objects.
pParent | [in] Pointer to the ContainerNode object for this Node object. |
view | [in] VectorizeView object for which data are to be updated. |
Implemented in OdGsMaterialNode, OdGsLayerNode, OdGsEntityNode, OdGsContainerNode, OdGsBlockReferenceNode, OdGsLightNode, and OdGsBlockNode.
|
inlinevirtual |
Updates the cached data if Node object is visible in specified view
pViewImpl | [in] pointer to the View Implementation |
Reimplemented in OdGsEntityNode, and OdGsContainerNode.
|
friend |
|
friend |
|
friend |
|
protected |
|
staticprotected |