OMSimulatorLib
The OMSimulator project is a FMI-based co-simulation environment.
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
oms::ComponentFMU3CS Class Reference

#include <ComponentFMU3CS.h>

Inheritance diagram for oms::ComponentFMU3CS:
oms::Component

Public Member Functions

 ~ComponentFMU3CS ()
 
const FMUInfogetFMUInfo () const
 
oms_status_enu_t exportToSSD (pugi::xml_node &node, Snapshot &snapshot, std::string variantName) const
 
oms_status_enu_t exportToSSV (pugi::xml_node &ssvNode)
 
void getFilteredUnitDefinitionsToSSD (std::map< std::string, std::map< std::string, std::string >> &unitDefinitions)
 
void getFilteredEnumerationDefinitionsToSSD (std::map< std::string, std::map< std::string, std::string >> &enumerationDefinitions)
 
oms_status_enu_t exportToSSVTemplate (pugi::xml_node &ssvNode, Snapshot &snapshot)
 
oms_status_enu_t exportToSSMTemplate (pugi::xml_node &ssmNode)
 
oms_status_enu_t instantiate ()
 
oms_status_enu_t initialize ()
 
oms_status_enu_t terminate ()
 
oms_status_enu_t reset ()
 
oms_status_enu_t stepUntil (double stopTime)
 
oms_status_enu_t initializeDependencyGraph_initialUnknowns ()
 
oms_status_enu_t initializeDependencyGraph_outputs ()
 
VariablegetVariable (const ComRef &cref)
 
ValuesgetValues ()
 
oms_status_enu_t setValuesResources (Values &values)
 
oms_status_enu_t getBoolean (const ComRef &cref, bool &value)
 
oms_status_enu_t getBoolean (const fmi3ValueReference &vr, bool &value)
 
oms_status_enu_t getInteger (const ComRef &cref, int &value)
 
oms_status_enu_t getInteger (const fmi3ValueReference &vr, int &value, oms_signal_numeric_type_enu_t numericType)
 
oms_status_enu_t getReal (const ComRef &cref, double &value)
 
oms_status_enu_t getReal (const fmi3ValueReference &vr, double &value, oms_signal_numeric_type_enu_t numericType)
 
oms_status_enu_t getString (const ComRef &cref, std::string &value)
 
oms_status_enu_t getString (const fmi3ValueReference &vr, std::string &value)
 
oms_status_enu_t setBoolean (const ComRef &cref, bool value)
 
oms_status_enu_t setInteger (const ComRef &cref, int value)
 
oms_status_enu_t setReal (const ComRef &cref, double value)
 
oms_status_enu_t setString (const ComRef &cref, const std::string &value)
 
oms_status_enu_t setUnit (const ComRef &cref, const std::string &value)
 
oms_status_enu_t getDirectionalDerivative (const ComRef &unknownCref, const ComRef &knownCref, double &value)
 
oms_status_enu_t getDirectionalDerivativeHeper (const int unknownIndex, const int knownindex, const std::vector< int > &dependencyList, double &value)
 
oms_status_enu_t deleteStartValue (const ComRef &cref)
 
oms_status_enu_t updateOrDeleteStartValueInReplacedComponent (std::vector< std::string > &warningList)
 
oms_status_enu_t setFmuTime (double time)
 
fmiHandle * getFMU ()
 
std::vector< VariablegetAllVariables ()
 
oms_status_enu_t getRealOutputDerivative (const ComRef &cref, SignalDerivative &der)
 
oms_status_enu_t setRealInputDerivative (const ComRef &cref, const SignalDerivative &der)
 
oms_status_enu_t registerSignalsForResultFile (ResultWriter &resultFile)
 
oms_status_enu_t updateSignals (ResultWriter &resultWriter)
 
oms_status_enu_t addSignalsToResults (const char *regex)
 
oms_status_enu_t removeSignalsFromResults (const char *regex)
 
bool getCanGetAndSetState ()
 
oms_status_enu_t saveState ()
 
oms_status_enu_t freeState ()
 
oms_status_enu_t restoreState ()
 
void getFilteredSignals (std::vector< Connector > &filteredSignals) const
 
oms_status_enu_t newResources (const std::string &ssvFilename, const std::string &ssmFilename, bool externalResources)
 
oms_status_enu_t setResourcesHelper1 (Values value)
 
oms_status_enu_t setResourcesHelper2 (Values value)
 
oms_status_enu_t setExportName (const std::string &exportName)
 
std::string getExportName () const
 
oms_status_enu_t deleteReferencesInSSD (const std::string &filename)
 
oms_status_enu_t deleteResourcesInSSP (const std::string &filename)
 
void copyModelDescriptionUnit (Values &value)
 
- Public Member Functions inherited from oms::Component
virtual ~Component ()
 
virtual std::vector< ValuesgetValuesResources ()
 
virtual oms_status_enu_t setTime (double time)
 
virtual oms_status_enu_t addResources (std::string &filename)
 
const ComRefgetCref () const
 
ComRef getFullCref () const
 
ElementgetElement ()
 
ConnectorgetConnector (const ComRef &cref)
 
Connector ** getConnectors ()
 
oms_status_enu_t deleteConnector (const ComRef &cref)
 
void getAllResources (std::vector< std::string > &resources) const
 
const std::string & getPath () const
 
const std::string & getTempDir () const
 
void setPath (const std::string &newPath)
 
void setTempDir (const std::string &tempDir)
 
oms_component_enu_t getType () const
 
SystemgetParentSystem () const
 
ModelgetModel () const
 
void setGeometry (const ssd::ElementGeometry &geometry)
 
const DirectedGraphgetInitialUnknownsGraph ()
 
const DirectedGraphgetOutputsGraph ()
 
oms_status_enu_t rename (const ComRef &newCref)
 rename submodules, e.g., fmu:s More...
 

Static Public Member Functions

static ComponentNewComponent (const ComRef &cref, System *parentSystem, const std::string &fmuPath, std::string replaceComponent="")
 
static ComponentNewComponent (const pugi::xml_node &node, System *parentSystem, const std::string &sspVersion, const Snapshot &snapshot, std::string variantName)
 

Protected Member Functions

 ComponentFMU3CS (const ComRef &cref, System *parentSystem, const std::string &fmuPath)
 
 ComponentFMU3CS (ComponentFMU3CS const &copy)
 not implemented More...
 
ComponentFMU3CSoperator= (ComponentFMU3CS const &copy)
 not implemented More...
 
oms_status_enu_t renameValues (const ComRef &oldCref, const ComRef &newCref)
 
void dumpInitialUnknowns ()
 
- Protected Member Functions inherited from oms::Component
 Component (const ComRef &cref, oms_component_enu_t type, System *parentSystem, const std::string &path)
 
 Component (Component const &)
 not implemented More...
 
Componentoperator= (Component const &)
 not implemented More...
 

Private Member Functions

oms::ComRef getValidCref (ComRef cref)
 

Private Attributes

fmi3LogMessageCallback omsfmi3logger
 
fmiHandle * fmu = NULL
 
FMUInfo fmuInfo
 
std::vector< VariableallVariables
 
std::vector< unsigned int > calculatedParameters
 
std::vector< unsigned int > derivatives
 
std::vector< unsigned int > inputs
 
std::vector< unsigned int > outputs
 
std::vector< unsigned int > parameters
 
std::vector< bool > exportVariables
 
std::string exportName
 export name for the component, used in the result file More...
 
Values values
 start values defined before instantiating the FMU and external inputs defined after initialization More...
 
std::unordered_map< unsigned int, unsigned int > resultFileMapping
 
double time
 
fmi3FMUState fmuState = NULL
 
double fmuStateTime
 

Additional Inherited Members

- Protected Attributes inherited from oms::Component
DirectedGraph initialUnknownsGraph
 
DirectedGraph outputsGraph
 
Element element
 
std::vector< Connector * > connectors
 
Clock clock
 
unsigned int clock_id
 

Constructor & Destructor Documentation

◆ ~ComponentFMU3CS()

oms::ComponentFMU3CS::~ComponentFMU3CS ( )

◆ ComponentFMU3CS() [1/2]

oms::ComponentFMU3CS::ComponentFMU3CS ( const ComRef cref,
System parentSystem,
const std::string &  fmuPath 
)
protected

◆ ComponentFMU3CS() [2/2]

oms::ComponentFMU3CS::ComponentFMU3CS ( ComponentFMU3CS const &  copy)
protected

not implemented

Member Function Documentation

◆ addSignalsToResults()

oms_status_enu_t oms::ComponentFMU3CS::addSignalsToResults ( const char *  regex)
virtual

Implements oms::Component.

◆ copyModelDescriptionUnit()

void oms::ComponentFMU3CS::copyModelDescriptionUnit ( Values value)

◆ deleteReferencesInSSD()

oms_status_enu_t oms::ComponentFMU3CS::deleteReferencesInSSD ( const std::string &  filename)
virtual

Reimplemented from oms::Component.

◆ deleteResourcesInSSP()

oms_status_enu_t oms::ComponentFMU3CS::deleteResourcesInSSP ( const std::string &  filename)
virtual

Reimplemented from oms::Component.

◆ deleteStartValue()

oms_status_enu_t oms::ComponentFMU3CS::deleteStartValue ( const ComRef cref)
virtual

Reimplemented from oms::Component.

◆ dumpInitialUnknowns()

void oms::ComponentFMU3CS::dumpInitialUnknowns ( )
protected

◆ exportToSSD()

oms_status_enu_t oms::ComponentFMU3CS::exportToSSD ( pugi::xml_node &  node,
Snapshot snapshot,
std::string  variantName 
) const
virtual

Implements oms::Component.

◆ exportToSSMTemplate()

oms_status_enu_t oms::ComponentFMU3CS::exportToSSMTemplate ( pugi::xml_node &  ssmNode)
virtual

Reimplemented from oms::Component.

◆ exportToSSV()

oms_status_enu_t oms::ComponentFMU3CS::exportToSSV ( pugi::xml_node &  ssvNode)
virtual

Reimplemented from oms::Component.

◆ exportToSSVTemplate()

oms_status_enu_t oms::ComponentFMU3CS::exportToSSVTemplate ( pugi::xml_node &  ssvNode,
Snapshot snapshot 
)
virtual

Reimplemented from oms::Component.

◆ freeState()

oms_status_enu_t oms::ComponentFMU3CS::freeState ( )
virtual

Reimplemented from oms::Component.

◆ getAllVariables()

std::vector<Variable> oms::ComponentFMU3CS::getAllVariables ( )
inline

◆ getBoolean() [1/2]

oms_status_enu_t oms::ComponentFMU3CS::getBoolean ( const ComRef cref,
bool &  value 
)
virtual

Reimplemented from oms::Component.

◆ getBoolean() [2/2]

oms_status_enu_t oms::ComponentFMU3CS::getBoolean ( const fmi3ValueReference &  vr,
bool &  value 
)

◆ getCanGetAndSetState()

bool oms::ComponentFMU3CS::getCanGetAndSetState ( )
inlinevirtual

Reimplemented from oms::Component.

◆ getDirectionalDerivative()

oms_status_enu_t oms::ComponentFMU3CS::getDirectionalDerivative ( const ComRef unknownCref,
const ComRef knownCref,
double &  value 
)
virtual

Reimplemented from oms::Component.

◆ getDirectionalDerivativeHeper()

oms_status_enu_t oms::ComponentFMU3CS::getDirectionalDerivativeHeper ( const int  unknownIndex,
const int  knownindex,
const std::vector< int > &  dependencyList,
double &  value 
)

◆ getExportName()

std::string oms::ComponentFMU3CS::getExportName ( ) const
inline

◆ getFilteredEnumerationDefinitionsToSSD()

void oms::ComponentFMU3CS::getFilteredEnumerationDefinitionsToSSD ( std::map< std::string, std::map< std::string, std::string >> &  enumerationDefinitions)
virtual

Reimplemented from oms::Component.

◆ getFilteredSignals()

void oms::ComponentFMU3CS::getFilteredSignals ( std::vector< Connector > &  filteredSignals) const
virtual

Implements oms::Component.

◆ getFilteredUnitDefinitionsToSSD()

void oms::ComponentFMU3CS::getFilteredUnitDefinitionsToSSD ( std::map< std::string, std::map< std::string, std::string >> &  unitDefinitions)
virtual

Reimplemented from oms::Component.

◆ getFMU()

fmiHandle* oms::ComponentFMU3CS::getFMU ( )
inline

◆ getFMUInfo()

const FMUInfo* oms::ComponentFMU3CS::getFMUInfo ( ) const
inlinevirtual

Reimplemented from oms::Component.

◆ getInteger() [1/2]

oms_status_enu_t oms::ComponentFMU3CS::getInteger ( const ComRef cref,
int &  value 
)
virtual

Reimplemented from oms::Component.

◆ getInteger() [2/2]

oms_status_enu_t oms::ComponentFMU3CS::getInteger ( const fmi3ValueReference &  vr,
int &  value,
oms_signal_numeric_type_enu_t  numericType 
)

◆ getReal() [1/2]

oms_status_enu_t oms::ComponentFMU3CS::getReal ( const ComRef cref,
double &  value 
)
virtual

Reimplemented from oms::Component.

◆ getReal() [2/2]

oms_status_enu_t oms::ComponentFMU3CS::getReal ( const fmi3ValueReference &  vr,
double &  value,
oms_signal_numeric_type_enu_t  numericType 
)

◆ getRealOutputDerivative()

oms_status_enu_t oms::ComponentFMU3CS::getRealOutputDerivative ( const ComRef cref,
SignalDerivative der 
)
virtual

Reimplemented from oms::Component.

◆ getString() [1/2]

oms_status_enu_t oms::ComponentFMU3CS::getString ( const ComRef cref,
std::string &  value 
)
virtual

Reimplemented from oms::Component.

◆ getString() [2/2]

oms_status_enu_t oms::ComponentFMU3CS::getString ( const fmi3ValueReference &  vr,
std::string &  value 
)

◆ getValidCref()

oms::ComRef oms::ComponentFMU3CS::getValidCref ( ComRef  cref)
private

◆ getValues()

Values& oms::ComponentFMU3CS::getValues ( )
inlinevirtual

Reimplemented from oms::Component.

◆ getVariable()

oms::Variable * oms::ComponentFMU3CS::getVariable ( const ComRef cref)
virtual

Implements oms::Component.

◆ initialize()

oms_status_enu_t oms::ComponentFMU3CS::initialize ( )
virtual

Implements oms::Component.

◆ initializeDependencyGraph_initialUnknowns()

oms_status_enu_t oms::ComponentFMU3CS::initializeDependencyGraph_initialUnknowns ( )

◆ initializeDependencyGraph_outputs()

oms_status_enu_t oms::ComponentFMU3CS::initializeDependencyGraph_outputs ( )

◆ instantiate()

oms_status_enu_t oms::ComponentFMU3CS::instantiate ( )
virtual

Implements oms::Component.

◆ NewComponent() [1/2]

oms::Component * oms::ComponentFMU3CS::NewComponent ( const ComRef cref,
oms::System parentSystem,
const std::string &  fmuPath,
std::string  replaceComponent = "" 
)
static

◆ NewComponent() [2/2]

oms::Component * oms::ComponentFMU3CS::NewComponent ( const pugi::xml_node &  node,
oms::System parentSystem,
const std::string &  sspVersion,
const Snapshot snapshot,
std::string  variantName 
)
static

◆ newResources()

oms_status_enu_t oms::ComponentFMU3CS::newResources ( const std::string &  ssvFilename,
const std::string &  ssmFilename,
bool  externalResources 
)
virtual

Reimplemented from oms::Component.

◆ operator=()

ComponentFMU3CS& oms::ComponentFMU3CS::operator= ( ComponentFMU3CS const &  copy)
protected

not implemented

◆ registerSignalsForResultFile()

oms_status_enu_t oms::ComponentFMU3CS::registerSignalsForResultFile ( ResultWriter resultFile)
virtual

Implements oms::Component.

◆ removeSignalsFromResults()

oms_status_enu_t oms::ComponentFMU3CS::removeSignalsFromResults ( const char *  regex)
virtual

Implements oms::Component.

◆ renameValues()

oms_status_enu_t oms::ComponentFMU3CS::renameValues ( const ComRef oldCref,
const ComRef newCref 
)
protectedvirtual

Reimplemented from oms::Component.

◆ reset()

oms_status_enu_t oms::ComponentFMU3CS::reset ( )
virtual

Implements oms::Component.

◆ restoreState()

oms_status_enu_t oms::ComponentFMU3CS::restoreState ( )
virtual

Reimplemented from oms::Component.

◆ saveState()

oms_status_enu_t oms::ComponentFMU3CS::saveState ( )
virtual

Reimplemented from oms::Component.

◆ setBoolean()

oms_status_enu_t oms::ComponentFMU3CS::setBoolean ( const ComRef cref,
bool  value 
)
virtual

Reimplemented from oms::Component.

◆ setExportName()

oms_status_enu_t oms::ComponentFMU3CS::setExportName ( const std::string &  exportName)
inlinevirtual

Reimplemented from oms::Component.

◆ setFmuTime()

oms_status_enu_t oms::ComponentFMU3CS::setFmuTime ( double  time)
inline

◆ setInteger()

oms_status_enu_t oms::ComponentFMU3CS::setInteger ( const ComRef cref,
int  value 
)
virtual

Reimplemented from oms::Component.

◆ setReal()

oms_status_enu_t oms::ComponentFMU3CS::setReal ( const ComRef cref,
double  value 
)
virtual

Reimplemented from oms::Component.

◆ setRealInputDerivative()

oms_status_enu_t oms::ComponentFMU3CS::setRealInputDerivative ( const ComRef cref,
const SignalDerivative der 
)
virtual

Reimplemented from oms::Component.

◆ setResourcesHelper1()

oms_status_enu_t oms::ComponentFMU3CS::setResourcesHelper1 ( Values  value)

◆ setResourcesHelper2()

oms_status_enu_t oms::ComponentFMU3CS::setResourcesHelper2 ( Values  value)

◆ setString()

oms_status_enu_t oms::ComponentFMU3CS::setString ( const ComRef cref,
const std::string &  value 
)
virtual

Reimplemented from oms::Component.

◆ setUnit()

oms_status_enu_t oms::ComponentFMU3CS::setUnit ( const ComRef cref,
const std::string &  value 
)
virtual

Reimplemented from oms::Component.

◆ setValuesResources()

oms_status_enu_t oms::ComponentFMU3CS::setValuesResources ( Values values)
virtual

Reimplemented from oms::Component.

◆ stepUntil()

oms_status_enu_t oms::ComponentFMU3CS::stepUntil ( double  stopTime)
virtual

Reimplemented from oms::Component.

◆ terminate()

oms_status_enu_t oms::ComponentFMU3CS::terminate ( )
virtual

Implements oms::Component.

◆ updateOrDeleteStartValueInReplacedComponent()

oms_status_enu_t oms::ComponentFMU3CS::updateOrDeleteStartValueInReplacedComponent ( std::vector< std::string > &  warningList)
virtual

Reimplemented from oms::Component.

◆ updateSignals()

oms_status_enu_t oms::ComponentFMU3CS::updateSignals ( ResultWriter resultWriter)
virtual

Implements oms::Component.

Member Data Documentation

◆ allVariables

std::vector<Variable> oms::ComponentFMU3CS::allVariables
private

◆ calculatedParameters

std::vector<unsigned int> oms::ComponentFMU3CS::calculatedParameters
private

◆ derivatives

std::vector<unsigned int> oms::ComponentFMU3CS::derivatives
private

◆ exportName

std::string oms::ComponentFMU3CS::exportName
private

export name for the component, used in the result file

◆ exportVariables

std::vector<bool> oms::ComponentFMU3CS::exportVariables
private

◆ fmu

fmiHandle* oms::ComponentFMU3CS::fmu = NULL
private

◆ fmuInfo

FMUInfo oms::ComponentFMU3CS::fmuInfo
private

◆ fmuState

fmi3FMUState oms::ComponentFMU3CS::fmuState = NULL
private

◆ fmuStateTime

double oms::ComponentFMU3CS::fmuStateTime
private

◆ inputs

std::vector<unsigned int> oms::ComponentFMU3CS::inputs
private

◆ omsfmi3logger

fmi3LogMessageCallback oms::ComponentFMU3CS::omsfmi3logger
private

◆ outputs

std::vector<unsigned int> oms::ComponentFMU3CS::outputs
private

◆ parameters

std::vector<unsigned int> oms::ComponentFMU3CS::parameters
private

◆ resultFileMapping

std::unordered_map<unsigned int , unsigned int > oms::ComponentFMU3CS::resultFileMapping
private

◆ time

double oms::ComponentFMU3CS::time
private

◆ values

Values oms::ComponentFMU3CS::values
private

start values defined before instantiating the FMU and external inputs defined after initialization


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