CFx SDK Documentation  2020SP3
DbEvalGraph.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2017, Open Design Alliance (the "Alliance").
3 // All rights reserved.
4 //
5 // This software and its documentation and related materials are owned by
6 // the Alliance. The software may only be incorporated into application
7 // programs owned by members of the Alliance, subject to a signed
8 // Membership Agreement and Supplemental Software License Agreement with the
9 // Alliance. The structure and organization of this software are the valuable
10 // trade secrets of the Alliance and its suppliers. The software is also
11 // protected by copyright law and international treaty provisions. Application
12 // programs incorporating this software must include the following statement
13 // with their copyright notices:
14 //
15 // This application incorporates Teigha(R) software pursuant to a license
16 // agreement with Open Design Alliance.
17 // Teigha(R) Copyright (C) 2002-2017 by Open Design Alliance.
18 // All rights reserved.
19 //
20 // By use of this software, its documentation or related materials, you
21 // acknowledge and accept the above terms.
23 
24 #ifndef _DbEvalGraph_h_Included_
25 #define _DbEvalGraph_h_Included_
26 
27 #include "SmartPtr.h"
28 #include "DbObject.h"
29 
30 #include "TD_PackPush.h"
31 
32 // Forward class declarations
33 
34 class OdDbEvalGraph;
35 class OdDbEvalEdgeInfo;
36 class OdDbEvalExpr;
38 class OdDbEvalContext;
41 class OdResBuf;
42 class OdDbImpEvalContext;
43 class OdDbImpEvalContextIterator;
44 
49 
54 
59 
60 typedef unsigned long OdDbEvalNodeId;
61 
78 
79 #include "OdPlatformSettings.h"
80 #include "StringArray.h"
81 
82 #ifdef DYNBLOCKS_DLL_EXPORTS
83 #ifndef SWIG
84 #define DYNBLOCKS_EXPORT OD_TOOLKIT_EXPORT
85 #else
86 #define DYNBLOCKS_EXPORT
87 #endif
88 #define DYNBLOCKS_EXPORT_STATIC OD_STATIC_EXPORT
89 #else
90 #ifndef SWIG
91 #define DYNBLOCKS_EXPORT OD_TOOLKIT_IMPORT
92 #else
93 #define DYNBLOCKS_EXPORT
94 #endif
95 #define DYNBLOCKS_EXPORT_STATIC OD_STATIC_IMPORT
96 #endif
97 
122 {
123 public:
124 
125  enum NodeId {
126  kNullNodeId = 0
127  };
128 
130 
132  virtual ~OdDbEvalGraph();
133 
134  /* Management */
135 
141  static bool hasGraph(const OdDbObject* pObj,
142  const OdString& key);
143 
151  const OdString& pKey,
152  const OdDb::OpenMode openMode = OdDb::kForRead );
153 
154 
164  static bool createGraph(OdDbObject* pObj,
165  const OdString& key);
166 
167 
175  static bool removeGraph(OdDbObject* pObj,
176  const OdString& pKey);
177 
183  static bool hasGraph(OdDbDatabase* pDb,
184  const OdString& key);
185 
194  const OdString& key,
195  const OdDb::OpenMode openMode = OdDb::kForRead );
196 
206  static bool createGraph(OdDbDatabase* pDb,
207  const OdString& key);
208 
216  static bool removeGraph(OdDbDatabase* pDb,
217  const OdString& key);
218 
230 
238  virtual bool removeNode (const OdDbEvalNodeId& nodeId);
239 
247  virtual bool removeNode (OdDbEvalExpr* pNode);
248 
253  virtual void getAllNodes (OdDbEvalNodeIdArray& allNodes) const;
254 
260  virtual OdDbEvalExprPtr getNode( const OdDbEvalNodeId& nodeId, OdDb::OpenMode openMode = OdDb::kForRead ) const;
261 
262 
275  virtual bool addEdge(const OdDbEvalNodeId& idFrom,
276  const OdDbEvalNodeId& idTo);
277 
289  virtual bool addEdge(const OdDbEvalNodeId& idFrom,
290  const OdDbEvalNodeId& idTo,
291  bool invertible);
292 
293 
306  virtual bool removeEdge(const OdDbEvalNodeId& idFrom,
307  const OdDbEvalNodeId& idTo);
308 
315  virtual void getIncomingEdges(const OdDbEvalNodeId& nodeId,
316  OdDbEvalEdgeInfoArray& edges) const;
317 
324  virtual void getOutgoingEdges(const OdDbEvalNodeId& nodeId,
325  OdDbEvalEdgeInfoArray& edges) const;
326 
327 
336  virtual bool getEdgeInfo(const OdDbEvalNodeId& idFrom,
337  const OdDbEvalNodeId& idTo, OdDbEvalEdgeInfo& edgeInfo) const;
338 
339 
344  virtual void addGraph(OdDbEvalGraph* pGraphToAdd);
345 
346  /* Evaluation */
347 
364  virtual bool evaluate() const;
365 
371  virtual bool evaluate(
372  const OdDbEvalContext* pContext) const;
373 
380  virtual bool evaluate(
381  const OdDbEvalContext* pContext,
382  const OdDbEvalNodeIdArray* pActivateNodes) const;
383 
384 
396  virtual bool activate(
397  const OdDbEvalNodeIdArray& activatedNodes) const;
398 
399 
406  virtual bool activate(
407  const OdDbEvalNodeIdArray& activatedNodes,
408  OdDbEvalNodeIdArray* pActiveSubgraph) const;
409 
415  virtual bool activate(
416  const OdDbEvalNodeIdArray& activatedNodes,
417  OdDbEvalNodeIdArray* pActiveSubgraph,
418  OdDbEvalNodeIdArray* pCycleNodes) const;
419 
420 
430  virtual bool getIsActive(const OdDbEvalNodeId& nodeId,
431  bool& isActive) const;
432 
443  virtual bool equals(const OdDbEvalGraph* pOther) const;
444 
445 
451  virtual bool isSubgraphOf(const OdDbEvalGraph* pOther) const;
452 
454  virtual void dwgOutFields(OdDbDwgFiler* pFiler) const ODRX_OVERRIDE;
456  virtual void dxfOutFields(OdDbDxfFiler* pFiler) const ODRX_OVERRIDE;
457  virtual void applyPartialUndo(OdDbDwgFiler* pFiler, OdRxClass* pClassObj) ODRX_OVERRIDE;
458  virtual void copyFrom(const OdRxObject* p) ODRX_OVERRIDE;
460  virtual void subHandOverTo(
461  OdDbObject* pNewObject) ODRX_OVERRIDE;
462 };
463 
464 
480 {
481 public:
483  : mFlags(0), mRefCount(0)
484  {
485  mIdFrom = OdDbEvalGraph::kNullNodeId;
487  }
488 
495  OdDbEvalNodeId toId,
496  long flags,
497  unsigned long count)
498  : mIdFrom(fromId), mIdTo(toId), mFlags(flags), mRefCount(count)
499  {}
500 
505 
509  OdDbEvalNodeId to () const;
513  unsigned long refCount() const;
514 
521  bool isInvertible () const;
528  bool isSuppressed () const;
529 
530  bool operator == (const OdDbEvalEdgeInfo& other) const;
531 
532 private:
533  OdDbEvalNodeId mIdFrom;
534  OdDbEvalNodeId mIdTo;
535  long mFlags;
536  unsigned long mRefCount;
537 };
538 
539 
559 {
560 public:
562 
564  virtual ~OdDbEvalExpr();
565 
575 
585 
596  virtual void addedToGraph (OdDbEvalGraph* pGraph);
597 
608  virtual void removedFromGraph (OdDbEvalGraph* pGraph);
609 
610 
622  virtual void adjacentNodeRemoved (const OdDbEvalNodeId& adjNodeId);
623 
624 
635  virtual void adjacentEdgeRemoved (const OdDbEvalNodeId& adjEdgeNodeId);
636 
637 
651  virtual void adjacentEdgeAdded (const OdDbEvalNodeId& fromId,
652  const OdDbEvalNodeId& toId,
653  bool isInvertible);
654 
655 
667  virtual void movedFromGraph (OdDbEvalGraph* pFromGraph);
668 
680  virtual void movedIntoGraph (OdDbEvalGraph* pIntoGraph);
681 
682 
683 
695  virtual void copiedIntoGraph(OdDbEvalGraph* pIntoGraph);
696 
703  virtual bool isActivatable () const;
704 
717  virtual void activated (OdDbEvalNodeIdArray& argumentActiveList);
718 
729  virtual void graphEvalStart (bool nodeIsActive);
730 
731 
742  virtual void graphEvalEnd(bool nodeIsActive);
743 
754  virtual void graphEvalAbort(bool nodeIsActive);
755 
767  virtual bool evaluate(const OdDbEvalContext* evalContext);
768 
777  virtual bool equals(const OdDbEvalExpr* pOther) const;
778 
785 
787  void dwgOutFields(OdDbDwgFiler* pFiler) const;
789  void dxfOutFields(OdDbDxfFiler* pFiler) const;
791 
792 protected:
793 
795  friend class OdDbEvalExprImpl;
796 };
797 
798 
814 {
815 public:
817 
819 
824  virtual void getConnectionNames (OdStringArray& connectionNames) const;
825 
830  virtual bool hasConnectionNamed (const OdString& connectionName) const;
831 
832 
840  virtual bool getConnectionType (
841  const OdString& connectionName,
842  OdResBuf::ValueType& connectionType) const;
843 
844 
851  virtual OdResBufPtr getConnectionValue( const OdString& connectionName) const;
852 
853 
861  virtual bool setConnectionValue ( const OdString& connectionName, const OdResBuf* pValue);
862 
863 
876  virtual bool connectTo (
877  const OdString& thisConnectionName,
878  OdDbEvalNodeId sourceConnectableId,
879  const OdString& sourceConnectionName);
880 
881 
894  virtual bool disconnectFrom (
895  const OdString& thisConnectionName,
896  OdDbEvalNodeId sourceConnectableId,
897  const OdString& sourceConnectionName);
898 
910  virtual bool connectionAllowed (
911  const OdString& thisConnectionName,
912  OdDbEvalNodeId sourceConnectableId,
913  const OdString& sourceConnectionName) const;
914 
915 
925  virtual bool getConnectedObjects (
926  const OdString& thisConnectionName,
927  OdDbEvalNodeIdArray& connectedObjects) const;
928 
939  virtual bool getConnectedNames (
940  const OdString& thisConnectionName,
941  OdDbEvalNodeId sourceConnectableId,
942  OdStringArray& sourceConnectionNames) const;
943 protected:
944 
946 };
947 
952 
972 {
973 public:
974 
976 
977 
978  virtual ~OdDbEvalContext();
979 
981 
982 
989  virtual void insertAt (const OdDbEvalContextPair& pair);
990 
991 
996  virtual void removeAt (const OdString& key);
997 
998 
1010  virtual bool getAt (OdDbEvalContextPair& pair) const;
1011 
1012 
1017 
1018 private:
1019  OdDbImpEvalContext* m_pImp;
1020  friend class OdDbImpEvalContextIterator;
1021 };
1022 
1042 {
1043 public:
1044 
1046 
1050  OdDbEvalContextPair(const OdString& key, void *value);
1051 
1053 
1058  void setKey (const OdString& key);
1059 
1064  const OdString key () const;
1065 
1073  void setValue (void* value);
1074 
1079  void* value () const;
1080 
1081 private:
1082  OdString mKey;
1083  void* mValue;
1084 };
1085 
1086 
1105 {
1106 public:
1108 
1110 
1112 
1119  virtual void start();
1120 
1124  virtual bool next();
1125 
1129  virtual bool done() const;
1130 
1135 
1136 private:
1137  OdDbImpEvalContextIterator* m_pImp;
1138  friend class OdDbImpEvalContext;
1139 };
1140 
1141 #include "TD_PackPop.h"
1142 
1143 #endif
OdDbEvalExpr::adjacentEdgeRemoved
virtual void adjacentEdgeRemoved(const OdDbEvalNodeId &adjEdgeNodeId)
OdResult
OdResult
Definition: OdResult.h:29
OdDbEvalContextPair::~OdDbEvalContextPair
virtual ~OdDbEvalContextPair()
OdDbEvalGraph::dwgInFields
virtual OdResult dwgInFields(OdDbDwgFiler *pFiler) ODRX_OVERRIDE
OdDbEvalConnectable::getConnectionValue
virtual OdResBufPtr getConnectionValue(const OdString &connectionName) const
OdString
Definition: OdString.h:95
OdDbEvalContext::ODRX_DECLARE_MEMBERS
ODRX_DECLARE_MEMBERS(OdDbEvalContext)
OdDbEvalExpr::graphEvalEnd
virtual void graphEvalEnd(bool nodeIsActive)
OdDbDatabase
Definition: DbDatabase.h:421
OdDbEvalGraph::removeGraph
static bool removeGraph(OdDbObject *pObj, const OdString &pKey)
OdDbEvalExprPtrArray
OdArray< OdDbEvalExprPtr > OdDbEvalExprPtrArray
Definition: DbEvalGraph.h:73
OdDbEvalGraph::postInDatabase
virtual OdResult postInDatabase(OdDbDatabase *)
OdDbEvalGraph::hasGraph
static bool hasGraph(OdDbDatabase *pDb, const OdString &key)
OdDbEvalExprPtr
OdSmartPtr< OdDbEvalExpr > OdDbEvalExprPtr
Definition: DbEvalGraph.h:58
OdDbEvalContextIterator::contextPair
virtual OdDbEvalContextPair contextPair() const
OdDbEvalGraph::getEdgeInfo
virtual bool getEdgeInfo(const OdDbEvalNodeId &idFrom, const OdDbEvalNodeId &idTo, OdDbEvalEdgeInfo &edgeInfo) const
OdDbEvalExpr::addedToGraph
virtual void addedToGraph(OdDbEvalGraph *pGraph)
OdDbEvalExpr::dxfOutFields
void dxfOutFields(OdDbDxfFiler *pFiler) const
OdDbEvalExpr::isActivatable
virtual bool isActivatable() const
OdDbEvalExpr::postInDatabase
virtual OdResult postInDatabase(OdDbDatabase *)
OdDbEvalContextPair::key
const OdString key() const
OdDbEvalExpr::graphEvalAbort
virtual void graphEvalAbort(bool nodeIsActive)
OdDbEvalEdgeInfo::from
OdDbEvalNodeId from() const
OdDbEvalContextIterator::next
virtual bool next()
OdDbEvalGraph::activate
virtual bool activate(const OdDbEvalNodeIdArray &activatedNodes) const
OdDbEvalGraph::getGraph
static OdDbEvalGraphPtr getGraph(OdDbDatabase *pDb, const OdString &key, const OdDb::OpenMode openMode=OdDb::kForRead)
OdDbEvalContextPair::value
void * value() const
DbObject.h
count
GLsizei GLsizei * count
Definition: gles2_ext.h:276
OdDbEvalConnectable::setConnectionValue
virtual bool setConnectionValue(const OdString &connectionName, const OdResBuf *pValue)
OdDbEvalContextPair::OdDbEvalContextPair
OdDbEvalContextPair(const OdString &key, void *value)
OdResBuf
Definition: ResBuf.h:112
OdDbEvalConnectable::getConnectionNames
virtual void getConnectionNames(OdStringArray &connectionNames) const
OdDbEvalExpr
Definition: DbEvalGraph.h:559
StringArray.h
DYNBLOCKS_EXPORT
#define DYNBLOCKS_EXPORT
Definition: DbEvalGraph.h:91
OdDbEvalGraph::~OdDbEvalGraph
virtual ~OdDbEvalGraph()
OdRxObject
Definition: RxObject.h:564
OdDbEvalGraph::dxfOutFields
virtual void dxfOutFields(OdDbDxfFiler *pFiler) const ODRX_OVERRIDE
OdDbEvalGraph::removeEdge
virtual bool removeEdge(const OdDbEvalNodeId &idFrom, const OdDbEvalNodeId &idTo)
OdDbEvalExpr::adjacentNodeRemoved
virtual void adjacentNodeRemoved(const OdDbEvalNodeId &adjNodeId)
OdDbEvalContext::getAt
virtual bool getAt(OdDbEvalContextPair &pair) const
OdResBufArray
OdArray< OdResBufPtr > OdResBufArray
Definition: DbEvalGraph.h:77
OdDbEvalContextIterator::ODRX_DECLARE_MEMBERS
ODRX_DECLARE_MEMBERS(OdDbEvalContextIterator)
OdDbEvalGraph::getOutgoingEdges
virtual void getOutgoingEdges(const OdDbEvalNodeId &nodeId, OdDbEvalEdgeInfoArray &edges) const
OdDbEvalEdgeInfo::refCount
unsigned long refCount() const
OdDbEvalGraph::copyFrom
virtual void copyFrom(const OdRxObject *p) ODRX_OVERRIDE
OdArray
Definition: OdArray.h:591
OdDbEvalGraph::getIncomingEdges
virtual void getIncomingEdges(const OdDbEvalNodeId &nodeId, OdDbEvalEdgeInfoArray &edges) const
OdDbEvalExpr::OdDbEvalExpr
OdDbEvalExpr()
OdDbEvalContextPair::setValue
void setValue(void *value)
TD_PackPop.h
OdDbEvalExpr::adjacentEdgeAdded
virtual void adjacentEdgeAdded(const OdDbEvalNodeId &fromId, const OdDbEvalNodeId &toId, bool isInvertible)
OdDbEvalGraph::dwgOutFields
virtual void dwgOutFields(OdDbDwgFiler *pFiler) const ODRX_OVERRIDE
OdDbEvalGraph::getIsActive
virtual bool getIsActive(const OdDbEvalNodeId &nodeId, bool &isActive) const
OdDbEvalContextIteratorPtr
OdSmartPtr< OdDbEvalContextIterator > OdDbEvalContextIteratorPtr
Definition: DbEvalGraph.h:53
OdDbEvalEdgeInfo::to
OdDbEvalNodeId to() const
OdDbEvalExpr::value
OdResBufPtr value() const
OdDbEvalExpr::dxfInFields
OdResult dxfInFields(OdDbDxfFiler *pFiler)
OdDbEvalExpr::m_lastValue
OdResBufPtr m_lastValue
Definition: DbEvalGraph.h:794
OdDbEvalGraph::isSubgraphOf
virtual bool isSubgraphOf(const OdDbEvalGraph *pOther) const
OdDbEvalContextIterator::OdDbEvalContextIterator
OdDbEvalContextIterator()
OdDbEvalConnectable::getConnectedNames
virtual bool getConnectedNames(const OdString &thisConnectionName, OdDbEvalNodeId sourceConnectableId, OdStringArray &sourceConnectionNames) const
OdDbEvalGraphPtr
OdSmartPtr< OdDbEvalGraph > OdDbEvalGraphPtr
Definition: DbEvalGraph.h:43
OdDbEvalGraph::addNode
virtual OdDbEvalNodeId addNode(OdDbEvalExpr *pNode)
OdDbEvalContextPair::OdDbEvalContextPair
OdDbEvalContextPair()
OdDbEvalGraph::ODDB_DECLARE_MEMBERS
ODDB_DECLARE_MEMBERS(OdDbEvalGraph)
OdDbEvalExpr::activated
virtual void activated(OdDbEvalNodeIdArray &argumentActiveList)
OdDb::kForRead
@ kForRead
Definition: DbObjectId.h:56
OdDbEvalEdgeInfoArray
OdArray< OdDbEvalEdgeInfo > OdDbEvalEdgeInfoArray
Definition: DbEvalGraph.h:69
OdDbEvalConnectable::connectionAllowed
virtual bool connectionAllowed(const OdString &thisConnectionName, OdDbEvalNodeId sourceConnectableId, const OdString &sourceConnectionName) const
OdDbEvalEdgeInfo::OdDbEvalEdgeInfo
OdDbEvalEdgeInfo()
Definition: DbEvalGraph.h:482
OdDbEvalConnectable::disconnectFrom
virtual bool disconnectFrom(const OdString &thisConnectionName, OdDbEvalNodeId sourceConnectableId, const OdString &sourceConnectionName)
OdDbEvalNodeId
unsigned long OdDbEvalNodeId
Definition: DbEvalGraph.h:60
OdDbEvalConnectable::ODDB_DECLARE_MEMBERS
ODDB_DECLARE_MEMBERS(OdDbEvalConnectable)
OdRxClass
Definition: RxObject.h:865
OdDbEvalConnectable::getConnectionType
virtual bool getConnectionType(const OdString &connectionName, OdResBuf::ValueType &connectionType) const
OdDbEvalGraph::addGraph
virtual void addGraph(OdDbEvalGraph *pGraphToAdd)
OdDbEvalExpr::removedFromGraph
virtual void removedFromGraph(OdDbEvalGraph *pGraph)
OdDbEvalContextIterator::start
virtual void start()
OdDbEvalExpr::getGraph
OdDbEvalGraphPtr getGraph(OdDb::OpenMode openMode=OdDb::kForRead) const
OdDbEvalExpr::movedFromGraph
virtual void movedFromGraph(OdDbEvalGraph *pFromGraph)
OdDbEvalGraph::hasGraph
static bool hasGraph(const OdDbObject *pObj, const OdString &key)
OdDbEvalGraph::evaluate
virtual bool evaluate(const OdDbEvalContext *pContext, const OdDbEvalNodeIdArray *pActivateNodes) const
OdSmartPtr< OdDbEvalGraph >
OdDbEvalEdgeInfo::isInvertible
bool isInvertible() const
OdDbEvalContext
Definition: DbEvalGraph.h:972
OdDbEvalContextIterator::done
virtual bool done() const
OdDbEvalExpr::evaluate
virtual bool evaluate(const OdDbEvalContext *evalContext)
OdDbEvalGraph::getAllNodes
virtual void getAllNodes(OdDbEvalNodeIdArray &allNodes) const
OdDbEvalContext::OdDbEvalContext
OdDbEvalContext()
OdDbEvalConnectablePtr
OdSmartPtr< OdDbEvalConnectable > OdDbEvalConnectablePtr
Definition: DbEvalGraph.h:951
OdDbEvalExpr::nodeId
OdDbEvalNodeId nodeId() const
OdDbEvalEdgeInfo::isSuppressed
bool isSuppressed() const
OdDbEvalGraph::createGraph
static bool createGraph(OdDbObject *pObj, const OdString &key)
OdDbEvalGraph
Definition: DbEvalGraph.h:122
OdDbEvalGraph::removeNode
virtual bool removeNode(const OdDbEvalNodeId &nodeId)
OdDbEvalGraph::createGraph
static bool createGraph(OdDbDatabase *pDb, const OdString &key)
OdDbEvalGraph::OdDbEvalGraph
OdDbEvalGraph()
OdDbEvalExpr::movedIntoGraph
virtual void movedIntoGraph(OdDbEvalGraph *pIntoGraph)
OdDbDxfFiler
Definition: DbFiler.h:194
OdPlatformSettings.h
OdDbEvalContextIterator::~OdDbEvalContextIterator
virtual ~OdDbEvalContextIterator()
OdDbEvalConnectable::connectTo
virtual bool connectTo(const OdString &thisConnectionName, OdDbEvalNodeId sourceConnectableId, const OdString &sourceConnectionName)
OdDbEvalGraph::applyPartialUndo
virtual void applyPartialUndo(OdDbDwgFiler *pFiler, OdRxClass *pClassObj) ODRX_OVERRIDE
OdDbEvalContextPair
Definition: DbEvalGraph.h:1042
TD_PackPush.h
OdDbEvalGraph::activate
virtual bool activate(const OdDbEvalNodeIdArray &activatedNodes, OdDbEvalNodeIdArray *pActiveSubgraph) const
OdResBuf::ValueType
ValueType
Definition: ResBuf.h:171
OdDbEvalConnectable::hasConnectionNamed
virtual bool hasConnectionNamed(const OdString &connectionName) const
OdDbEvalEdgeInfo
Definition: DbEvalGraph.h:480
OdDbEvalGraph::subHandOverTo
virtual void subHandOverTo(OdDbObject *pNewObject) ODRX_OVERRIDE
OdDbEvalExpr::copiedIntoGraph
virtual void copiedIntoGraph(OdDbEvalGraph *pIntoGraph)
OdDbEvalExpr::dwgInFields
OdResult dwgInFields(OdDbDwgFiler *pFiler)
OdDbEvalContextPair::setKey
void setKey(const OdString &key)
OdDbEvalGraph::addEdge
virtual bool addEdge(const OdDbEvalNodeId &idFrom, const OdDbEvalNodeId &idTo)
SmartPtr.h
OdDbEvalExpr::graphEvalStart
virtual void graphEvalStart(bool nodeIsActive)
OdDb::OpenMode
OpenMode
Definition: DbObjectId.h:54
OdDbEvalConnectable
Definition: DbEvalGraph.h:814
OdDbEvalExpr::~OdDbEvalExpr
virtual ~OdDbEvalExpr()
OdDbEvalGraph::NodeId
NodeId
Definition: DbEvalGraph.h:125
OdDbEvalConnectable::getConnectedObjects
virtual bool getConnectedObjects(const OdString &thisConnectionName, OdDbEvalNodeIdArray &connectedObjects) const
OdDbEvalContext::removeAt
virtual void removeAt(const OdString &key)
OdDbEvalContext::insertAt
virtual void insertAt(const OdDbEvalContextPair &pair)
OdDbEvalGraph::getNode
virtual OdDbEvalExprPtr getNode(const OdDbEvalNodeId &nodeId, OdDb::OpenMode openMode=OdDb::kForRead) const
OdDbEvalEdgeInfo::OdDbEvalEdgeInfo
OdDbEvalEdgeInfo(OdDbEvalNodeId fromId, OdDbEvalNodeId toId, long flags, unsigned long count)
Definition: DbEvalGraph.h:494
OdDbEvalGraph::addEdge
virtual bool addEdge(const OdDbEvalNodeId &idFrom, const OdDbEvalNodeId &idTo, bool invertible)
value
GLsizei const GLfloat * value
Definition: gles2_ext.h:302
OdDAI::operator==
bool DAI_EXPORT operator==(const OdFileDescriptionAuto &left, const OdFileDescriptionAuto &right)
OdDbEvalGraph::getGraph
static OdDbEvalGraphPtr getGraph(const OdDbObject *pObj, const OdString &pKey, const OdDb::OpenMode openMode=OdDb::kForRead)
OdDbEvalConnectable::~OdDbEvalConnectable
virtual ~OdDbEvalConnectable()
OdDbEvalExpr::equals
virtual bool equals(const OdDbEvalExpr *pOther) const
OdDbEvalGraph::evaluate
virtual bool evaluate() const
OdDbEvalGraph::equals
virtual bool equals(const OdDbEvalGraph *pOther) const
ODRX_OVERRIDE
#define ODRX_OVERRIDE
Definition: OdPlatformSettings.h:114
OdDbEvalGraph::removeNode
virtual bool removeNode(OdDbEvalExpr *pNode)
OdDbEvalGraph::removeGraph
static bool removeGraph(OdDbDatabase *pDb, const OdString &key)
OdDbEvalGraph::kNullNodeId
@ kNullNodeId
Definition: DbEvalGraph.h:126
OdDbEvalExpr::dwgOutFields
void dwgOutFields(OdDbDwgFiler *pFiler) const
OdDbEvalGraph::dxfInFields
virtual OdResult dxfInFields(OdDbDxfFiler *pFiler) ODRX_OVERRIDE
OdDbEvalGraph::evaluate
virtual bool evaluate(const OdDbEvalContext *pContext) const
OdDbEvalConnectable::OdDbEvalConnectable
OdDbEvalConnectable()
OdDbEvalContext::newIterator
virtual OdDbEvalContextIteratorPtr newIterator() const
OdDbObject
Definition: DbObject.h:211
OdDbDwgFiler
Definition: DbFiler.h:1031
OdDbEvalGraph::activate
virtual bool activate(const OdDbEvalNodeIdArray &activatedNodes, OdDbEvalNodeIdArray *pActiveSubgraph, OdDbEvalNodeIdArray *pCycleNodes) const
OdDbEvalExpr::ODDB_DECLARE_MEMBERS
ODDB_DECLARE_MEMBERS(OdDbEvalExpr)
OdDbEvalContextIterator
Definition: DbEvalGraph.h:1105
OdDbEvalContext::~OdDbEvalContext
virtual ~OdDbEvalContext()
OdDbEvalNodeIdArray
OdArray< OdDbEvalNodeId, OdMemoryAllocator< OdDbEvalNodeId > > OdDbEvalNodeIdArray
Definition: DbEvalGraph.h:65