CFx SDK Documentation 2024 SP0
Loading...
Searching...
No Matches
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 (const 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
 
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, OdUInt32 nSelStyle=0)
 
bool isHighlighted () const
 
bool isHighlightedAll () const
 
virtual void destroy ()=0
 
virtual void hide (bool bDoIt, bool bSelectable=false, bool bWholeBranch=true)
 
bool isHidden () const
 
bool isSelectableIfHidden () const
 
bool isHiddenAll () const
 
OdUInt32 selectionStyle () const
 
bool hasSelectionStyle () const
 
OdUInt32 userFlags () const
 
void setUserFlags (OdUInt32 val)
 
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
 
bool modelExtents (OdGeExtents3d &ext, bool bUseModelTf=true) const
 
bool modelExtents (const OdGsView *pView, OdGeExtents3d &ext, bool bUseModelTf=true) const
 
virtual OdDb::LineWeight getMaxLineweightUsed () const
 
virtual void setDrawableNull ()
 
virtual void addContentToUpdateManager (OdUInt32 viewportId, OdGsUpdateManager *pManager, const UpdateManagerContext &context)
 
virtual bool isMetafilesCompatible (const OdGsViewImpl *pView1, const OdGsViewImpl *pView2, OdGsUpdateContext *ctx)
 
- Public Member Functions inherited from OdGsCache
 ODRX_DECLARE_MEMBERS (OdGsCache)
 
virtual OdGsModelmodel () const =0
 
virtual void setDrawableNull ()=0
 
virtual bool extents (OdGeExtents3d &extents) const =0
 
- 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 void addRef ()=0
 
virtual void release ()=0
 
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 , kHiddenAll = 0x00000080 ,
  kSelStyle = 0x00000100 , kLastFlag = kSelStyle
}
 
enum  { kInvalidateVp = 0x80000000 }
 

Protected Member Functions

void clearInserts ()
 
- Protected Member Functions inherited from OdGsNode
void setInvalidVp (bool val)
 
void clearDrawable ()
 
void setSelectionStyleImpl (OdUInt32 nStyle)
 
OdUInt32 getSelectionStyleImpl () const
 
 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
 
OdUInt32 m_userFlags
 

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 44 of file GsBlockNode.h.

Member Typedef Documentation

◆ InsertIterator

typedef Inserts::iterator OdGsBlockNode::InsertIterator
protected

Definition at line 231 of file GsBlockNode.h.

◆ Inserts

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

Definition at line 230 of file GsBlockNode.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protected
Enumerator
kUnloaded 
kLastFlag 

Definition at line 47 of file GsBlockNode.h.

◆ anonymous enum

anonymous enum
Enumerator
kInvalidateRefExtentsMask 

Definition at line 53 of file GsBlockNode.h.

Constructor & Destructor Documentation

◆ OdGsBlockNode()

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

Definition at line 62 of file GsBlockNode.h.

◆ ~OdGsBlockNode()

OdGsBlockNode::~OdGsBlockNode ( )
inline

Definition at line 68 of file GsBlockNode.h.

Member Function Documentation

◆ addRef()

void OdGsBlockNode::addRef ( OdGsBlockReferenceNode pEntity)
inline

Definition at line 88 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 127 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 140 of file GsBlockNode.h.

◆ findCreateDef()

OdGsSharedRefDefinition * OdGsBlockNode::findCreateDef ( const OdGsBlockRefNodeDesc d)

◆ findDef()

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

Definition at line 183 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 157 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 274 of file GsBlockNode.h.

◆ isUnloaded()

bool OdGsBlockNode::isUnloaded ( ) const
inline

Definition at line 244 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 84 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 101 of file GsBlockNode.h.

◆ removeDef()

void OdGsBlockNode::removeDef ( OdGsSharedRefDefinition *  pDef)
inline

Definition at line 171 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 249 of file GsBlockNode.h.

◆ setUnloaded()

void OdGsBlockNode::setUnloaded ( bool  isUnloaded)
inline

Definition at line 239 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 118 of file GsBlockNode.h.

Member Data Documentation

◆ m_bModelTfDependent

volatile int OdGsBlockNode::m_bModelTfDependent
protected

Definition at line 236 of file GsBlockNode.h.

◆ m_inserts

Inserts OdGsBlockNode::m_inserts
protected

Definition at line 232 of file GsBlockNode.h.

◆ m_insertsMt

OdMutexPtr OdGsBlockNode::m_insertsMt
protected

Definition at line 235 of file GsBlockNode.h.

◆ m_sharedImp

ImpMap OdGsBlockNode::m_sharedImp
protected

Definition at line 233 of file GsBlockNode.h.

◆ m_sharedMt

OdMutexPtr OdGsBlockNode::m_sharedMt
protected

Definition at line 234 of file GsBlockNode.h.


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