32 #ifndef _OMS_COMPONENT_H_
33 #define _OMS_COMPONENT_H_
45 #include "OMSimulator/Types.h"
49 #include <pugixml.hpp>
57 void fmi2logger(fmi2ComponentEnvironment env, fmi2String instanceName, fmi2Status status, fmi2String category, fmi2String message, ...);
58 void fmi3logger(fmi3InstanceEnvironment env, fmi3Status status, fmi3String category, fmi3String message);
65 virtual oms_status_enu_t
exportToSSD(pugi::xml_node& node,
Snapshot& snapshot, std::string variantName)
const = 0;
74 virtual oms_status_enu_t
reset() = 0;
105 virtual oms_status_enu_t
setExportName(
const std::string & exportName) {
return oms_status_ok; }
120 void setPath(
const std::string& newPath) { this->
path = newPath; }
#define logError_NotImplemented
Definition: Logging.h:107
ComRef - component reference.
Definition: ComRef.h:47
Definition: Component.h:60
oms_status_enu_t deleteConnector(const ComRef &cref)
Definition: Component.cpp:158
virtual void getFilteredEnumerationDefinitionsToSSD(std::map< std::string, std::map< std::string, std::string >> &enumerationDefinitions)
Definition: Component.h:68
Element * getElement()
Definition: Component.h:113
std::string tempDir
unzipped fmu
Definition: Component.h:157
virtual oms_status_enu_t setReal(const ComRef &cref, double value)
Definition: Component.h:99
virtual oms_status_enu_t setExportName(const std::string &exportName)
Definition: Component.h:105
Element element
Definition: Component.h:146
virtual oms_status_enu_t freeState()
Definition: Component.h:88
virtual oms_status_enu_t restoreState()
Definition: Component.h:95
virtual oms_status_enu_t setString(const ComRef &cref, const std::string &value)
Definition: Component.h:100
virtual oms_status_enu_t setValuesResources(Values &values)
Definition: Component.h:84
std::string path
resource file (fmu, mat)
Definition: Component.h:156
virtual bool getCanGetAndSetState()
Definition: Component.h:79
virtual oms_status_enu_t deleteStartValue(const ComRef &cref)
Definition: Component.h:81
virtual void getFilteredUnitDefinitionsToSSD(std::map< std::string, std::map< std::string, std::string >> &unitDefinitions)
Definition: Component.h:67
std::vector< Connector * > connectors
Definition: Component.h:147
ComRef cref
Definition: Component.h:154
virtual const FMUInfo * getFMUInfo() const
Definition: Component.h:80
virtual oms_status_enu_t deleteResourcesInSSP(const std::string &filename)
Definition: Component.h:109
virtual oms_status_enu_t getDirectionalDerivative(const ComRef &unknownCref, const ComRef &knownCref, double &value)
Definition: Component.h:94
virtual oms_status_enu_t getInteger(const ComRef &cref, int &value)
Definition: Component.h:90
void setTempDir(const std::string &tempDir)
Definition: Component.h:121
virtual oms_status_enu_t setTime(double time)
Definition: Component.h:104
void setPath(const std::string &newPath)
Definition: Component.h:120
virtual oms_status_enu_t addResources(std::string &filename)
Definition: Component.h:107
virtual oms_status_enu_t getBoolean(const ComRef &cref, bool &value)
Definition: Component.h:89
virtual oms_status_enu_t removeSignalsFromResults(const char *regex)=0
virtual oms_status_enu_t getString(const ComRef &cref, std::string &value)
Definition: Component.h:92
unsigned int clock_id
Definition: Component.h:150
virtual oms_status_enu_t setInteger(const ComRef &cref, int value)
Definition: Component.h:98
Clock clock
Definition: Component.h:149
virtual oms_status_enu_t initialize()=0
oms_component_enu_t getType() const
Definition: Component.h:122
virtual oms_status_enu_t newResources(const std::string &ssvFileName, const std::string &ssmFileName, bool externalResources)
Definition: Component.h:106
virtual oms_status_enu_t setUnit(const ComRef &cref, const std::string &value)
Definition: Component.h:101
virtual oms_status_enu_t saveState()
Definition: Component.h:96
virtual oms_status_enu_t exportToSSVTemplate(pugi::xml_node &ssvNode, Snapshot &snapshot)
Definition: Component.h:87
Connector * getConnector(const ComRef &cref)
Definition: Component.cpp:149
virtual oms_status_enu_t terminate()=0
System * parentSystem
Definition: Component.h:153
virtual std::vector< Values > getValuesResources()
Definition: Component.h:82
virtual oms_status_enu_t exportToSSMTemplate(pugi::xml_node &ssmNode)
Definition: Component.h:86
Values values
Definition: Component.h:158
virtual oms_status_enu_t stepUntil(double stopTime)
Definition: Component.h:103
Component & operator=(Component const &)
not implemented
Connector ** getConnectors()
Definition: Component.h:115
virtual oms_status_enu_t addSignalsToResults(const char *regex)=0
virtual oms_status_enu_t deleteReferencesInSSD(const std::string &filename)
Definition: Component.h:108
virtual oms_status_enu_t registerSignalsForResultFile(ResultWriter &resultFile)=0
Component(const ComRef &cref, oms_component_enu_t type, System *parentSystem, const std::string &path)
Definition: Component.cpp:125
ComRef getFullCref() const
Definition: Component.cpp:139
const DirectedGraph & getOutputsGraph()
Definition: Component.h:128
virtual oms_status_enu_t setRealInputDerivative(const ComRef &cref, const SignalDerivative &der)
Definition: Component.h:102
virtual oms_status_enu_t renameValues(const ComRef &oldCref, const ComRef &newCref)
Definition: Component.h:141
DirectedGraph initialUnknownsGraph
Definition: Component.h:144
virtual oms_status_enu_t exportToSSD(pugi::xml_node &node, Snapshot &snapshot, std::string variantName) const =0
System * getParentSystem() const
Definition: Component.h:123
virtual oms_status_enu_t getReal(const ComRef &cref, double &value)
Definition: Component.h:91
virtual void getFilteredSignals(std::vector< Connector > &filteredSignals) const =0
virtual oms_status_enu_t reset()=0
DirectedGraph outputsGraph
Definition: Component.h:145
const ComRef & getCref() const
Definition: Component.h:111
oms_status_enu_t rename(const ComRef &newCref)
rename submodules, e.g., fmu:s
Definition: Component.cpp:179
virtual oms_status_enu_t getRealOutputDerivative(const ComRef &cref, SignalDerivative &der)
Definition: Component.h:93
virtual oms_status_enu_t setBoolean(const ComRef &cref, bool value)
Definition: Component.h:97
virtual oms_status_enu_t instantiate()=0
virtual oms_status_enu_t updateOrDeleteStartValueInReplacedComponent(std::vector< std::string > &warningList)
Definition: Component.h:85
void getAllResources(std::vector< std::string > &resources) const
Definition: Component.h:117
Component(Component const &)
not implemented
Model & getModel() const
Definition: Component.cpp:144
oms_component_enu_t type
Definition: Component.h:155
const DirectedGraph & getInitialUnknownsGraph()
Definition: Component.h:127
virtual Variable * getVariable(const ComRef &cref)=0
void setGeometry(const ssd::ElementGeometry &geometry)
Definition: Component.h:125
virtual oms_status_enu_t exportToSSV(pugi::xml_node &ssvNode)
Definition: Component.h:66
virtual oms_status_enu_t updateSignals(ResultWriter &resultWriter)=0
const std::string & getPath() const
Definition: Component.h:118
virtual Values & getValues()
Definition: Component.h:83
const std::string & getTempDir() const
Definition: Component.h:119
virtual ~Component()
Definition: Component.cpp:132
Connector.
Definition: Connector.h:50
Definition: DirectedGraph.h:65
Element.
Definition: Element.h:47
void setGeometry(const oms::ssd::ElementGeometry *newGeometry)
Definition: Element.cpp:66
FMU info.
Definition: FMUInfo.h:45
Definition: ResultWriter.h:69
Definition: SignalDerivative.h:42
Definition: Snapshot.h:47
Definition: Variable.h:46
Definition: ElementGeometry.h:46
void fmi3logger(fmi3InstanceEnvironment env, fmi3Status status, fmi3String category, fmi3String message)
Definition: Component.cpp:92
void fmi2logger(fmi2ComponentEnvironment env, fmi2String instanceName, fmi2Status status, fmi2String category, fmi2String message,...)
Definition: Component.cpp:42