24 #ifndef __OD_GS_MATERIAL_NODE__
25 #define __OD_GS_MATERIAL_NODE__
83 typedef std::map<const void *, DataEntry>
CacheMap;
#define GS_TOOLKIT_EXPORT
void setCachedData(OdGsBaseVectorizer &view, OdRxObject *newCachedData)
OdGiMaterialTraitsData m_materialTraits
void invalidate(OdGsContainerNode *pParent, OdGsViewImpl *pView, OdUInt32 mask)
OdGiMaterialTraitsData & materialTraits()
bool saveNodeState(OdGsFiler *pFiler, OdGsBaseVectorizer *pVectorizer=NULL) const
OdGsMaterialNode * m_pMatNext
OdGsMaterialNode(OdGsBaseModel *pModel, const OdGiDrawable *pUnderlyingDrawable, bool bSetGsNode=true)
OdGsMaterialNode * prevNode() const
virtual void onModified(OdGsBaseVectorizer &view)
void update(OdGsUpdateContext &ctx, OdGsContainerNode *pParent, OdSiSpatialIndex *pParentIndex)
bool extents(OdGeExtents3d &) const
OdGsMaterialNode * nextNode() const
bool loadNodeState(OdGsFiler *pFiler, OdGsBaseVectorizer *pVectorizer=NULL)
bool isDataModified() const
void setCachedDataUpdated(OdGsBaseVectorizer &view)
virtual void update(OdGsBaseVectorizer &view)
OdMutexPtr & cacheMutex()
const OdRxObject * cachedData(OdGsBaseVectorizer &view) const
void display(OdGsDisplayContext &ctx)
const OdGiMaterialTraitsData & materialTraits() const
OdGsMaterialNode * setPrevNode(OdGsMaterialNode *newNode)
OdGsMaterialNode * m_pMatPrev
OdGsMaterialNode * setNextNode(OdGsMaterialNode *newNode)
virtual ENodeType nodeType() const
ODRX_DECLARE_MEMBERS(OdGsMaterialNode)
bool isCachedDataModified(OdGsBaseVectorizer &view) const
virtual void propagateLayerChanges(OdGsViewImpl &view)
std::map< const void *, DataEntry > CacheMap
bool m_cachedDataModified
OdRxObjectPtr m_pCachedData