OMSimulatorLib
The OMSimulator project is a FMI-based co-simulation environment.
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
oms::Component Class Referenceabstract

#include <Component.h>

Inheritance diagram for oms::Component:
[legend]
Collaboration diagram for oms::Component:
[legend]

Public Member Functions

virtual ~Component ()
 
virtual oms_status_enu_t addSignalsToResults (const char *regex)=0
 
virtual oms_status_enu_t exportToSSD (pugi::xml_node &node, Snapshot &snapshot, std::string variantName) const =0
 
virtual oms_status_enu_t exportToSSV (pugi::xml_node &ssvNode)
 
virtual void getFilteredUnitDefinitionsToSSD (std::map< std::string, std::map< std::string, std::string > > &unitDefinitions)
 
virtual void getFilteredEnumerationDefinitionsToSSD (std::map< std::string, std::map< std::string, std::string > > &enumerationDefinitions)
 
virtual oms_status_enu_t initialize ()=0
 
virtual oms_status_enu_t instantiate ()=0
 
virtual oms_status_enu_t registerSignalsForResultFile (ResultWriter &resultFile)=0
 
virtual oms_status_enu_t removeSignalsFromResults (const char *regex)=0
 
virtual oms_status_enu_t reset ()=0
 
virtual oms_status_enu_t terminate ()=0
 
virtual oms_status_enu_t updateSignals (ResultWriter &resultWriter)=0
 
virtual VariablegetVariable (const ComRef &cref)=0
 
virtual oms_status_enu_t getVariableType (const ComRef &cref, oms_signal_type_enu_t &type)
 
virtual bool getCanGetAndSetState ()
 
virtual const FMUInfogetFMUInfo () const
 
virtual oms_status_enu_t deleteStartValue (const ComRef &cref)
 
virtual std::vector< ValuesgetValuesResources ()
 
virtual ValuesgetValues ()
 
virtual oms_status_enu_t setValuesResources (Values &values)
 
virtual oms_status_enu_t updateOrDeleteStartValueInReplacedComponent (std::vector< std::string > &warningList)
 
virtual oms_status_enu_t exportToSSMTemplate (pugi::xml_node &ssmNode)
 
virtual oms_status_enu_t exportToSSVTemplate (pugi::xml_node &ssvNode, Snapshot &snapshot)
 
virtual oms_status_enu_t freeState ()
 
virtual oms_status_enu_t getBoolean (const ComRef &cref, bool &value)
 
virtual oms_status_enu_t getInteger (const ComRef &cref, int &value)
 
virtual oms_status_enu_t getReal (const ComRef &cref, double &value)
 
virtual oms_status_enu_t getString (const ComRef &cref, std::string &value)
 
virtual oms_status_enu_t getRealOutputDerivative (const ComRef &cref, SignalDerivative &der)
 
virtual oms_status_enu_t getDirectionalDerivative (const ComRef &unknownCref, const ComRef &knownCref, double &value)
 
virtual oms_status_enu_t restoreState ()
 
virtual oms_status_enu_t saveState ()
 
virtual oms_status_enu_t setBoolean (const ComRef &cref, bool value)
 
virtual oms_status_enu_t setInteger (const ComRef &cref, int value)
 
virtual oms_status_enu_t setReal (const ComRef &cref, double value)
 
virtual oms_status_enu_t setString (const ComRef &cref, const std::string &value)
 
virtual oms_status_enu_t setUnit (const ComRef &cref, const std::string &value)
 
virtual oms_status_enu_t setRealInputDerivative (const ComRef &cref, const SignalDerivative &der)
 
virtual oms_status_enu_t stepUntil (double stopTime)
 
virtual oms_status_enu_t setTime (double time)
 
virtual oms_status_enu_t setExportName (const std::string &exportName)
 
virtual oms_status_enu_t newResources (const std::string &ssvFileName, const std::string &ssmFileName, bool externalResources)
 
virtual oms_status_enu_t addResources (std::string &filename)
 
virtual oms_status_enu_t deleteReferencesInSSD (const std::string &filename)
 
virtual oms_status_enu_t deleteResourcesInSSP (const std::string &filename)
 
virtual size_t getNumberOfContinuousStates () const
 
virtual size_t getNumberOfEventIndicators () const
 
virtual oms_status_enu_t getContinuousStates (double *states)
 
virtual oms_status_enu_t setContinuousStates (double *states)
 
virtual oms_status_enu_t getDerivatives (double *derivatives)
 
virtual oms_status_enu_t getNominalsOfContinuousStates (double *nominals)
 
virtual oms_status_enu_t getEventindicators (double *eventindicators)
 
virtual oms_status_enu_t getEventindicators (double *eventindicators, size_t size)
 
virtual fmiHandle * getFMU ()
 
virtual fmi2EventInfo * getEventInfo ()
 
virtual oms_status_enu_t doEventIteration ()
 
virtual oms_status_enu_t completedIntegratorStep (bool noSetFMUStatePriorToCurrentPoint, bool &enterEventMode, bool &terminateSimulation)
 
virtual oms_status_enu_t enterEventMode ()
 
virtual oms_status_enu_t enterContinuousTimeMode ()
 
virtual bool getNewDiscreteStatesNeeded ()
 
virtual bool getTerminateSimulation ()
 
virtual bool getNominalsOfContinuousStatesChanged ()
 
virtual bool getValuesOfContinuousStatesChanged ()
 
virtual bool getNextEventTimeDefined ()
 
virtual double getNextEventTime ()
 
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
 
virtual void getFilteredSignals (std::vector< Connector > &filteredSignals) const =0
 

Protected Member Functions

 Component (const ComRef &cref, oms_component_enu_t type, System *parentSystem, const std::string &path)
 
 Component (Component const &)
 not implemented
 
Componentoperator= (Component const &)
 not implemented
 
virtual oms_status_enu_t renameValues (const ComRef &oldCref, const ComRef &newCref)
 

Protected Attributes

DirectedGraph initialUnknownsGraph
 
DirectedGraph outputsGraph
 
Element element
 
std::vector< Connector * > connectors
 
Clock clock
 
unsigned int clock_id
 

Private Attributes

SystemparentSystem
 
ComRef cref
 
oms_component_enu_t type
 
std::string path
 resource file (fmu, mat)
 
std::string tempDir
 unzipped fmu
 
Values values
 

Constructor & Destructor Documentation

◆ ~Component()

oms::Component::~Component ( )
virtual

◆ Component() [1/2]

oms::Component::Component ( const ComRef cref,
oms_component_enu_t  type,
System parentSystem,
const std::string &  path 
)
protected
Here is the call graph for this function:

◆ Component() [2/2]

oms::Component::Component ( Component const &  )
protected

not implemented

Member Function Documentation

◆ addResources()

virtual oms_status_enu_t oms::Component::addResources ( std::string &  filename)
inlinevirtual

◆ addSignalsToResults()

virtual oms_status_enu_t oms::Component::addSignalsToResults ( const char *  regex)
pure virtual

◆ completedIntegratorStep()

virtual oms_status_enu_t oms::Component::completedIntegratorStep ( bool  noSetFMUStatePriorToCurrentPoint,
bool &  enterEventMode,
bool &  terminateSimulation 
)
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ deleteConnector()

oms_status_enu_t oms::Component::deleteConnector ( const ComRef cref)

◆ deleteReferencesInSSD()

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

◆ deleteResourcesInSSP()

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

◆ deleteStartValue()

virtual oms_status_enu_t oms::Component::deleteStartValue ( const ComRef cref)
inlinevirtual

◆ doEventIteration()

virtual oms_status_enu_t oms::Component::doEventIteration ( )
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ enterContinuousTimeMode()

virtual oms_status_enu_t oms::Component::enterContinuousTimeMode ( )
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ enterEventMode()

virtual oms_status_enu_t oms::Component::enterEventMode ( )
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ exportToSSD()

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

◆ exportToSSMTemplate()

virtual oms_status_enu_t oms::Component::exportToSSMTemplate ( pugi::xml_node &  ssmNode)
inlinevirtual

◆ exportToSSV()

virtual oms_status_enu_t oms::Component::exportToSSV ( pugi::xml_node &  ssvNode)
inlinevirtual

◆ exportToSSVTemplate()

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

◆ freeState()

virtual oms_status_enu_t oms::Component::freeState ( )
inlinevirtual

◆ getAllResources()

void oms::Component::getAllResources ( std::vector< std::string > &  resources) const
inline

◆ getBoolean()

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

◆ getCanGetAndSetState()

virtual bool oms::Component::getCanGetAndSetState ( )
inlinevirtual

◆ getConnector()

oms::Connector * oms::Component::getConnector ( const ComRef cref)

◆ getConnectors()

Connector ** oms::Component::getConnectors ( )
inline

◆ getContinuousStates()

virtual oms_status_enu_t oms::Component::getContinuousStates ( double *  states)
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ getCref()

const ComRef & oms::Component::getCref ( ) const
inline

◆ getDerivatives()

virtual oms_status_enu_t oms::Component::getDerivatives ( double *  derivatives)
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ getDirectionalDerivative()

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

◆ getElement()

Element * oms::Component::getElement ( )
inline
Here is the caller graph for this function:

◆ getEventindicators() [1/2]

virtual oms_status_enu_t oms::Component::getEventindicators ( double *  eventindicators)
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ getEventindicators() [2/2]

virtual oms_status_enu_t oms::Component::getEventindicators ( double *  eventindicators,
size_t  size 
)
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ getEventInfo()

virtual fmi2EventInfo * oms::Component::getEventInfo ( )
inlinevirtual

Reimplemented in oms::ComponentFMUME.

◆ getFilteredEnumerationDefinitionsToSSD()

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

◆ getFilteredSignals()

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

◆ getFilteredUnitDefinitionsToSSD()

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

◆ getFMU()

virtual fmiHandle * oms::Component::getFMU ( )
inlinevirtual

◆ getFMUInfo()

virtual const FMUInfo * oms::Component::getFMUInfo ( ) const
inlinevirtual

◆ getFullCref()

oms::ComRef oms::Component::getFullCref ( ) const

◆ getInitialUnknownsGraph()

const DirectedGraph & oms::Component::getInitialUnknownsGraph ( )
inline

◆ getInteger()

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

◆ getModel()

oms::Model & oms::Component::getModel ( ) const

◆ getNewDiscreteStatesNeeded()

virtual bool oms::Component::getNewDiscreteStatesNeeded ( )
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ getNextEventTime()

virtual double oms::Component::getNextEventTime ( )
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ getNextEventTimeDefined()

virtual bool oms::Component::getNextEventTimeDefined ( )
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ getNominalsOfContinuousStates()

virtual oms_status_enu_t oms::Component::getNominalsOfContinuousStates ( double *  nominals)
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ getNominalsOfContinuousStatesChanged()

virtual bool oms::Component::getNominalsOfContinuousStatesChanged ( )
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ getNumberOfContinuousStates()

virtual size_t oms::Component::getNumberOfContinuousStates ( ) const
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ getNumberOfEventIndicators()

virtual size_t oms::Component::getNumberOfEventIndicators ( ) const
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ getOutputsGraph()

const DirectedGraph & oms::Component::getOutputsGraph ( )
inline

◆ getParentSystem()

System * oms::Component::getParentSystem ( ) const
inline

◆ getPath()

const std::string & oms::Component::getPath ( ) const
inline

◆ getReal()

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

◆ getRealOutputDerivative()

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

◆ getString()

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

◆ getTempDir()

const std::string & oms::Component::getTempDir ( ) const
inline

◆ getTerminateSimulation()

virtual bool oms::Component::getTerminateSimulation ( )
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ getType()

oms_component_enu_t oms::Component::getType ( ) const
inline

◆ getValues()

virtual Values & oms::Component::getValues ( )
inlinevirtual

◆ getValuesOfContinuousStatesChanged()

virtual bool oms::Component::getValuesOfContinuousStatesChanged ( )
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ getValuesResources()

virtual std::vector< Values > oms::Component::getValuesResources ( )
inlinevirtual

◆ getVariable()

virtual Variable * oms::Component::getVariable ( const ComRef cref)
pure virtual

Implemented in oms::ComponentFMU3CS, oms::ComponentFMU3ME, oms::ComponentFMUCS, oms::ComponentFMUME, and oms::ComponentTable.

Here is the caller graph for this function:

◆ getVariableType()

virtual oms_status_enu_t oms::Component::getVariableType ( const ComRef cref,
oms_signal_type_enu_t &  type 
)
inlinevirtual

Reimplemented in oms::ComponentTable.

Here is the call graph for this function:

◆ initialize()

virtual oms_status_enu_t oms::Component::initialize ( )
pure virtual

◆ instantiate()

virtual oms_status_enu_t oms::Component::instantiate ( )
pure virtual

◆ newResources()

virtual oms_status_enu_t oms::Component::newResources ( const std::string &  ssvFileName,
const std::string &  ssmFileName,
bool  externalResources 
)
inlinevirtual

◆ operator=()

Component & oms::Component::operator= ( Component const &  )
protected

not implemented

◆ registerSignalsForResultFile()

virtual oms_status_enu_t oms::Component::registerSignalsForResultFile ( ResultWriter resultFile)
pure virtual

◆ removeSignalsFromResults()

virtual oms_status_enu_t oms::Component::removeSignalsFromResults ( const char *  regex)
pure virtual

◆ rename()

oms_status_enu_t oms::Component::rename ( const ComRef newCref)

rename submodules, e.g., fmu:s

◆ renameValues()

virtual oms_status_enu_t oms::Component::renameValues ( const ComRef oldCref,
const ComRef newCref 
)
inlineprotectedvirtual

◆ reset()

virtual oms_status_enu_t oms::Component::reset ( )
pure virtual

◆ restoreState()

virtual oms_status_enu_t oms::Component::restoreState ( )
inlinevirtual

◆ saveState()

virtual oms_status_enu_t oms::Component::saveState ( )
inlinevirtual

◆ setBoolean()

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

◆ setContinuousStates()

virtual oms_status_enu_t oms::Component::setContinuousStates ( double *  states)
inlinevirtual

Reimplemented in oms::ComponentFMU3ME, and oms::ComponentFMUME.

◆ setExportName()

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

◆ setGeometry()

void oms::Component::setGeometry ( const ssd::ElementGeometry geometry)
inline
Here is the call graph for this function:

◆ setInteger()

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

◆ setPath()

void oms::Component::setPath ( const std::string &  newPath)
inline

◆ setReal()

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

◆ setRealInputDerivative()

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

Reimplemented in oms::ComponentFMU3CS, and oms::ComponentFMUCS.

◆ setString()

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

◆ setTempDir()

void oms::Component::setTempDir ( const std::string &  tempDir)
inline

◆ setTime()

virtual oms_status_enu_t oms::Component::setTime ( double  time)
inlinevirtual

◆ setUnit()

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

◆ setValuesResources()

virtual oms_status_enu_t oms::Component::setValuesResources ( Values values)
inlinevirtual

Reimplemented in oms::ComponentFMU3CS, oms::ComponentFMU3ME, oms::ComponentFMUCS, and oms::ComponentFMUME.

Here is the caller graph for this function:

◆ stepUntil()

virtual oms_status_enu_t oms::Component::stepUntil ( double  stopTime)
inlinevirtual

◆ terminate()

virtual oms_status_enu_t oms::Component::terminate ( )
pure virtual

◆ updateOrDeleteStartValueInReplacedComponent()

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

Reimplemented in oms::ComponentFMU3CS, oms::ComponentFMU3ME, oms::ComponentFMUCS, and oms::ComponentFMUME.

Here is the caller graph for this function:

◆ updateSignals()

virtual oms_status_enu_t oms::Component::updateSignals ( ResultWriter resultWriter)
pure virtual

Member Data Documentation

◆ clock

Clock oms::Component::clock
protected

◆ clock_id

unsigned int oms::Component::clock_id
protected

◆ connectors

std::vector<Connector*> oms::Component::connectors
protected

◆ cref

ComRef oms::Component::cref
private

◆ element

Element oms::Component::element
protected

◆ initialUnknownsGraph

DirectedGraph oms::Component::initialUnknownsGraph
protected

◆ outputsGraph

DirectedGraph oms::Component::outputsGraph
protected

◆ parentSystem

System* oms::Component::parentSystem
private

◆ path

std::string oms::Component::path
private

resource file (fmu, mat)

◆ tempDir

std::string oms::Component::tempDir
private

unzipped fmu

◆ type

oms_component_enu_t oms::Component::type
private

◆ values

Values oms::Component::values
private

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