MicroModelicaCCompiler
4.5.3
|
#include <class.hpp>
Protected Member Functions | |
void | addVariable (int id, Option< Range > range, EQUATION::Type type, unsigned int &offset) |
Adds a new variable for events and output equations that doesn't have associated variables in the model. More... | |
void | setVariableOffset (Util::Variable var, unsigned int &offset, Util::Variable::RealType type, bool set_variable_count=true) |
void | setRealVariables (AST_Equation eq) |
void | addEquation (AST_Equation eq, Option< Range > range) |
void | reduceEquation (AST_Equation_Equality eq, list< AST_Equation > &new_eqs) |
void | addEvent (AST_Statement stm, Option< Range > range) |
void | reduceEvent (AST_Statement_When ev) |
void | addFunction (Util::SymbolTable symbols, FunctionTable &fs) |
void | addInput (Equation eq) |
void | orderEquations () |
EquationDefOrder | getEquationDefOrder (Equation eq) |
int | computeEventOffsetShift (Option< Range > range) |
Protected Attributes | |
std::string | _name |
Util::ImportTable | _imports |
ModelAnnotation | _annotations |
FunctionTable | _called_functions |
EquationTable | _derivatives |
EquationTable | _ordered_derivatives |
EquationTable | _algebraics |
EquationTable | _outputs |
EventTable | _events |
InputTable | _inputs |
Deps::ModelDependencies | _dependencies |
CompiledPackageTable | _packages |
StatementTable | _initial_code |
Util::SymbolTable | _library_directories |
Util::SymbolTable | _link_libraries |
Util::SymbolTable | _include_directories |
std::list< AST_Equation > | _ast_equations |
std::list< AST_Statement > | _ast_statements |
unsigned int | _state_nbr |
unsigned int | _discrete_nbr |
unsigned int | _algebraic_nbr |
unsigned int | _event_nbr |
unsigned int | _output_nbr |
unsigned int | _input_nbr |
int | _derivative_id |
int | _algebraic_id |
int | _statement_id |
int | _event_id |
int | _output_id |
int | _input_id |
bool | _external_functions |
|
virtualdefault |
Definition at line 451 of file class.cpp.
References _algebraic_id, _algebraics, MicroModelica::IR::EQUATION::Algebraic, and ModelTable< Key, Value >::insert().
Definition at line 615 of file class.cpp.
References _annotations, _event_id, _event_nbr, _events, MicroModelica::IR::Event::add(), addVariable(), MicroModelica::IR::Event::compare(), computeEventOffsetShift(), current_element, MicroModelica::IR::ModelAnnotation::EventId(), ModelTable< Key, Value >::insert(), and MicroModelica::IR::EQUATION::ZeroCrossing.
Referenced by setEvents().
|
protected |
Definition at line 373 of file class.cpp.
References _link_libraries, MicroModelica::IR::FunctionAnnotation::libraries(), and ModelTable< Key, Value >::merge().
Referenced by setCalledFunctions().
|
protected |
|
protected |
Adds a new variable for events and output equations that doesn't have associated variables in the model.
[in] | id | The identifier |
[in] | size | The size |
[in] | type | The type |
Definition at line 579 of file class.cpp.
Referenced by addEvent().
|
inline |
|
inline |
|
inline |
Definition at line 177 of file class.hpp.
Referenced by MicroModelica::Generator::QSSModelInstance::allocateSolver(), MicroModelica::Generator::Macros::arguments(), MicroModelica::Generator::Files::bdfPartition(), MicroModelica::Generator::Macros::Macros(), and MicroModelica::Generator::Files::makefile().
EquationTable MicroModelica::IR::Model::BDFDerivatives | ( | ) |
|
inline |
Definition at line 178 of file class.hpp.
Referenced by MicroModelica::Generator::Files::makefile().
Definition at line 601 of file class.cpp.
Referenced by addEvent().
|
inline |
Definition at line 191 of file class.hpp.
Referenced by MicroModelica::Generator::QSSModelInstance::allocateSolver().
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |
Definition at line 506 of file class.cpp.
References MicroModelica::Util::ModelConfig::instance(), and MicroModelica::Util::ModelConfig::lookup().
|
inlinevirtual |
Implements MicroModelica::IR::Class.
|
inline |
Definition at line 186 of file class.hpp.
Referenced by MicroModelica::Generator::Files::makefile().
|
inline |
|
inline |
|
virtual |
Implements MicroModelica::IR::Class.
|
virtual |
Implements MicroModelica::IR::Class.
|
virtual |
Implements MicroModelica::IR::Class.
|
virtual |
Implements MicroModelica::IR::Class.
|
virtual |
Implements MicroModelica::IR::Class.
Definition at line 363 of file class.cpp.
References _include_directories, MicroModelica::IR::FunctionAnnotation::includeDirectory(), and ModelTable< Key, Value >::insert().
|
virtual |
Implements MicroModelica::IR::Class.
Definition at line 436 of file class.cpp.
Referenced by MicroModelica::IR::Settings::leave().
|
virtual |
Implements MicroModelica::IR::Class.
Definition at line 288 of file class.cpp.
References MicroModelica::Util::Variable::size().
|
virtual |
Implements MicroModelica::IR::Class.
Definition at line 286 of file class.cpp.
References MicroModelica::Util::Variable::hasOffset().
|
inline |
Definition at line 187 of file class.hpp.
Referenced by MicroModelica::Generator::Files::makefile().
|
inline |
Definition at line 185 of file class.hpp.
Referenced by MicroModelica::Generator::Files::makefile().
|
inlinevirtual |
Implements MicroModelica::IR::Class.
|
protected |
Definition at line 515 of file class.cpp.
References _ordered_derivatives, and ModelTable< Key, Value >::insert().
|
inline |
Definition at line 183 of file class.hpp.
Referenced by MicroModelica::Generator::Files::run().
|
inline |
|
protected |
Definition at line 479 of file class.cpp.
References MicroModelica::IR::Equation::id(), ModelTable< Key, Value >::insert(), MicroModelica::IR::EQUATION::QSSBDFDerivative, and MicroModelica::IR::Equation::setType().
|
protected |
void MicroModelica::IR::Model::setCalledFunctions | ( | FunctionTable & | fs | ) |
Definition at line 401 of file class.cpp.
References addFunction().
void MicroModelica::IR::Model::setEvents | ( | ) |
Definition at line 683 of file class.cpp.
References addEvent().
void MicroModelica::IR::Model::setInputs | ( | ) |
Definition at line 741 of file class.cpp.
References _algebraic_nbr, _algebraics, _annotations, _derivatives, _events, _ordered_derivatives, _state_nbr, MicroModelica::Util::ModelConfig::instance(), MicroModelica::Util::ModelConfig::setAlgebraicNbr(), MicroModelica::Util::ModelConfig::setAlgebraics(), MicroModelica::Util::ModelConfig::setDerivatives(), MicroModelica::Util::ModelConfig::setEvents(), MicroModelica::Util::ModelConfig::setModelAnnotations(), MicroModelica::Util::ModelConfig::setOrderedDerivatives(), and MicroModelica::Util::ModelConfig::setStateNbr().
void MicroModelica::IR::Model::setOutputs | ( | ) |
Definition at line 715 of file class.cpp.
References _input_id, _input_nbr, _inputs, MicroModelica::IR::Equation::autonomous(), MicroModelica::IR::Equation::hasRange(), MicroModelica::Generator::WRITER::Input, ModelTable< Key, Value >::insert(), MicroModelica::IR::Equation::lhs(), and MicroModelica::IR::Equation::range().
|
protected |
|
protected |
|
inline |
Definition at line 180 of file class.hpp.
Referenced by MicroModelica::Generator::QSSModelInstance::allocateSolver().
|
virtual |
Implements MicroModelica::IR::Class.
Definition at line 284 of file class.cpp.
Referenced by MicroModelica::Generator::QSSModelInstance::generate().
|
protected |
Definition at line 251 of file class.hpp.
Referenced by addEquation().
|
protected |
Definition at line 246 of file class.hpp.
Referenced by setInputs().
|
protected |
Definition at line 232 of file class.hpp.
Referenced by addEquation(), and setInputs().
|
protected |
Definition at line 228 of file class.hpp.
Referenced by addEvent(), and setInputs().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Definition at line 230 of file class.hpp.
Referenced by setInputs().
|
protected |
|
protected |
Definition at line 253 of file class.hpp.
Referenced by addEvent().
|
protected |
Definition at line 247 of file class.hpp.
Referenced by addEvent().
|
protected |
Definition at line 234 of file class.hpp.
Referenced by addEvent(), and setInputs().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Definition at line 255 of file class.hpp.
Referenced by setOutputs().
|
protected |
Definition at line 249 of file class.hpp.
Referenced by setOutputs().
|
protected |
Definition at line 235 of file class.hpp.
Referenced by setOutputs().
|
protected |
|
protected |
Definition at line 240 of file class.hpp.
Referenced by addFunction().
|
protected |
Definition at line 231 of file class.hpp.
Referenced by orderEquations(), and setInputs().
|
protected |
|
protected |
|
protected |
|
protected |
Definition at line 244 of file class.hpp.
Referenced by setInputs().