CFx SDK Documentation  2023 SP0
Classes | Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
OdGsBlockNode Class Reference

#include <GsBlockNode.h>

Inheritance diagram for OdGsBlockNode:
OdGsNode OdGsCache OdRxObject

Classes

class  ImpMap
 

Public Types

enum  { kInvalidateRefExtentsMask = (kVpLastPropBit << 1) }
 

Public Member Functions

 ODRX_DECLARE_MEMBERS (OdGsBlockNode)
 
 OdGsBlockNode (OdGsBaseModel *pModel, const OdGiDrawable *pUnderlyingDrawable, bool bSetGsNode)
 
 ~OdGsBlockNode ()
 
void setUnloaded (bool isUnloaded)
 
bool isUnloaded () const
 
void setModelTfDependent (bool bOn)
 
bool isModelTfDependent () const
 
virtual ENodeType nodeType () const
 
void invalidate (OdGsContainerNode *pParent, OdGsViewImpl *view, OdUInt32 mask)
 
void addRef (OdGsBlockReferenceNode *pEntity)
 
void release (OdGsBlockReferenceNode *pEntity)
 
void update (OdGsUpdateContext &, OdGsContainerNode *, OdSiSpatialIndex *)
 
void display (OdGsDisplayContext &)
 
bool extents (OdGeExtents3d &) const
 
virtual void propagateLayerChanges (OdGsViewImpl &)
 
void destroy ()
 
void invalidateShared ()
 
OdGsSharedRefDefinition * createDef (const OdGsBlockRefNodeDesc &d)
 
OdGsSharedRefDefinition * findCreateDef (const OdGsBlockRefNodeDesc &d)
 
void invalidateSharedSubents (OdUInt32 vpID, OdUInt32 nViewChanges)
 
void invalidateSharedRegenDraw (OdUInt32 vpID, const OdDbStub *layoutId)
 
void invalidateSharedSectionable ()
 
void invalidateSharedAwareFlags (OdGsViewImpl *pView, OdUInt32 nViewChanges, const OdDbStub *layoutId)
 
void removeDef (OdGsSharedRefDefinition *pDef)
 
bool findDef (OdGsSharedRefDefinition *pDef, OdGsBlockRefNodeDesc &d)
 
bool saveNodeState (OdGsFiler *pFiler, OdGsBaseVectorizer *pVectorizer=NULL) const
 
bool loadNodeState (OdGsFiler *pFiler, OdGsBaseVectorizer *pVectorizer=NULL)
 
bool postprocessNodeLoading (OdGsFiler *pFiler)
 
- Public Member Functions inherited from OdGsNode
bool invalidVp () const
 
void setToDrawable (const OdGiDrawable *pUnderlyingDrawable)
 
 ODRX_DECLARE_MEMBERS (OdGsNode)
 
voidoperator new (size_t)
 
void operator delete (void *)
 
void addRef ()
 
void release ()
 
 OdGsNode (OdGsBaseModel *pModel, const OdGiDrawable *pUnderlyingDrawable)
 
virtual ~OdGsNode ()
 
OdGsBaseModelbaseModel () const
 
OdGsModelmodel () const
 
bool isContainer () const
 
bool isSyncDrawable () const
 
OdGiDrawablePtr underlyingDrawable () const
 
OdDbStub * underlyingDrawableId () const
 
virtual void updateVisible (OdGsViewImpl *pViewImpl)
 
virtual void highlight (bool bDoIt, bool bWholeBranch)
 
bool isHighlighted () const
 
bool isHighlightedAll () const
 
void hide (bool bDoIt)
 
bool isHidden () const
 
void setSelectableIfHidden (bool bSelectable)
 
bool isSelectableIfHidden () const
 
virtual bool saveClientNodeState (OdGsFiler *pFiler, OdGsBaseVectorizer *pVectorizer) const
 
virtual bool loadClientNodeState (OdGsFiler *pFiler, OdGsBaseVectorizer *pVectorizer)
 
 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)
 
- Public Member Functions inherited from OdRxObject
 ODRX_HEAP_OPERATORS ()
 
 OdRxObject ()
 
virtual ~OdRxObject ()
 
virtual OdRxObjectqueryX (const OdRxClass *pClass) const
 
virtual OdRxObjectx (const OdRxClass *pClass) const
 
virtual OdRxClassisA () 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  { kUnloaded = OdGsNode::kLastFlag << 1 , kLastFlag = kUnloaded }
 
typedef std::set< OdGsBlockReferenceNode * > Inserts
 
typedef Inserts::iterator InsertIterator
 
- Protected Types inherited from OdGsNode
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 clearInserts ()
 
- Protected Member Functions inherited from OdGsNode
void setInvalidVp (bool val)
 
void clearDrawable ()
 
 OdGsNode (const OdGsNode &c)
 

Protected Attributes

Inserts m_inserts
 
ImpMap m_sharedImp
 
OdMutexPtr m_sharedMt
 
OdMutexPtr m_insertsMt
 
volatile int m_bModelTfDependent
 
- Protected Attributes inherited from OdGsNode
OdGsNodem_pPrev
 
OdGsNodem_pNext
 
OdGsBaseModelm_pModel
 
voidm_underlyingDrawable
 
OdUInt32 m_flags
 

Additional Inherited Members

- Static Public Member Functions inherited from OdRxObject
static OdRxObjectPtr cast (const OdRxObject *pointer)
 
static OdRxClassdesc ()
 
- Static Protected Attributes inherited from OdGsNode
static GS_STATIC_EXPORT AllocatorArray s_aAlloc
 

Detailed Description

Corresponding C++ library: Gs <group OdGs_Classes>

Definition at line 123 of file GsBlockNode.h.

Member Typedef Documentation

◆ InsertIterator

typedef Inserts::iterator OdGsBlockNode::InsertIterator
protected

Definition at line 324 of file GsBlockNode.h.

◆ Inserts

typedef std::set<OdGsBlockReferenceNode*> OdGsBlockNode::Inserts
protected

Definition at line 323 of file GsBlockNode.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protected
Enumerator
kUnloaded 
kLastFlag 

Definition at line 126 of file GsBlockNode.h.

◆ anonymous enum

anonymous enum
Enumerator
kInvalidateRefExtentsMask 

Definition at line 132 of file GsBlockNode.h.

Constructor & Destructor Documentation

◆ OdGsBlockNode()

OdGsBlockNode::OdGsBlockNode ( OdGsBaseModel pModel,
const OdGiDrawable pUnderlyingDrawable,
bool  bSetGsNode 
)
inline

Definition at line 141 of file GsBlockNode.h.

◆ ~OdGsBlockNode()

OdGsBlockNode::~OdGsBlockNode ( )
inline

Definition at line 147 of file GsBlockNode.h.

Member Function Documentation

◆ addRef()

void OdGsBlockNode::addRef ( OdGsBlockReferenceNode pEntity)
inline

Definition at line 167 of file GsBlockNode.h.

◆ clearInserts()

void OdGsBlockNode::clearInserts ( )
protected

◆ createDef()

OdGsSharedRefDefinition* OdGsBlockNode::createDef ( const OdGsBlockRefNodeDesc d)

◆ destroy()

void OdGsBlockNode::destroy ( )
virtual

Implements OdGsNode.

◆ display()

void OdGsBlockNode::display ( OdGsDisplayContext &  )
inlinevirtual

Paints the specified view with the cached data associated with this Node object.

Parameters
view[in] View to be painted.

Implements OdGsNode.

Definition at line 206 of file GsBlockNode.h.

◆ extents()

bool OdGsBlockNode::extents ( OdGeExtents3d ) const
inlinevirtual

Returns the extents of the underlying GiDrawable object(s) associated with this Node object.

Parameters
extents[out] Receives the extents.
Returns
Returns true if and only if the GiDrawable object(s) have extents.

Implements OdGsCache.

Definition at line 219 of file GsBlockNode.h.

◆ findCreateDef()

OdGsSharedRefDefinition* OdGsBlockNode::findCreateDef ( const OdGsBlockRefNodeDesc d)
inline

Definition at line 242 of file GsBlockNode.h.

◆ findDef()

bool OdGsBlockNode::findDef ( OdGsSharedRefDefinition *  pDef,
OdGsBlockRefNodeDesc d 
)
inline

Definition at line 272 of file GsBlockNode.h.

◆ invalidate()

void OdGsBlockNode::invalidate ( OdGsContainerNode pParent,
OdGsViewImpl pView,
OdUInt32  mask 
)
virtual

Invalidates the cached data within this object.

Parameters
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.
Remarks
The cached data will be regenerated the next time this Node object is accessed.

Implements OdGsNode.

◆ invalidateShared()

void OdGsBlockNode::invalidateShared ( )
inline

Definition at line 236 of file GsBlockNode.h.

◆ invalidateSharedAwareFlags()

void OdGsBlockNode::invalidateSharedAwareFlags ( OdGsViewImpl pView,
OdUInt32  nViewChanges,
const OdDbStub *  layoutId 
)

◆ invalidateSharedRegenDraw()

void OdGsBlockNode::invalidateSharedRegenDraw ( OdUInt32  vpID,
const OdDbStub *  layoutId 
)

◆ invalidateSharedSectionable()

void OdGsBlockNode::invalidateSharedSectionable ( )

◆ invalidateSharedSubents()

void OdGsBlockNode::invalidateSharedSubents ( OdUInt32  vpID,
OdUInt32  nViewChanges 
)

◆ isModelTfDependent()

bool OdGsBlockNode::isModelTfDependent ( ) const
inline

Definition at line 367 of file GsBlockNode.h.

◆ isUnloaded()

bool OdGsBlockNode::isUnloaded ( ) const
inline

Definition at line 337 of file GsBlockNode.h.

◆ loadNodeState()

bool OdGsBlockNode::loadNodeState ( OdGsFiler pFiler,
OdGsBaseVectorizer pVectorizer = NULL 
)
virtual

Reimplemented from OdGsNode.

◆ nodeType()

virtual ENodeType OdGsBlockNode::nodeType ( ) const
inlinevirtual

Implements OdGsNode.

Definition at line 163 of file GsBlockNode.h.

◆ ODRX_DECLARE_MEMBERS()

OdGsBlockNode::ODRX_DECLARE_MEMBERS ( OdGsBlockNode  )

◆ postprocessNodeLoading()

bool OdGsBlockNode::postprocessNodeLoading ( OdGsFiler pFiler)
virtual

Reimplemented from OdGsNode.

◆ propagateLayerChanges()

virtual void OdGsBlockNode::propagateLayerChanges ( OdGsViewImpl )
virtual

Invalidates parts of cache depended on layers modified since last regeneration.

Remarks
For internal use only. Returns this if and only if the this node is one of modified layers.

Implements OdGsNode.

◆ release()

void OdGsBlockNode::release ( OdGsBlockReferenceNode pEntity)
inline

Definition at line 180 of file GsBlockNode.h.

◆ removeDef()

void OdGsBlockNode::removeDef ( OdGsSharedRefDefinition *  pDef)
inline

Definition at line 260 of file GsBlockNode.h.

◆ saveNodeState()

bool OdGsBlockNode::saveNodeState ( OdGsFiler pFiler,
OdGsBaseVectorizer pVectorizer = NULL 
) const
virtual

Reimplemented from OdGsNode.

◆ setModelTfDependent()

void OdGsBlockNode::setModelTfDependent ( bool  bOn)
inline

Definition at line 342 of file GsBlockNode.h.

◆ setUnloaded()

void OdGsBlockNode::setUnloaded ( bool  isUnloaded)
inline

Definition at line 332 of file GsBlockNode.h.

◆ update()

void OdGsBlockNode::update ( OdGsUpdateContext &  ,
OdGsContainerNode ,
OdSiSpatialIndex  
)
inlinevirtual

Updates the cached data within this Node object for the specified VectorizeView and ContainerNode objects.

Parameters
pParent[in] Pointer to the ContainerNode object for this Node object.
view[in] VectorizeView object for which data are to be updated.

Implements OdGsNode.

Definition at line 197 of file GsBlockNode.h.

Member Data Documentation

◆ m_bModelTfDependent

volatile int OdGsBlockNode::m_bModelTfDependent
protected

Definition at line 329 of file GsBlockNode.h.

◆ m_inserts

Inserts OdGsBlockNode::m_inserts
protected

Definition at line 325 of file GsBlockNode.h.

◆ m_insertsMt

OdMutexPtr OdGsBlockNode::m_insertsMt
protected

Definition at line 328 of file GsBlockNode.h.

◆ m_sharedImp

ImpMap OdGsBlockNode::m_sharedImp
protected

Definition at line 326 of file GsBlockNode.h.

◆ m_sharedMt

OdMutexPtr OdGsBlockNode::m_sharedMt
protected

Definition at line 327 of file GsBlockNode.h.


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