10 #ifndef CORAL_FMI_FMU1_HPP 11 #define CORAL_FMI_FMU1_HPP 17 #include "boost/filesystem/path.hpp" 19 #include "coral/config.h" 27 typedef unsigned int fmi1_value_reference_t;
49 const boost::filesystem::path&);
52 const boost::filesystem::path& fmuDir);
57 FMU1& operator=(
const FMU1&) =
delete;
78 const boost::filesystem::path&
Directory()
const;
98 boost::filesystem::path m_dir;
100 fmi1_import_t* m_handle;
107 class AdditionalPath;
138 bool adaptiveStepSize,
139 double relativeTolerance)
override;
141 void StartSimulation()
override;
142 void EndSimulation()
override;
167 fmi1_import_t* m_handle;
169 bool m_setupComplete =
false;
170 bool m_simStarted =
false;
179 #endif // header guard
FMU import functionality.
Defines a version-independent FMU interface.
An interface for classes that represent imported FMUs.
Definition: fmu.hpp:50
const boost::filesystem::path & Directory() const
Returns the path to the directory in which this FMU was unpacked.
An FMI co-simulation slave instance.
Definition: fmu.hpp:70
fmi1_import_t * FmilibHandle() const
Returns the underlying C API handle (for FMI Library)
An FMI 1.0 co-simulation slave instance.
Definition: fmu1.hpp:114
fmi1_value_reference_t FMIValueReference(coral::model::VariableID variable) const
Returns the FMI value reference for the variable with the given ID.
A description of a slave type.
Definition: model.hpp:148
Definition: variable_io.hpp:28
FMIVersion
Constants that refer to FMI version numbers.
Definition: fmu.hpp:27
std::shared_ptr< coral::fmi::Importer > Importer() const override
Returns the coral::fmi::Importer which was used to import this FMU.
double TimeDuration
The type used to specify (simulation) time durations.
Definition: model.hpp:56
const TimePoint ETERNITY
A special TimePoint value that lies infinitely far in the future.
Definition: model.hpp:46
A class which represents an imported FMI 1.0 FMU.
Definition: fmu1.hpp:44
std::shared_ptr< SlaveInstance1 > InstantiateSlave1()
Creates a new co-simulation slave instance.
std::shared_ptr< coral::fmi::SlaveInstance > InstantiateSlave() override
Creates a co-simulation slave instance of this FMU.
Main module header for coral::model.
coral::fmi::FMIVersion FMIVersion() const override
Which FMI standard version is used in this FMU.
double TimePoint
The type used to specify (simulation) time points.
Definition: model.hpp:42
std::shared_ptr< FMU > Import(const boost::filesystem::path &fmuPath)
Imports and loads an FMU.
const coral::model::SlaveTypeDescription & Description() const override
A description of this FMU.