C++ main module for gpm Package
1.0
|
This class is a children of a parent expression. More...
#include <MATH_ChildExpression.h>
Public Member Functions | |
void | setParent (SP::MATH_ParentExpression parent, const int &argIndex) |
set the parent More... | |
void | resetParent () |
reset the parent of the child More... | |
virtual const MATH_RootExpression * | getRootNode () const |
return the root node of the node More... | |
SP::MATH_ParentExpression | getParent (int &index) |
get the parent More... | |
SPC::MATH_ParentExpression | getParent (int &index) const |
get the parent More... | |
SP::MATH_ParentExpression | getParent () |
get the parent More... | |
SPC::MATH_ParentExpression | getParent () const |
get the parent More... | |
virtual MATH_ChildExpression * | insertInTree (MATH_Expression *tree, MATH_Environment &symbols, tString &expr)=0 |
insert the node This in tree & erase the This corresponding character in expr More... | |
virtual int | evaluate (const tFlag &action, MATH_Environment &symbols, MATH_Variable &value) const =0 |
void evaluate the expression More... | |
int | evaluate (MATH_Environment &symbols, MATH_Variable &value) const |
void evaluate the algebric expression More... | |
void | getSharedPointer (SP::CORE_Object &p) |
get the shared pointer of this class into p More... | |
void | getSharedPointer (SPC::CORE_Object &p) const |
get the shared pointer of this class into p More... | |
tString | getClassName () const |
return the class name of the object More... | |
tString | getIdentityString () const |
return the identity string of the object of the form className_at_address More... | |
tString | getPointerAddress () const |
return the identity string of the object More... | |
template<class T > | |
tBoolean | isInstanceOf () const |
return true if the object is an instance of T More... | |
virtual tString | toString () const |
return the string representation of the object node More... | |
virtual void | print () |
print the class More... | |
virtual ostream & | print (ostream &out) const |
print the class More... | |
virtual void | print (const tString &message) |
print the class More... | |
virtual void | print (const tInteger &str) |
print More... | |
virtual void | print (const tRelativeInteger &str) |
print More... | |
virtual void | print (const tReal &str) |
print More... | |
virtual void | print (const int &str) |
print More... | |
Static Public Member Functions | |
static tString | getClassName (const tString &identityString) |
return the class name of the object using only the identity string More... | |
template<class T > | |
static tString | getTypeName () |
get type name More... | |
static tBoolean | is64Architecture () |
return true if the machine is a 64 bits machine More... | |
static tBoolean | is32Architecture () |
return true if the machine is a 32 bits machine More... | |
static tString | pointer2String (const void *obj) |
return the string represantation of a pointer More... | |
static void | setOutput (ostream &out) |
set output More... | |
static ostream & | getOutput () |
get output More... | |
static void | printObjectsInMemory () |
print object in memory More... | |
static ostream & | print (ostream &out, const tString &message) |
print the class More... | |
static void | outputPrint (const tString &message) |
Static Public Attributes | |
static const tFlag | ALGEBRIC =0 |
static const tFlag | IS_INSIDE =1 |
static const tFlag | COMPUTE_BOUNDS =2 |
static const int | SUCCESS =0 |
static const int | FAIL =-1 |
static const int | TYPE_MISMATCHED =-2 |
static const int | SIZE_MISMATCHED =-3 |
static const int | OUT_OF_BOUNDS =-4 |
static const int | NULL_OPERAND =-5 |
static tBoolean | mIsMemoryTesting =false |
indicator to store all classes created and deleted only for debuging version More... | |
Protected Member Functions | |
MATH_ChildExpression (void) | |
create More... | |
virtual | ~MATH_ChildExpression (void) |
destroy More... | |
void | setThis (SP::CORE_Object p) |
set this weak shared pointer called toDoAfterThis setting method More... | |
virtual void | setType (tString type) |
set the type of the object More... | |
virtual void | toDoAfterThisSetting () |
method called after setThis() method this method can oly be called once. More... | |
This class is a children of a parent expression.
a child is insert in tree by the MAH_ChildExpression::insertInTree() which has to be specialized.
|
protected |
create
|
protectedvirtual |
destroy
|
pure virtualinherited |
void evaluate the expression
action | action of the evaluation: |
symbols | values of symbols |
values | return values |
size | number of returned values |
type | type of values
|
Implemented in MATH_ParentExpression, MATH_FunctionNode, MATH_LeafExpression, MATH_BeginBlock, MATH_RootExpression, MATH_NodeExpression, MATH_GTOperator, MATH_GEOperator, MATH_LTOperator, MATH_MinusOperator, MATH_VectorFunction, MATH_AndBitwiseOperator, MATH_NEQOperator, MATH_OrBitwiseOperator, MATH_XorBitwiseOperator, MATH_ArrayFunction, MATH_EQOperator, MATH_NotBitwiseOperator, MATH_AndOperator, MATH_EndBlock, MATH_LEOperator, MATH_OrOperator, MATH_Set, MATH_NotOperator, MATH_AddOperator, MATH_MultiplyOperator, MATH_EOperator, MATH_SetTransformer, MATH_DivideOperator, MATH_ModuloOperator, and MATH_NumericalFunction.
Referenced by MATH_SetTransformer::evaluate(), MATH_Expression::evaluate(), and MATH_ParentExpression::evaluate().
|
inlineinherited |
void evaluate the algebric expression
symbols | algebric values of symbol |
References MATH_Expression::evaluate().
return the class name of the object using only the identity string
Referenced by CORE_Object::printObjectsInMemory().
|
inherited |
return the class name of the object
References tString.
Referenced by CORE_Object::getIdentityString().
|
inlineinherited |
return the identity string of the object of the form className_at_address
References CORE_Object::getClassName(), CORE_Object::pointer2String(), and tString.
Referenced by CORE_Object::toString().
|
inlinestaticinherited |
get output
|
inline |
get the parent
index | index of the child this in parent. |
|
inline |
get the parent
index | index of the child this in parent. |
|
inline |
get the parent
Referenced by getParent(), getRootNode(), MATH_BeginBlock::remove(), resetParent(), and setParent().
|
inline |
|
inlineinherited |
return the identity string of the object
References CORE_Object::pointer2String().
|
virtual |
return the root node of the node
Reimplemented in MATH_NodeExpression.
References getParent().
Referenced by MATH_NodeExpression::getRootNode(), and MATH_FunctionNode::readArguments().
|
inlineinherited |
get the shared pointer of this class into p
Referenced by MATH_ParentExpression::addArgument(), GPMG_EnvironmentPanel::componentClicked(), GPM_GraphElement::copy(), CORE_Map< Key, Value >::getSharedPointer(), CORE_Array< T >::getSharedPointer(), CORE_Vector< T >::getSharedPointer(), CORE_Matrix< T >::getSharedPointer(), CORE_Object::printObjectsInMemory(), MATH_ParentExpression::setArgument(), GPMG_EnvironmentPanel::setEnvironment(), GPM_GraphElement::setGraph(), GPMG_GraphElementWindow::setGraphElement(), GPMG_ShowGraphDrawPanel::showGraph(), and GPMG_RuleGraphDrawPanel::showRule().
|
inlineinherited |
get the shared pointer of this class into p
|
inlinestaticinherited |
get type name
References tString.
|
pure virtual |
insert the node This in tree & erase the This corresponding character in expr
tree | : the tree to insert the node This |
expr | : the expression string |
Implemented in MATH_LeafExpression, MATH_BeginBlock, MATH_FunctionNode, MATH_EndBlock, MATH_UnaryOperator, and MATH_BinaryOperator.
|
inlinestaticinherited |
return true if the machine is a 32 bits machine
References CORE_Object::is64Architecture().
|
staticinherited |
return true if the machine is a 64 bits machine
Referenced by CORE_Object::is32Architecture().
|
inlineinherited |
return true if the object is an instance of T
References null.
Referenced by MATH_BinaryOperator::insertInTree(), MATH_UnaryOperator::insertInTree(), and MATH_EndBlock::insertInTree().
|
staticinherited |
print on output
References null, and CORE_Object::print().
Referenced by CORE_Exception::CORE_Exception().
|
staticinherited |
return the string represantation of a pointer
References tString.
Referenced by CORE_Object::CORE_Object(), CORE_Object::getIdentityString(), CORE_Object::getPointerAddress(), and CORE_Object::~CORE_Object().
|
inlinevirtualinherited |
print the class
References CORE_Object::toString().
Referenced by CORE_Object::outputPrint(), CORE_Out::print(), CORE_Object::print(), CORE_Out::printInt(), CORE_Out::println(), CORE_Out::printReal(), CORE_Out::printString(), and CORE_Out::setAction().
|
inlinevirtualinherited |
print the class
References CORE_Object::print(), and CORE_Object::toString().
|
virtualinherited |
print the class
Reimplemented in CORE_Out.
References null, and CORE_Object::print().
|
virtualinherited |
References null.
|
virtualinherited |
References null.
|
inlinestaticinherited |
print the class
|
staticinherited |
print object in memory
References CORE_Object::getClassName(), CORE_Object::getSharedPointer(), and CORE_Object::mIsMemoryTesting.
Referenced by main().
void MATH_ChildExpression::resetParent | ( | ) |
reset the parent of the child
References getParent(), and null.
Referenced by setParent().
|
inlinestaticinherited |
set output
void MATH_ChildExpression::setParent | ( | SP::MATH_ParentExpression | parent, |
const int & | argIndex | ||
) |
set the parent
parent | parent of the child |
argIndex | operand index of the child in the parent children list |
References getParent(), and resetParent().
|
inlineprotectedinherited |
set this weak shared pointer called toDoAfterThis setting method
References CORE_Object::toDoAfterThisSetting().
|
inlineprotectedvirtualinherited |
set the type of the object
Referenced by CORE_CommandLine::CORE_CommandLine(), CORE_IO::CORE_IO(), GPM_2DSnowGraph::GPM_2DSnowGraph(), GPM_BGLTest::GPM_BGLTest(), GPM_ClassFactory::GPM_ClassFactory(), GPM_ConwayFunction::GPM_ConwayFunction(), GPM_ConwayGraph::GPM_ConwayGraph(), GPM_CoreRun::GPM_CoreRun(), GPM_CoreTest::GPM_CoreTest(), GPM_Edge::GPM_Edge(), GPM_ExamplesRun::GPM_ExamplesRun(), GPM_Function::GPM_Function(), GPM_Graph::GPM_Graph(), GPM_GraphElement::GPM_GraphElement(), GPM_ModelGraph::GPM_ModelGraph(), GPM_Node::GPM_Node(), GPM_Object::GPM_Object(), GPM_PatternFunction::GPM_PatternFunction(), GPM_Port::GPM_Port(), GPM_PortGraph::GPM_PortGraph(), GPM_Snow2DFunction::GPM_Snow2DFunction(), GPM_Snow3DFunction::GPM_Snow3DFunction(), GPM_Vertex::GPM_Vertex(), and MATH_ExpressionRun::MATH_ExpressionRun().
|
inlineprotectedvirtualinherited |
method called after setThis() method this method can oly be called once.
Reimplemented in GPM_2DSnowGraph, GPMG_EnvironmentWindow, GPM_GraphElement, GPM_ModelFunction, GPM_ModelGraph, GPMG_RuleGraphWindow, GPMG_MovieGraphWindow, GPMG_ShowGraphWindow, and GPM_Function.
Referenced by CORE_Object::setThis(), GPM_ModelGraph::toDoAfterThisSetting(), GPM_GraphElement::toDoAfterThisSetting(), and GPM_2DSnowGraph::toDoAfterThisSetting().
|
virtualinherited |
return the string representation of the object node
Reimplemented in CORE_Time, CORE_Vector< T >, CORE_Array< T >, GPM_PatternFunction, GPM_Graph, CORE_Array2D< T >, GPM_GraphElement, MATH_Variable, CORE_Color, CORE_Matrix< T >, GPM_ModelFunction, CORE_SharedPointersVMap< Key, Value >, CORE_SharedPointersVMap< tString, const CORE_Object >, CORE_SharedPointersVMap< tString, CORE_Object >, CORE_SharedPointersListVMap< Key, Value >, GPM_Rule, CORE_SharedPointersKVMap< Key, Value >, GPM_Variable, GPM_Vertex, MATH_Environment, MATH_ParentExpression, MATH_RootExpression, MATH_LeafExpression, CORE_String, MATH_FunctionNode, CORE_Integer, GPM_Edge, CORE_Array3D< T >, GPM_Port, GPM_Node, MATH_UnaryOperator, CORE_Complex, MATH_BinaryOperator, and CORE_Real.
References CORE_Object::getIdentityString().
Referenced by CORE_Object::print(), MATH_ParentExpression::toString(), CORE_SharedPointersKVMap< Key, Value >::toString(), CORE_SharedPointersListVMap< Key, Value >::toString(), CORE_SharedPointersVMap< Key, Value >::toString(), and GPM_PatternFunction::toString().
|
staticinherited |
Referenced by MATH_NumericalFunction::evaluate(), MATH_LEOperator::evaluate(), MATH_AndOperator::evaluate(), MATH_OrOperator::evaluate(), MATH_EQOperator::evaluate(), MATH_ArrayFunction::evaluate(), MATH_AndBitwiseOperator::evaluate(), MATH_XorBitwiseOperator::evaluate(), MATH_NEQOperator::evaluate(), MATH_OrBitwiseOperator::evaluate(), MATH_VectorFunction::evaluate(), MATH_LTOperator::evaluate(), MATH_GEOperator::evaluate(), MATH_GTOperator::evaluate(), MATH_RootExpression::evaluate(), MATH_LinearTransform::evaluateParameters(), MATH_TranslationTransform::evaluateParameters(), MATH_RotationTransform::evaluateParameters(), MATH_kBoxSet::evaluateParameters(), MATH_ParableSet::evaluateParameters(), MATH_RectangleSet::evaluateParameters(), and MATH_DiskSet::evaluateParameters().
|
staticinherited |
|
staticinherited |
Referenced by MATH_ParentExpression::evaluate().
|
staticinherited |
|
staticinherited |
indicator to store all classes created and deleted only for debuging version
Referenced by CORE_Object::CORE_Object(), main(), CORE_Object::printObjectsInMemory(), and CORE_Object::~CORE_Object().
|
staticinherited |
Referenced by MATH_DivideOperator::evaluate(), MATH_ModuloOperator::evaluate(), MATH_MultiplyOperator::evaluate(), MATH_AddOperator::evaluate(), MATH_AndOperator::evaluate(), MATH_OrOperator::evaluate(), MATH_LEOperator::evaluate(), MATH_OrBitwiseOperator::evaluate(), MATH_AndBitwiseOperator::evaluate(), MATH_XorBitwiseOperator::evaluate(), MATH_LTOperator::evaluate(), MATH_GEOperator::evaluate(), and MATH_GTOperator::evaluate().
|
staticinherited |
|
staticinherited |
Referenced by MATH_NumericalFunction::evaluate().
|
staticinherited |
Referenced by MATH_DivideOperator::evaluate(), MATH_ModuloOperator::evaluate(), MATH_NumericalFunction::evaluate(), MATH_SetTransformer::evaluate(), MATH_EOperator::evaluate(), MATH_AddOperator::evaluate(), MATH_Set::evaluate(), MATH_EndBlock::evaluate(), MATH_ArrayFunction::evaluate(), MATH_NotBitwiseOperator::evaluate(), MATH_EQOperator::evaluate(), MATH_NEQOperator::evaluate(), MATH_VectorFunction::evaluate(), and MATH_Environment::getVariable().
|
staticinherited |
Referenced by MATH_DivideOperator::evaluate(), MATH_NumericalFunction::evaluate(), MATH_ModuloOperator::evaluate(), MATH_SetTransformer::evaluate(), MATH_MultiplyOperator::evaluate(), MATH_NotOperator::evaluate(), MATH_AndOperator::evaluate(), MATH_OrOperator::evaluate(), MATH_NotBitwiseOperator::evaluate(), MATH_ArrayFunction::evaluate(), MATH_XorBitwiseOperator::evaluate(), MATH_AndBitwiseOperator::evaluate(), MATH_OrBitwiseOperator::evaluate(), and MATH_MinusOperator::evaluate().