summaryrefslogtreecommitdiff
path: root/inc/Expr.hxx
blob: 4a78ef5935ca4b0f969404405d3ab60d024f5f48 (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
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
// 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 _Expr_HeaderFile
#define _Expr_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_Macro_HeaderFile
#include <Standard_Macro.hxx>
#endif

#ifndef _Handle_Expr_GeneralExpression_HeaderFile
#include <Handle_Expr_GeneralExpression.hxx>
#endif
#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _Handle_Expr_GeneralRelation_HeaderFile
#include <Handle_Expr_GeneralRelation.hxx>
#endif
#ifndef _Standard_Real_HeaderFile
#include <Standard_Real.hxx>
#endif
class Expr_GeneralExpression;
class Expr_GeneralRelation;
class Expr_GeneralExpression;
class Expr_NumericValue;
class Expr_NamedExpression;
class Expr_NamedConstant;
class Expr_NamedUnknown;
class Expr_UnaryExpression;
class Expr_Absolute;
class Expr_ArcCosine;
class Expr_ArcSine;
class Expr_ArcTangent;
class Expr_ArgCosh;
class Expr_ArgSinh;
class Expr_ArgTanh;
class Expr_Cosh;
class Expr_Cosine;
class Expr_Exponential;
class Expr_LogOf10;
class Expr_LogOfe;
class Expr_Sign;
class Expr_Sine;
class Expr_Sinh;
class Expr_Square;
class Expr_SquareRoot;
class Expr_Tangent;
class Expr_Tanh;
class Expr_UnaryFunction;
class Expr_UnaryMinus;
class Expr_BinaryExpression;
class Expr_BinaryFunction;
class Expr_Difference;
class Expr_Division;
class Expr_Exponentiate;
class Expr_PolyExpression;
class Expr_PolyFunction;
class Expr_Product;
class Expr_Sum;
class Expr_UnknownIterator;
class Expr_GeneralRelation;
class Expr_SingleRelation;
class Expr_Different;
class Expr_Equal;
class Expr_GreaterThan;
class Expr_GreaterThanOrEqual;
class Expr_LessThan;
class Expr_LessThanOrEqual;
class Expr_SystemRelation;
class Expr_RelationIterator;
class Expr_RUIterator;
class Expr_GeneralFunction;
class Expr_NamedFunction;
class Expr_FunctionDerivative;
class Expr_SequenceOfGeneralExpression;
class Expr_Array1OfGeneralExpression;
class Expr_Array1OfNamedUnknown;
class Expr_MapOfNamedUnknown;
class Expr_Array1OfSingleRelation;
class Expr_SequenceOfGeneralRelation;
class Expr_SequenceNodeOfSequenceOfGeneralExpression;
class Expr_IndexedMapNodeOfMapOfNamedUnknown;
class Expr_SequenceNodeOfSequenceOfGeneralRelation;


//! This package describes  the data structure  of any <br>
//!          expression, relation or function used in mathematics. <br>
//!          It also describes the assignment of variables. Standard <br>
//!          mathematical functions are implemented such as <br>
//!          trigonometrics, hyperbolics, and log functions. <br>
class Expr  {
public:

  void* operator new(size_t,void* anAddress) 
  {
    return anAddress;
  }
  void* operator new(size_t size) 
  {
    return Standard::Allocate(size); 
  }
  void  operator delete(void *anAddress) 
  {
    if (anAddress) Standard::Free((Standard_Address&)anAddress); 
  }

  
  Standard_EXPORT   static  Handle_Expr_GeneralExpression CopyShare(const Handle(Expr_GeneralExpression)& exp) ;
  
  Standard_EXPORT   static  Standard_Integer NbOfFreeVariables(const Handle(Expr_GeneralExpression)& exp) ;
  
  Standard_EXPORT   static  Standard_Integer NbOfFreeVariables(const Handle(Expr_GeneralRelation)& exp) ;
  
  Standard_EXPORT   static  Standard_Real Sign(const Standard_Real val) ;





protected:





private:




friend class Expr_GeneralExpression;
friend class Expr_NumericValue;
friend class Expr_NamedExpression;
friend class Expr_NamedConstant;
friend class Expr_NamedUnknown;
friend class Expr_UnaryExpression;
friend class Expr_Absolute;
friend class Expr_ArcCosine;
friend class Expr_ArcSine;
friend class Expr_ArcTangent;
friend class Expr_ArgCosh;
friend class Expr_ArgSinh;
friend class Expr_ArgTanh;
friend class Expr_Cosh;
friend class Expr_Cosine;
friend class Expr_Exponential;
friend class Expr_LogOf10;
friend class Expr_LogOfe;
friend class Expr_Sign;
friend class Expr_Sine;
friend class Expr_Sinh;
friend class Expr_Square;
friend class Expr_SquareRoot;
friend class Expr_Tangent;
friend class Expr_Tanh;
friend class Expr_UnaryFunction;
friend class Expr_UnaryMinus;
friend class Expr_BinaryExpression;
friend class Expr_BinaryFunction;
friend class Expr_Difference;
friend class Expr_Division;
friend class Expr_Exponentiate;
friend class Expr_PolyExpression;
friend class Expr_PolyFunction;
friend class Expr_Product;
friend class Expr_Sum;
friend class Expr_UnknownIterator;
friend class Expr_GeneralRelation;
friend class Expr_SingleRelation;
friend class Expr_Different;
friend class Expr_Equal;
friend class Expr_GreaterThan;
friend class Expr_GreaterThanOrEqual;
friend class Expr_LessThan;
friend class Expr_LessThanOrEqual;
friend class Expr_SystemRelation;
friend class Expr_RelationIterator;
friend class Expr_RUIterator;
friend class Expr_GeneralFunction;
friend class Expr_NamedFunction;
friend class Expr_FunctionDerivative;
friend class Expr_SequenceOfGeneralExpression;
friend class Expr_Array1OfGeneralExpression;
friend class Expr_Array1OfNamedUnknown;
friend class Expr_MapOfNamedUnknown;
friend class Expr_Array1OfSingleRelation;
friend class Expr_SequenceOfGeneralRelation;
friend class Expr_SequenceNodeOfSequenceOfGeneralExpression;
friend class Expr_IndexedMapNodeOfMapOfNamedUnknown;
friend class Expr_SequenceNodeOfSequenceOfGeneralRelation;

};





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


#endif