Abstract class for plugin interface, defining the minimal structure for a simulation function
All simulation functions must inherit from this class.
openfluid::base::PluggableFunction::PluggableFunction | ( | ) |
Constructor
virtual openfluid::base::PluggableFunction::~PluggableFunction | ( | ) | [virtual] |
Virtual destructor
virtual bool openfluid::base::PluggableFunction::checkConsistency | ( | ) | [pure virtual] |
Checks the function consistency. Called by the kernel.
virtual bool openfluid::base::PluggableFunction::finalizeRun | ( | const SimulationInfo * | SimInfo | ) | [pure virtual] |
Called by the kernel.
virtual bool openfluid::base::PluggableFunction::initializeRun | ( | const SimulationInfo * | SimInfo | ) | [pure virtual] |
Called by the kernel.
virtual bool openfluid::base::PluggableFunction::initParams | ( | openfluid::core::FuncParamsMap_t | Params | ) | [pure virtual] |
Initializes function parameters of the function, given as a hash map. Called by the kernel.
void openfluid::base::PluggableFunction::OPENFLUID_AppendEvent | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::Event & | Ev | |||
) | [protected] |
Appends an event on a unit
[in] | UnitPtr | a Unit |
[in] | Event | the event to append |
void openfluid::base::PluggableFunction::OPENFLUID_AppendVariable | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::VariableName_t | VarName, | |||
openfluid::core::VectorValue & | Value | |||
) | [protected] |
Appends a distributed vector variable value for a unit at the end of the previously added values for this variable
[in] | UnitPtr | a Unit |
[in] | VarName | the name of the variable |
[in] | Value | the added value of the variable |
void openfluid::base::PluggableFunction::OPENFLUID_AppendVariable | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::VariableName_t | VarName, | |||
openfluid::core::ScalarValue | Value | |||
) | [protected] |
Appends a distributed scalar variable value for a unit at the end of the previously added values for this variable
[in] | UnitPtr | a Unit |
[in] | VarName | the name of the variable |
[in] | Value | the added value of the variable |
void openfluid::base::PluggableFunction::OPENFLUID_GetEvents | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::DateTime | BeginDate, | |||
openfluid::core::DateTime | EndDate, | |||
openfluid::core::EventsCollection * | Events | |||
) | [protected] |
Gets discrete events happening on a unit during a time period
[in] | UnitPtr | a Unit |
[in] | BeginDate | the beginning of the time period |
[in] | EndDate | the ending of the time period |
[out] | EventColl | the collection of event corresponding to the request |
bool openfluid::base::PluggableFunction::OPENFLUID_GetFunctionParameter | ( | openfluid::core::FuncParamsMap_t | Params, | |
openfluid::core::FuncParamKey_t | ParamName, | |||
std::vector< long > * | Values | |||
) | [protected] |
Gets a function parameter vector of values from the parameters set, as a vector of long ints
[in] | Params | the parameters set for the simulation function |
[in] | ParamName | the name of the requested parameter |
[out] | Values | the vector of values of the requested parameter |
bool openfluid::base::PluggableFunction::OPENFLUID_GetFunctionParameter | ( | openfluid::core::FuncParamsMap_t | Params, | |
openfluid::core::FuncParamKey_t | ParamName, | |||
std::vector< double > * | Values | |||
) | [protected] |
Gets a function parameter vector of values from the parameters set, as a vector of doubles
[in] | Params | the parameters set for the simulation function |
[in] | ParamName | the name of the requested parameter |
[out] | Values | the vector of values of the requested parameter |
bool openfluid::base::PluggableFunction::OPENFLUID_GetFunctionParameter | ( | openfluid::core::FuncParamsMap_t | Params, | |
openfluid::core::FuncParamKey_t | ParamName, | |||
std::vector< std::string > * | Values | |||
) | [protected] |
Gets a function parameter vector of values from the parameters set, as a vector of strings
[in] | Params | the parameters set for the simulation function |
[in] | ParamName | the name of the requested parameter |
[out] | Values | the vector of values of the requested parameter |
bool openfluid::base::PluggableFunction::OPENFLUID_GetFunctionParameter | ( | openfluid::core::FuncParamsMap_t | Params, | |
openfluid::core::FuncParamKey_t | ParamName, | |||
std::string * | Value | |||
) | [protected] |
Gets a function parameter value from the parameters set, as a string
[in] | Params | the parameters set for the simulation function |
[in] | ParamName | the name of the requested parameter |
[out] | Value | the value of the requested parameter |
bool openfluid::base::PluggableFunction::OPENFLUID_GetFunctionParameter | ( | openfluid::core::FuncParamsMap_t | Params, | |
openfluid::core::FuncParamKey_t | ParamName, | |||
int * | Value | |||
) | [protected] |
Gets a function parameter value from the parameters set, as an int
[in] | Params | the parameters set for the simulation function |
[in] | ParamName | the name of the requested parameter |
[out] | Value | the value of the requested parameter |
bool openfluid::base::PluggableFunction::OPENFLUID_GetFunctionParameter | ( | openfluid::core::FuncParamsMap_t | Params, | |
openfluid::core::FuncParamKey_t | ParamName, | |||
float * | Value | |||
) | [protected] |
Gets a function parameter from the parameters set, as a float
[in] | Params | the parameters set for the simulation function |
[in] | ParamName | the name of the requested parameter |
[out] | Value | the value of the requested parameter |
bool openfluid::base::PluggableFunction::OPENFLUID_GetFunctionParameter | ( | openfluid::core::FuncParamsMap_t | Params, | |
openfluid::core::FuncParamKey_t | ParamName, | |||
long * | Value | |||
) | [protected] |
Gets a function parameter value from the parameters set, as a long int
[in] | Params | the parameters set for the simulation function |
[in] | ParamName | the name of the requested parameter |
[out] | Value | the value of the requested parameter |
bool openfluid::base::PluggableFunction::OPENFLUID_GetFunctionParameter | ( | openfluid::core::FuncParamsMap_t | Params, | |
openfluid::core::FuncParamKey_t | ParamName, | |||
double * | Value | |||
) | [protected] |
Gets a function parameter from the parameters set, as a double
[in] | Params | the parameters set for the simulation function |
[in] | ParamName | the name of the requested parameter |
[out] | Value | the value of the requested parameter |
void openfluid::base::PluggableFunction::OPENFLUID_GetInputData | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::InputDataName_t | InputName, | |||
openfluid::core::ScalarValue * | Value | |||
) | [protected] |
Gets a distributed property for a unit
[in] | UnitPtr | a Unit |
[in] | InputName | the name of the requested property |
[out] | Value | the value of the requested property |
bool openfluid::base::PluggableFunction::OPENFLUID_GetRunEnvironment | ( | std::string | Key, | |
bool * | Value | |||
) | [protected] |
Gets an environment boolean value associated to a Key
[in] | Key | the sender of the message |
[out] | Value | the value associated with the environment key |
bool openfluid::base::PluggableFunction::OPENFLUID_GetRunEnvironment | ( | std::string | Key, | |
std::string * | Value | |||
) | [protected] |
Gets an environment string value associated to a Key
[in] | Key | the sender of the message |
[out] | Value | the value associated with the environment key |
bool openfluid::base::PluggableFunction::OPENFLUID_GetUnitsCount | ( | openfluid::core::UnitClass_t | ClassName, | |
unsigned int * | UnitsCount | |||
) | [protected] |
Returns the number of units of the class if the queried unit class exists
[in] | ClassName | the queried class name |
[out] | UnitsCount | the queried class name |
void openfluid::base::PluggableFunction::OPENFLUID_GetVariable | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::VariableName_t | VarName, | |||
openfluid::core::TimeStep_t | Step, | |||
openfluid::core::VectorValue * | Value | |||
) | [protected] |
Gets the distributed variable value for a unit at a time step
[in] | UnitPtr | a Unit |
[in] | VarName | the name of the requested variable |
[in] | Step | the time step for the value of the requested variable |
[out] | Value | the value of the requested variable (vector) |
void openfluid::base::PluggableFunction::OPENFLUID_GetVariable | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::VariableName_t | VarName, | |||
openfluid::core::TimeStep_t | Step, | |||
openfluid::core::ScalarValue * | Value | |||
) | [protected] |
Gets the distributed variable value for a unit at a time step
[in] | UnitPtr | a Unit |
[in] | VarName | the name of the requested variable |
[in] | Step | the time step for the value of the requested variable |
[out] | Value | the value of the requested variable (scalar) |
bool openfluid::base::PluggableFunction::OPENFLUID_IsInputDataExist | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::InputDataName_t | InputName | |||
) | [protected] |
Returns true if a distributed input data exists, false otherwise
[in] | UnitPtr | a Unit |
[in] | InputName | the name of the queried variable |
bool openfluid::base::PluggableFunction::OPENFLUID_IsScalarVariableExist | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::VariableName_t | VarName, | |||
openfluid::core::TimeStep_t | Step | |||
) | [protected] |
Returns true if a distributed scalar variable exists and if a value has been set for the given step, false otherwise
[in] | UnitPtr | a Unit |
[in] | VarName | the name of the requested variable |
[in] | Step | the time step for the value of the variable |
bool openfluid::base::PluggableFunction::OPENFLUID_IsScalarVariableExist | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::VariableName_t | VarName | |||
) | [protected] |
Returns true if a distributed scalar variable exists, false otherwise
[in] | UnitPtr | a Unit |
[in] | VarName | the name of the requested variable |
bool openfluid::base::PluggableFunction::OPENFLUID_IsUnitClassExist | ( | openfluid::core::UnitClass_t | ClassName | ) | [protected] |
Returns true if the queried unit class exists
[in] | ClassName | the queried class name |
bool openfluid::base::PluggableFunction::OPENFLUID_IsVariableExist | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::VariableName_t | VarName, | |||
openfluid::core::TimeStep_t | Step | |||
) | [protected] |
Returns true if a distributed variable exists and if a value has been set for the given step, false otherwise (searches both scalar and vector variables)
[in] | UnitPtr | a Unit |
[in] | VarName | the name of the requested variable |
[in] | Step | the time step for the value of the variable |
bool openfluid::base::PluggableFunction::OPENFLUID_IsVariableExist | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::VariableName_t | VarName | |||
) | [protected] |
Returns true if a distributed variable exists, false otherwise (searches both scalar and vector variables)
[in] | UnitPtr | a Unit |
[in] | VarName | the name of the requested variable |
bool openfluid::base::PluggableFunction::OPENFLUID_IsVectorVariableExist | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::VariableName_t | VarName, | |||
openfluid::core::TimeStep_t | Step | |||
) | [protected] |
Returns true if a distributed vector variable exists and if a value has been set for the given step, false otherwise
[in] | UnitPtr | a Unit |
[in] | VarName | the name of the requested variable |
[in] | Step | the time step for the value of the variable |
bool openfluid::base::PluggableFunction::OPENFLUID_IsVectorVariableExist | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::VariableName_t | VarName | |||
) | [protected] |
Returns true if a distributed vector variable exists, false otherwise
[in] | UnitPtr | a Unit |
[in] | VarName | the name of the requested variable |
void openfluid::base::PluggableFunction::OPENFLUID_RaiseError | ( | std::string | Sender, | |
std::string | Source, | |||
std::string | Msg | |||
) | [protected] |
Raises an error message to the kernel. This stops the simulation the next time the kernel has the control
[in] | Sender | the sender of the message |
[in] | Source | of the message (location in the sender) |
[in] | Msg | the content of the message |
void openfluid::base::PluggableFunction::OPENFLUID_RaiseError | ( | std::string | Sender, | |
std::string | Source, | |||
openfluid::core::TimeStep_t | TimeStep, | |||
std::string | Msg | |||
) | [protected] |
Raises a time-marked error message to the kernel. This stops the simulation the next time the kernel has the control
[in] | Sender | the sender of the message |
[in] | Source | of the message (location in the sender) |
[in] | TimeStep | the time step number when the message occurred |
[in] | Msg | the content of the message |
void openfluid::base::PluggableFunction::OPENFLUID_RaiseError | ( | std::string | Sender, | |
std::string | Msg | |||
) | [protected] |
Raises an error message to the kernel. This stops the simulation the next time the kernel has the control
[in] | Sender | the sender of the message |
[in] | Msg | the content of the message |
void openfluid::base::PluggableFunction::OPENFLUID_RaiseError | ( | std::string | Sender, | |
openfluid::core::TimeStep_t | TimeStep, | |||
std::string | Msg | |||
) | [protected] |
Raises a time-marked error message to the kernel. This stops the simulation the next time the kernel has the control
[in] | Sender | the sender of the message |
[in] | TimeStep | the time step number when the message occurred |
[in] | Msg | the content of the message |
void openfluid::base::PluggableFunction::OPENFLUID_RaiseWarning | ( | std::string | Sender, | |
std::string | Msg | |||
) | [protected] |
Raises a warning message to the kernel. This do not stops the simulation
[in] | Sender | the sender of the message |
[in] | Msg | the content of the message |
void openfluid::base::PluggableFunction::OPENFLUID_RaiseWarning | ( | std::string | Sender, | |
openfluid::core::TimeStep_t | TimeStep, | |||
std::string | Msg | |||
) | [protected] |
Raises a time-marked warning message to the kernel. This do not stops the simulation
[in] | Sender | the sender of the message |
[in] | TimeStep | the time step number when the message occurred |
[in] | Msg | the content of the message |
void openfluid::base::PluggableFunction::OPENFLUID_SetVariable | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::VariableName_t | VarName, | |||
openfluid::core::TimeStep_t | Step, | |||
openfluid::core::VectorValue | Value | |||
) | [protected] |
Sets a distributed vector variable value for a unit at a time step
[in] | UnitPtr | a Unit |
[in] | VarName | the name of the variable |
[in] | Step | the time step for the value of the variable |
[in] | Value | the added value of the variable |
void openfluid::base::PluggableFunction::OPENFLUID_SetVariable | ( | openfluid::core::Unit * | UnitPtr, | |
openfluid::core::VariableName_t | VarName, | |||
openfluid::core::TimeStep_t | Step, | |||
openfluid::core::ScalarValue | Value | |||
) | [protected] |
Sets a distributed scalar variable value for a unit at a time step
[in] | UnitPtr | a Unit |
[in] | VarName | the name of the variable |
[in] | Step | the time step for the value of the variable |
[in] | Value | the added value of the variable |
virtual bool openfluid::base::PluggableFunction::prepareData | ( | ) | [pure virtual] |
Prepares data. Called by the kernel.
virtual bool openfluid::base::PluggableFunction::runStep | ( | const SimulationStatus * | SimStatus | ) | [pure virtual] |
Called by the kernel.
openfluid::core::CoreRepository* openfluid::base::PluggableFunction::mp_CoreData [protected] |
Pointer to the core repository (const). It should be used with care. Prefer to use the OPENFLUID_Xxxx methods.