summaryrefslogtreecommitdiff
path: root/inc/TFunction_GraphNode.hxx
blob: 255a1e4d543ea2cb17cf2dd61d7590c55e0599ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to 
// this header file considered to be the "object code" form of the original source.

#ifndef _TFunction_GraphNode_HeaderFile
#define _TFunction_GraphNode_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_DefineHandle_HeaderFile
#include <Standard_DefineHandle.hxx>
#endif
#ifndef _Handle_TFunction_GraphNode_HeaderFile
#include <Handle_TFunction_GraphNode.hxx>
#endif

#ifndef _TColStd_MapOfInteger_HeaderFile
#include <TColStd_MapOfInteger.hxx>
#endif
#ifndef _TFunction_ExecutionStatus_HeaderFile
#include <TFunction_ExecutionStatus.hxx>
#endif
#ifndef _TDF_Attribute_HeaderFile
#include <TDF_Attribute.hxx>
#endif
#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _Handle_TDF_Attribute_HeaderFile
#include <Handle_TDF_Attribute.hxx>
#endif
#ifndef _Handle_TDF_RelocationTable_HeaderFile
#include <Handle_TDF_RelocationTable.hxx>
#endif
#ifndef _Handle_TDF_DataSet_HeaderFile
#include <Handle_TDF_DataSet.hxx>
#endif
#ifndef _Standard_OStream_HeaderFile
#include <Standard_OStream.hxx>
#endif
class TDF_Label;
class Standard_GUID;
class TColStd_MapOfInteger;
class TDF_Attribute;
class TDF_RelocationTable;
class TDF_DataSet;


//! Provides links between functions. <br>
class TFunction_GraphNode : public TDF_Attribute {

public:

  //! Static methods <br>
//!          ============== <br>//! Finds or Creates a graph node attribute at the label <L>. <br>
//!          Returns the attribute. <br>
  Standard_EXPORT   static  Handle_TFunction_GraphNode Set(const TDF_Label& L) ;
  //! Returns the GUID for GraphNode attribute. <br>//! Instant methods <br>
//!          =============== <br>//! Constructor (empty). <br>
  Standard_EXPORT   static const Standard_GUID& GetID() ;
  
  Standard_EXPORT   TFunction_GraphNode();
  //! Defines a reference to the function as a previous one. <br>
  Standard_EXPORT     Standard_Boolean AddPrevious(const Standard_Integer funcID) ;
  //! Defines a reference to the function as a previous one. <br>
  Standard_EXPORT     Standard_Boolean AddPrevious(const TDF_Label& func) ;
  //! Removes a reference to the function as a previous one. <br>
  Standard_EXPORT     Standard_Boolean RemovePrevious(const Standard_Integer funcID) ;
  //! Removes a reference to the function as a previous one. <br>
  Standard_EXPORT     Standard_Boolean RemovePrevious(const TDF_Label& func) ;
  //! Returns a map of previous functions. <br>
  Standard_EXPORT    const TColStd_MapOfInteger& GetPrevious() const;
  //! Clears a map of previous functions. <br>
  Standard_EXPORT     void RemoveAllPrevious() ;
  //! Defines a reference to the function as a next one. <br>
  Standard_EXPORT     Standard_Boolean AddNext(const Standard_Integer funcID) ;
  //! Defines a reference to the function as a next one. <br>
  Standard_EXPORT     Standard_Boolean AddNext(const TDF_Label& func) ;
  //! Removes a reference to the function as a next one. <br>
  Standard_EXPORT     Standard_Boolean RemoveNext(const Standard_Integer funcID) ;
  //! Removes a reference to the function as a next one. <br>
  Standard_EXPORT     Standard_Boolean RemoveNext(const TDF_Label& func) ;
  //! Returns a map of next functions. <br>
  Standard_EXPORT    const TColStd_MapOfInteger& GetNext() const;
  //! Clears a map of next functions. <br>
  Standard_EXPORT     void RemoveAllNext() ;
  //! Returns the execution status of the function. <br>
  Standard_EXPORT     TFunction_ExecutionStatus GetStatus() const;
  //! Defines an execution status for a function. <br>//! Implementation of Attribute methods <br>
//!          =================================== <br>
  Standard_EXPORT     void SetStatus(const TFunction_ExecutionStatus status) ;
  
  Standard_EXPORT    const Standard_GUID& ID() const;
  
  Standard_EXPORT   virtual  void Restore(const Handle(TDF_Attribute)& with) ;
  
  Standard_EXPORT   virtual  void Paste(const Handle(TDF_Attribute)& into,const Handle(TDF_RelocationTable)& RT) const;
  
  Standard_EXPORT   virtual  Handle_TDF_Attribute NewEmpty() const;
  
  Standard_EXPORT   virtual  void References(const Handle(TDF_DataSet)& aDataSet) const;
  
  Standard_EXPORT   virtual  Standard_OStream& Dump(Standard_OStream& anOS) const;




  DEFINE_STANDARD_RTTI(TFunction_GraphNode)

protected:




private: 


TColStd_MapOfInteger myPrevious;
TColStd_MapOfInteger myNext;
TFunction_ExecutionStatus myStatus;


};





// other Inline functions and methods (like "C++: function call" methods)


#endif