|
CFx SDK Documentation
2020SP3
|
#include <GsEntityNode.h>
Classes | |
| class | Metafile |
| class | MetafileEx |
| class | MetafileHolder |
| class | MetafilePtrArray |
Public Types | |
| enum | MetafileCompatibilityLevel { kSkipCheckCompatible = 0, kCheckViewChanges = 1, kCheckCompatibleView = 2, kFindCompatible = 3 } |
| typedef OdSmartPtr< Metafile > | MetafilePtr |
Static Public Member Functions | |
| static void * | Alloc (size_t nBytes) |
| static void | Free (void *pMemBlock) |
| static void * | Realloc (void *pMemBlock, size_t newSize, size_t) |
| static OdGsEntityNode::MetafilePtr | getEmptyMetafile (OdUInt32 flags, OdGsLayerNode *pLayerNode=NULL) |
| static unsigned | markToSkipMask (OdUInt32 threadIndex) |
Static Public Member Functions inherited from OdRxObject | |
| static OdRxObjectPtr | cast (const OdRxObject *pointer) |
| static OdRxClass * | desc () |
Protected Types | |
| enum | { kHasExtents = OdGsNode::kLastFlag << 1, kSpatiallyIndexed = OdGsNode::kLastFlag << 2, kInWorkset = OdGsNode::kLastFlag << 3, kSingleThreaded = OdGsNode::kLastFlag << 4, kOwned = OdGsNode::kLastFlag << 5, kDrawableRegenDraw = OdGsNode::kLastFlag << 6, kEntityUnerased = OdGsNode::kLastFlag << 7, kInvisible = OdGsNode::kLastFlag << 8, kExtentsOutOfMS = OdGsNode::kLastFlag << 9, kNonSelectable = OdGsNode::kLastFlag << 10, kSkipSelection = OdGsNode::kLastFlag << 11, kErased = OdGsNode::kLastFlag << 12, kDrawableIsXref = OdGsNode::kLastFlag << 13, kMultilistNextPtr = OdGsNode::kLastFlag << 14, kLastFlag = kMultilistNextPtr } |
| enum | { kLineweightBit1 = (1 << 0), kLineweightBit2 = (1 << 1), kLineweightOffset = 0, kLineweightBit3 = (1 << 2), kLineweightBit4 = (1 << 3), kLineweightBit5 = (1 << 4), kLineweightBit6 = (1 << 5), kLineweightBit7 = (1 << 6), kLineweightBit8 = (1 << 7), kLineweightBitMask = kLineweightBit1 | kLineweightBit2 | kLineweightBit3 | kLineweightBit4 | kLineweightBit5 | kLineweightBit6 | kLineweightBit7 | kLineweightBit8, kLightSourceOwner = (1 << 8), kRegenOnHighlight = (1 << 9), kMarkedByUpdateManager = (1 << 10), kLastEntFlag = kMarkedByUpdateManager } |
| enum | { kMarkedToSkipFirst = 0x00000001, kMarkedToSkipLast = kMarkedToSkipFirst << 30, kMarkedToSkipAll = 0x7FFFFFFF } |
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 | |
| virtual void | propagateLayerChanges (OdGsViewImpl &view) |
| MetafilePtrArray & | metafileArray () |
| const MetafilePtrArray & | metafileArray () const |
| OdGsEntityNode::MetafilePtr | metafile () const |
| void | setExtentsFromMetafiles () |
| bool | findMetafileInStock (OdGsUpdateContext &ctx) |
| void | insertToSpatialIndex (OdUInt32 nVpId, OdSiSpatialIndex &parentIndex, const OdGeExtents3d &prevExtents) |
| void | setExtentsFlags () |
| OdGsDCRect | extentsToPixels (const OdGeExtents3d &ext, OdGsViewImpl *pViewImpl) |
Protected Member Functions inherited from OdGsNode | |
| void | setInvalidVp (bool val) |
| void | clearDrawable () |
| OdGsNode (const OdGsNode &c) | |
Protected Attributes | |
| OdGeExtents3d | m_extents |
| OdGsHlBranchPtr | m_hlBranch |
| MetafileHolder | m_metafile |
| OdUInt32 | m_entFlags |
Protected Attributes inherited from OdGsNode | |
| OdGsNode * | m_pPrev |
| OdGsNode * | m_pNext |
| OdGsBaseModel * | m_pModel |
| void * | m_underlyingDrawable |
| OdUInt32 | m_flags |
Friends | |
| class | Metafile |
| class | OdGsModuleObject |
| class | OdGsBlockReferenceNode |
Additional Inherited Members | |
Static Protected Attributes inherited from OdGsNode | |
| static GS_STATIC_EXPORT AllocatorArray | s_aAlloc |
This class implements OdGsNode descendant objects that can serve as containers for other OdGsNode objects.
Corresponding C++ library: TD_Gs <group OdGs_Classes>
Definition at line 102 of file GsEntityNode.h.
This template class is a specialization of the OdSmartPtr class for Metafile object pointers.
Definition at line 150 of file GsEntityNode.h.
|
protected |
Definition at line 463 of file GsEntityNode.h.
|
protected |
Definition at line 482 of file GsEntityNode.h.
|
protected |
| Enumerator | |
|---|---|
| kMarkedToSkipFirst | |
| kMarkedToSkipLast | |
| kMarkedToSkipAll | |
Definition at line 499 of file GsEntityNode.h.
This enumeration used with OdGsEntityNode::metafile method.
| Enumerator | |
|---|---|
| kSkipCheckCompatible | |
| kCheckViewChanges | |
| kCheckCompatibleView | |
| kFindCompatible | |
Definition at line 438 of file GsEntityNode.h.
| OdGsEntityNode::OdGsEntityNode | ( | OdGsBaseModel * | pModel, |
| const OdGiDrawable * | pUnderlyingDrawable, | ||
| bool | bSetGsNode = false |
||
| ) |
| pModel | [in] Pointer to the BaseModel object. |
| pUnderlyingDrawable | [in] Pointer to the underlying Drawable object. |
| OdGsEntityNode::~OdGsEntityNode | ( | ) |
|
virtual |
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 from OdGsNode.
|
inline |
Definition at line 1097 of file GsEntityNode.h.
|
inlinestatic |
Definition at line 188 of file GsEntityNode.h.
Returns the Aware flags for the specified Viewport for this ContainerNode object.
| viewportId | [in] Viewport ID. |
Value kSuppressViewportDraw 0x01 kDrawInvisibleEnts 0x02 kDrawLayerOff 0x04 kDrawLayerFrozen 0x08 kIgnoreFillPlane 0x10 kFillPlaneSet 0x20
Reimplemented in OdGsBlockReferenceNode.
| void OdGsEntityNode::convertToViewportDependent | ( | const OdGsUpdateContext & | ctx | ) |
Convert a RegenType dependent cache to Viewport dependent cache.
| ctx | [in] Current update context. |
|
inlinevirtual |
Implements OdGsNode.
Definition at line 688 of file GsEntityNode.h.
|
virtual |
Paints the specified view with the cached data associated with this Node object.
| view | [in] View to be painted. |
Implements OdGsNode.
Enable multiple entity links.
Definition at line 782 of file GsEntityNode.h.
|
inline |
Definition at line 961 of file GsEntityNode.h.
|
inline |
Definition at line 833 of file GsEntityNode.h.
|
virtual |
Reimplemented from OdGsNode.
|
virtual |
Returns the extents of this Entity object.
| extents | [out] Receives the extents. |
Implements OdSiEntity.
|
protected |
| OdRxObject* OdGsEntityNode::findCompatibleCache | ( | const OdGsViewImpl & | keyView, |
| OdGsUpdateContext * | ctx, | ||
| OdUInt32 | awareMask = 0 |
||
| ) |
|
protected |
Definition at line 189 of file GsEntityNode.h.
|
static |
|
inlinevirtual |
Reimplemented from OdGsNode.
Definition at line 1092 of file GsEntityNode.h.
|
inline |
Returns true if and only if the underlying GiDrawable object(s) have extents.
Definition at line 828 of file GsEntityNode.h.
|
virtual |
Returns true if the node has no graphical content.
|
inlinevirtual |
Reimplemented from OdGsNode.
Reimplemented in OdGsMInsertBlockNode.
Definition at line 1079 of file GsEntityNode.h.
|
inline |
Definition at line 710 of file GsEntityNode.h.
|
inline |
Definition at line 711 of file GsEntityNode.h.
|
protected |
|
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. |
Implements OdGsNode.
Reimplemented in OdGsLightNode.
|
virtual |
Returns true if the node has no graphical content.
Reimplemented in OdGsBlockReferenceNode.
|
inline |
Definition at line 1024 of file GsEntityNode.h.
|
inline |
Definition at line 971 of file GsEntityNode.h.
|
inline |
Definition at line 1049 of file GsEntityNode.h.
|
inlinevirtual |
Reimplemented in OdGsLightNode.
Definition at line 579 of file GsEntityNode.h.
|
inline |
Definition at line 1039 of file GsEntityNode.h.
|
inline |
Definition at line 1004 of file GsEntityNode.h.
|
inline |
Definition at line 994 of file GsEntityNode.h.
|
inlinevirtual |
Reimplemented in OdGsBlockReferenceNode.
Definition at line 578 of file GsEntityNode.h.
|
inline |
Definition at line 1069 of file GsEntityNode.h.
|
inline |
Definition at line 1044 of file GsEntityNode.h.
|
inline |
Definition at line 1059 of file GsEntityNode.h.
|
virtual |
Reimplemented in OdGsMInsertBlockNode, and OdGsBlockReferenceNode.
|
virtual |
Reimplemented from OdGsNode.
|
virtual |
Reimplemented in OdGsMInsertBlockNode, and OdGsBlockReferenceNode.
|
inline |
Definition at line 989 of file GsEntityNode.h.
|
inline |
Definition at line 984 of file GsEntityNode.h.
|
inline |
Returns true if and only if this EntityNode object is marked by Update Manager.
Definition at line 1112 of file GsEntityNode.h.
|
inline |
Returns true if and only if this EntityNode object is marked to be skipped with the given mask (thread).
Definition at line 838 of file GsEntityNode.h.
|
inline |
Definition at line 1009 of file GsEntityNode.h.
|
inline |
Definition at line 999 of file GsEntityNode.h.
|
inline |
Controls the MarkToSkip status of this EntityNode object.
| markToSkip | [in] Controls MarkToSkip. |
| mask | [in] the mask(thread). |
Definition at line 849 of file GsEntityNode.h.
|
inline |
Definition at line 866 of file GsEntityNode.h.
|
inlinestatic |
Definition at line 682 of file GsEntityNode.h.
|
inlineprotected |
Returns the array the objects in the metafile array of this EntityNode object.
Definition at line 944 of file GsEntityNode.h.
| OdGsEntityNode::Metafile* OdGsEntityNode::metafile | ( | const OdGsViewImpl & | view, |
| OdGsUpdateContext * | ctx, | ||
| MetafileCompatibilityLevel | findCompatibleLevel = kFindCompatible |
||
| ) |
Returns metafile pointer compatible with requrested view configuration.
| view | [in] View object for which metafile is to be returned. |
| ctx | [in] Current update context. |
| bFindCompatible | [in] Check for viewport changes if and only if true. |
|
inlineprotected |
Returns a reference to the metafile array of this EntityNode object as an array of MetafilePtr.
Definition at line 934 of file GsEntityNode.h.
|
inlineprotected |
Returns a reference to the metafile array of this EntityNode object as an array of MetafilePtr.
Definition at line 939 of file GsEntityNode.h.
|
inline |
Returns the specified MetafilePtr from the metafile array of this EntityNode object.
| metafileIndex | [in] Metafile index. |
Definition at line 949 of file GsEntityNode.h.
|
inline |
Returns the next entity for this EntityNode object.
| nVpId | [in] Viewport ID. |
Definition at line 789 of file GsEntityNode.h.
|
inline |
Returns the next entity for this EntityNode object.
| nVpId | [in] Viewport ID. |
Definition at line 805 of file GsEntityNode.h.
|
inline |
Definition at line 796 of file GsEntityNode.h.
|
inline |
Definition at line 812 of file GsEntityNode.h.
|
inlinevirtual |
Implements OdGsNode.
Definition at line 576 of file GsEntityNode.h.
|
inline |
Returns number of next entities.
Definition at line 821 of file GsEntityNode.h.
| OdGsEntityNode::ODRX_DECLARE_MEMBERS | ( | OdGsEntityNode | ) |
|
inline |
Returns true if and only if this EntityNode object is the child of a ContainerNode object.
Definition at line 903 of file GsEntityNode.h.
|
inline |
Returns true if and only if this EntityNode object is the child of a ContainerNode object.
| nVpId | [in] Viewport ID. |
Definition at line 910 of file GsEntityNode.h.
|
virtual |
Reimplemented in OdGsMInsertBlockNode, and OdGsBlockReferenceNode.
|
protectedvirtual |
Invalidates parts of cache depended on layers modified since last regeneration.
Implements OdGsNode.
Reimplemented in OdGsBlockReferenceNode.
|
virtual |
Reimplemented in OdGsMInsertBlockNode, and OdGsBlockReferenceNode.
Definition at line 190 of file GsEntityNode.h.
|
virtual |
|
virtual |
Reimplemented in OdGsMInsertBlockNode, and OdGsBlockReferenceNode.
|
inline |
Definition at line 976 of file GsEntityNode.h.
|
virtual |
Reimplemented from OdGsNode.
| void OdGsEntityNode::select | ( | OdGsBaseVectorizer & | view | ) |
|
inline |
Definition at line 1034 of file GsEntityNode.h.
|
inline |
Definition at line 966 of file GsEntityNode.h.
|
inlineprotected |
Definition at line 1086 of file GsEntityNode.h.
|
protected |
|
inline |
Definition at line 1029 of file GsEntityNode.h.
|
inline |
Definition at line 709 of file GsEntityNode.h.
|
inline |
Definition at line 1054 of file GsEntityNode.h.
|
inline |
Controls the marking by Update Manager status of this EntityNode object.
| marked | [in] Controls marked status. |
Definition at line 1117 of file GsEntityNode.h.
|
inline |
Definition at line 1107 of file GsEntityNode.h.
|
inline |
Sets the metafile array for this EntityNode object from the specified array of objects.
| metafiles | [in] Array of metafile objects. |
Definition at line 956 of file GsEntityNode.h.
| void OdGsEntityNode::setMetafile | ( | OdGsUpdateContext & | ctx, |
| OdGsEntityNode::Metafile * | metafiles | ||
| ) |
Sets metafile for current view configuration.
| ctx | [in] Current update context. |
| metafiles | [in] Pointer onto new metafile object. |
| void OdGsEntityNode::setMetafileAt | ( | int | metafileIndex, |
| OdGsEntityNode::Metafile * | pMetafile | ||
| ) |
|
inline |
Sets the next entity for this EntityNode object to the specified EntityNode object.
| pNextEntity | [in] Pointer to the next EntityNode. |
Definition at line 767 of file GsEntityNode.h.
|
inline |
Sets the next entity for this EntityNode object to the specified EntityNode object.
| pNextEntity | [in] Pointer to the next EntityNode. |
| nVpId | [in] Viewport ID. |
Definition at line 774 of file GsEntityNode.h.
|
inline |
Controls the owned status of this EntityNode object.
| owned | [in] Controls owned status. |
Definition at line 919 of file GsEntityNode.h.
Controls the owned status of this EntityNode object.
| nVpId | [in] Viewport ID. |
| owned | [in] Controls owned status. |
Definition at line 926 of file GsEntityNode.h.
|
inline |
Definition at line 1074 of file GsEntityNode.h.
|
inline |
Definition at line 1064 of file GsEntityNode.h.
|
inline |
Controls the spatial indexing of this EntityNode object.
| spatiallyIndexed | [in] Controls spatially indexed. |
Definition at line 888 of file GsEntityNode.h.
Controls the spatial indexing of this EntityNode object.
| nVpId | [in] Viewport ID. |
| spatiallyIndexed | [in] Controls spatially indexed. |
Definition at line 895 of file GsEntityNode.h.
|
inline |
Returns true if and only if this EntityNode object is spatially indexed.
| nVpId | [in] Viewport ID. |
Definition at line 872 of file GsEntityNode.h.
|
inline |
Returns true if and only if this EntityNode object is spatially indexed.
| nVpId | [in] Viewport ID. |
Definition at line 879 of file GsEntityNode.h.
|
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. |
Implements OdGsNode.
Reimplemented in OdGsLightNode.
|
virtual |
Updates the cached data if Node object is visible in specified view
| pViewImpl | [in] pointer to the View Implementation |
Reimplemented from OdGsNode.
|
friend |
Definition at line 145 of file GsEntityNode.h.
|
friend |
Definition at line 186 of file GsEntityNode.h.
|
friend |
Definition at line 185 of file GsEntityNode.h.
|
protected |
Definition at line 753 of file GsEntityNode.h.
|
mutableprotected |
Definition at line 118 of file GsEntityNode.h.
|
protected |
Definition at line 386 of file GsEntityNode.h.
|
mutableprotected |
Definition at line 395 of file GsEntityNode.h.