C++ main module for gpm Package  1.0
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
GPM_Rule Class Referenceabstract

This class describes a rule. More...

#include <GPM_Rule.h>

Inheritance diagram for GPM_Rule:
Inheritance graph
[legend]
Collaboration diagram for GPM_Rule:
Collaboration graph
[legend]

Public Member Functions

virtual SP::GPM_Rule NewInstance () const =0
 create a calculator More...
 
virtual SP::GPM_Rule NewInstance (const tFlag &action, const tString &expr) const
 create a calculator More...
 
virtual void copy (const GPM_Rule &rule)
 copy More...
 
void setName (const tString &name)
 set the name More...
 
tString getName () const
 get the name More...
 
void setAction (const tFlag &action)
 set teh action of the rule More...
 
virtual void clearEnvironment ()=0
 clear the envirnment More...
 
virtual void setExpression (const tString &expr)=0
 set the expression More...
 
tBoolean isDependentOn (const tString &varName) const
 return true if the rule depend on the variable with name More...
 
tFlag getAction () const
 get action More...
 
virtual const double * getValue (int &n) const =0
 get the value More...
 
virtual double * getValue (int &n)=0
 get the value More...
 
virtual tString getExpression () const =0
 get the expression More...
 
virtual void buildEnvironment (const GPM_Graph &largeGraph, const GPM_Graph &patternGraph, const vector< tVertexIID > &mappingP2L, CORE_Out &io)
 build the environement thanks to the pattern graph More...
 
virtual void buildEnvironment (const GPM_Graph &largeGraph, const GPM_PortGraph &transformerGraph, const map< tVertexIID, tVertexIID > &mappingT2L, CORE_Out &io)
 build the environement thanks to the transformer graph More...
 
virtual void buildEnvironment (const GPM_Graph &graph, const tString &graphLetter, CORE_Out &io)
 build the environement thanks to the pattern graph More...
 
virtual void buildEnvironment (const GPM_GraphElement &element, const tString &elementLetter, CORE_Out &io)
 build the environement thanks to the pattern graph More...
 
virtual void buildEnvironment (const map< tString, SP::GPM_Variable > &gVariables, CORE_Out &io)
 build the environement thanks to the global variable More...
 
virtual void buildEnvironment (const SV::GPM_CompositorFunction &functions, CORE_Out &io)
 build the environement thanks to the global generic function More...
 
virtual void setVariable (const tString &name, const tFlag &type, const double *values, const int &n, const tBoolean &isGlobal)=0
 set variable in environement More...
 
virtual void setVariable (const tString &name, const tFlag &type, const double &values)=0
 set variable in environement More...
 
void setVariable (const tString &name, const double *values, const int &n)
 set variable in environement More...
 
void addVariable (const tString &name, const tFlag &type, const double *values, const int &n, const tBoolean &isGlobal)
 set variable in environement More...
 
void addVariable (const tString &name, const double *values, const int &n)
 set variable in environement More...
 
virtual void clearFunctions ()=0
 clear generic function of environement More...
 
virtual void addFunction (SP::GPM_CompositorFunction f)=0
 add generic function in environement More...
 
virtual void compute (SP::GPM_Rule commonRuleEnv)=0
 
void compute ()
 
virtual tString toString () const =0
 reture th rule to string 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 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 void turnBodyTextToLine (tString &bdy)
 
static void turnBodyLineToText (tString &bdy)
 
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 tBoolean mIsMemoryTesting =false
 indicator to store all classes created and deleted only for debuging version More...
 

Protected Member Functions

 GPM_Rule (void)
 create More...
 
virtual ~GPM_Rule (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...
 

Detailed Description

This class describes a rule.

Author
Stephane Despreaux
Version
1.0

Constructor & Destructor Documentation

GPM_Rule::GPM_Rule ( void  )
protected

create

GPM_Rule::~GPM_Rule ( void  )
protectedvirtual

destroy

Member Function Documentation

virtual void GPM_Rule::addFunction ( SP::GPM_CompositorFunction  f)
pure virtual

add generic function in environement

Referenced by buildEnvironment().

Here is the caller graph for this function:

void GPM_Rule::addVariable ( const tString name,
const tFlag type,
const double *  values,
const int &  n,
const tBoolean isGlobal 
)
inline

set variable in environement

References setVariable().

Referenced by buildEnvironment().

Here is the call graph for this function:

Here is the caller graph for this function:

void GPM_Rule::addVariable ( const tString name,
const double *  values,
const int &  n 
)
inline

set variable in environement

References GPM_Variable::REAL, and setVariable().

Here is the call graph for this function:

void GPM_Rule::buildEnvironment ( const GPM_Graph largeGraph,
const GPM_Graph patternGraph,
const vector< tVertexIID > &  mappingP2L,
CORE_Out io 
)
virtual
void GPM_Rule::buildEnvironment ( const GPM_Graph largeGraph,
const GPM_PortGraph transformerGraph,
const map< tVertexIID, tVertexIID > &  mappingT2L,
CORE_Out io 
)
virtual
void GPM_Rule::buildEnvironment ( const GPM_Graph graph,
const tString graphLetter,
CORE_Out io 
)
virtual

build the environement thanks to the pattern graph

References buildEnvironment(), GPM_Graph::getEdges(), GPM_Graph::getVertices(), and null.

Here is the call graph for this function:

void GPM_Rule::buildEnvironment ( const GPM_GraphElement element,
const tString elementLetter,
CORE_Out io 
)
virtual

build the environement thanks to the pattern graph

References addVariable(), GPM_Vertex::getCoordinates(), GPM_GraphElement::getId(), GPM_GraphElement::getVariable(), GPM_GraphElement::getVariableNames(), null, GPM_Variable::REAL, CORE_Integer::toString(), and tString.

Here is the call graph for this function:

void GPM_Rule::buildEnvironment ( const map< tString, SP::GPM_Variable > &  gVariables,
CORE_Out io 
)
virtual

build the environement thanks to the global variable

References addVariable(), GPM_Variable::getCardinality(), and GPM_Variable::getType().

Here is the call graph for this function:

void GPM_Rule::buildEnvironment ( const SV::GPM_CompositorFunction &  functions,
CORE_Out io 
)
virtual

build the environement thanks to the global generic function

References addFunction(), and clearFunctions().

Here is the call graph for this function:

virtual void GPM_Rule::clearEnvironment ( )
pure virtual

clear the envirnment

virtual void GPM_Rule::clearFunctions ( )
pure virtual

clear generic function of environement

Referenced by buildEnvironment().

Here is the caller graph for this function:

virtual void GPM_Rule::compute ( SP::GPM_Rule  commonRuleEnv)
pure virtual
void GPM_Rule::compute ( )
inline
virtual void GPM_Rule::copy ( const GPM_Rule rule)
inlinevirtual

copy

References getAction(), getExpression(), getName(), setAction(), setExpression(), and setName().

Here is the call graph for this function:

tFlag GPM_Rule::getAction ( ) const
inline

get action

Referenced by copy(), GPM_ModelFunction::saveRulesToFile(), GPM_ModelFunction::toString(), and GPM_ModelFunction::updatePatternGraphStates().

Here is the caller graph for this function:

static tString CORE_Object::getClassName ( const tString identityString)
inlinestaticinherited

return the class name of the object using only the identity string

Referenced by CORE_Object::printObjectsInMemory().

Here is the caller graph for this function:

tString CORE_Object::getClassName ( ) const
inherited

return the class name of the object

Returns
the class name of the object

References tString.

Referenced by CORE_Object::getIdentityString().

Here is the caller graph for this function:

virtual tString GPM_Rule::getExpression ( ) const
pure virtual

get the expression

Referenced by GPMG_RulesWindow::componentClicked(), copy(), isDependentOn(), GPM_ModelFunction::saveRulesToFile(), and GPM_ModelFunction::toString().

Here is the caller graph for this function:

tString CORE_Object::getIdentityString ( ) const
inlineinherited

return the identity string of the object of the form className_at_address

Returns
the identity string of the object

References CORE_Object::getClassName(), CORE_Object::pointer2String(), and tString.

Referenced by CORE_Object::toString().

Here is the call graph for this function:

Here is the caller graph for this function:

tString GPM_Rule::getName ( ) const
inline

get the name

Referenced by copy().

Here is the caller graph for this function:

static ostream& CORE_Object::getOutput ( )
inlinestaticinherited

get output

tString CORE_Object::getPointerAddress ( ) const
inlineinherited

return the identity string of the object

Returns
the identity string of the object

References CORE_Object::pointer2String().

Here is the call graph for this function:

void CORE_Object::getSharedPointer ( SP::CORE_Object &  p)
inlineinherited
void CORE_Object::getSharedPointer ( SPC::CORE_Object &  p) const
inlineinherited

get the shared pointer of this class into p

template<class T >
static tString CORE_Object::getTypeName ( )
inlinestaticinherited

get type name

References tString.

virtual const double* GPM_Rule::getValue ( int &  n) const
pure virtual
virtual double* GPM_Rule::getValue ( int &  n)
pure virtual

get the value

static tBoolean CORE_Object::is32Architecture ( )
inlinestaticinherited

return true if the machine is a 32 bits machine

References CORE_Object::is64Architecture().

Here is the call graph for this function:

tBoolean CORE_Object::is64Architecture ( )
staticinherited

return true if the machine is a 64 bits machine

Referenced by CORE_Object::is32Architecture().

Here is the caller graph for this function:

tBoolean GPM_Rule::isDependentOn ( const tString varName) const

return true if the rule depend on the variable with name

References getExpression(), CORE_String::isLetter(), tBoolean, and tString.

Here is the call graph for this function:

template<class T >
tBoolean CORE_Object::isInstanceOf ( ) const
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().

Here is the caller graph for this function:

virtual SP::GPM_Rule GPM_Rule::NewInstance ( ) const
pure virtual
virtual SP::GPM_Rule GPM_Rule::NewInstance ( const tFlag action,
const tString expr 
) const
inlinevirtual

create a calculator

References NewInstance().

Here is the call graph for this function:

void CORE_Object::outputPrint ( const tString message)
staticinherited

print on output

References null, and CORE_Object::print().

Referenced by CORE_Exception::CORE_Exception().

Here is the call graph for this function:

Here is the caller graph for this function:

tString CORE_Object::pointer2String ( const void *  obj)
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().

Here is the caller graph for this function:

virtual void CORE_Object::print ( )
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().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual ostream& CORE_Object::print ( ostream &  out) const
inlinevirtualinherited

print the class

References CORE_Object::print(), and CORE_Object::toString().

Here is the call graph for this function:

void CORE_Object::print ( const tString message)
virtualinherited

print the class

Reimplemented in CORE_Out.

References null, and CORE_Object::print().

Here is the call graph for this function:

void CORE_Object::print ( const tInteger str)
virtualinherited

print

References null.

void CORE_Object::print ( const tRelativeInteger str)
virtualinherited

print

References null.

void CORE_Object::print ( const tReal str)
virtualinherited

print

References null.

void CORE_Object::print ( const int &  str)
virtualinherited

print

References null.

static ostream& CORE_Object::print ( ostream &  out,
const tString message 
)
inlinestaticinherited

print the class

void CORE_Object::printObjectsInMemory ( )
staticinherited

print object in memory

References CORE_Object::getClassName(), CORE_Object::getSharedPointer(), and CORE_Object::mIsMemoryTesting.

Referenced by main().

Here is the call graph for this function:

Here is the caller graph for this function:

void GPM_Rule::setAction ( const tFlag action)
inline

set teh action of the rule

Referenced by copy().

Here is the caller graph for this function:

virtual void GPM_Rule::setExpression ( const tString expr)
pure virtual

set the expression

Referenced by copy().

Here is the caller graph for this function:

void GPM_Rule::setName ( const tString name)
inline

set the name

Referenced by copy().

Here is the caller graph for this function:

static void CORE_Object::setOutput ( ostream &  out)
inlinestaticinherited

set output

void CORE_Object::setThis ( SP::CORE_Object  p)
inlineprotectedinherited

set this weak shared pointer called toDoAfterThis setting method

References CORE_Object::toDoAfterThisSetting().

Here is the call graph for this function:

virtual void CORE_Object::setType ( tString  type)
inlineprotectedvirtualinherited
virtual void GPM_Rule::setVariable ( const tString name,
const tFlag type,
const double *  values,
const int &  n,
const tBoolean isGlobal 
)
pure virtual

set variable in environement

Referenced by addVariable(), buildEnvironment(), and setVariable().

Here is the caller graph for this function:

virtual void GPM_Rule::setVariable ( const tString name,
const tFlag type,
const double &  values 
)
pure virtual

set variable in environement

void GPM_Rule::setVariable ( const tString name,
const double *  values,
const int &  n 
)
inline

set variable in environement

References GPM_Variable::REAL, and setVariable().

Here is the call graph for this function:

virtual void CORE_Object::toDoAfterThisSetting ( )
inlineprotectedvirtualinherited
virtual tString GPM_Rule::toString ( ) const
pure virtual

reture th rule to string

Reimplemented from CORE_Object.

Referenced by GPM_ModelFunction::updatePatternGraphStates(), GPM_ModelFunction::updatePTEdgesStates(), and GPM_ModelFunction::updateTransformerGraphStates().

Here is the caller graph for this function:

static void GPM_Object::turnBodyLineToText ( tString bdy)
inlinestaticinherited

brief turn the body from the line to text

References CORE_String::replaceAll().

Referenced by GPMG_Project::loadFromUIClass(), and GPM_ModelFunction::readRulesFromFile().

Here is the call graph for this function:

Here is the caller graph for this function:

static void GPM_Object::turnBodyTextToLine ( tString bdy)
inlinestaticinherited

brief turn the body from the text to line

References CORE_String::replaceAll().

Referenced by GPM_ModelFunction::saveRulesToFile(), and GPMG_Project::saveToUIClass().

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

tBoolean CORE_Object::mIsMemoryTesting =false
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().


The documentation for this class was generated from the following files: