OMSimulatorLib
The OMSimulator project is a FMI-based co-simulation environment that supports ordinary (i.e., non-delayed) and TLM connections.
Public Attributes | List of all members
oms_fmu_info_t Struct Reference

FMU specific attributes. More...

#include <Types.h>

Inheritance diagram for oms_fmu_info_t:
Inheritance graph
Collaboration diagram for oms_fmu_info_t:
Collaboration graph

Public Attributes

char * author
 
char * copyright
 
char * description
 
oms_fmi_kind_enu_t fmiKind
 
char * fmiVersion
 
char * generationDateAndTime
 
char * generationTool
 
char * guid
 
char * license
 
char * modelName
 
char * path
 
char * version
 
bool canBeInstantiatedOnlyOncePerProcess
 
bool canGetAndSetFMUstate
 
bool canNotUseMemoryManagementFunctions
 
bool canSerializeFMUstate
 
bool completedIntegratorStepNotNeeded
 
bool needsExecutionTool
 
bool providesDirectionalDerivative
 
bool canInterpolateInputs
 
unsigned int maxOutputDerivativeOrder
 

Detailed Description

FMU specific attributes.

Member Data Documentation

◆ author

char* oms_fmu_info_t::author

Optional string with the name and organization of the model author.

◆ canBeInstantiatedOnlyOncePerProcess

bool oms_fmu_info_t::canBeInstantiatedOnlyOncePerProcess

This flag indicates cases (especially for embedded code), where only one instance per FMU is possible (multiple instantiation is default = false; if multiple instances are needed and this flag = true, the FMUs must be instantiated in different processes).

◆ canGetAndSetFMUstate

bool oms_fmu_info_t::canGetAndSetFMUstate

If true, the environment can inquire the internal FMU state and can restore it. That is, functions fmi2GetFMUstate, fmi2SetFMUstate, and fmi2FreeFMUstate are supported by the FMU.

◆ canInterpolateInputs

bool oms_fmu_info_t::canInterpolateInputs

The slave is able to interpolate continuous inputs. Calling of fmi2SetRealInputDerivatives(...) has an effect for the slave.

◆ canNotUseMemoryManagementFunctions

bool oms_fmu_info_t::canNotUseMemoryManagementFunctions

If true, the FMU uses its own functions for memory allocation and freeing only. The callback functions allocateMemory and freeMemory given in fmi2Instantiate are ignored.

◆ canSerializeFMUstate

bool oms_fmu_info_t::canSerializeFMUstate

If true, the environment can serialize the internal FMU state, in other words functions fmi2SerializedFMUstateSize, fmi2SerializeFMUstate, fmi2DeSerializeFMUstate are supported by the FMU. If this is the case, then flag canGetAndSetFMUstate must be true as well.

◆ completedIntegratorStepNotNeeded

bool oms_fmu_info_t::completedIntegratorStepNotNeeded

If true, function fmi2CompletedIntegratorStep need not to be called (which gives a slightly more efficient integration). If it is called, it has no effect. If false (the default), the function must be called after every completed integrator step, see section 3.2.2.

◆ copyright

char* oms_fmu_info_t::copyright

Optional information on the intellectual property copyright for this FMU. [Example: copyright = "© My Company 2011"].

◆ description

char* oms_fmu_info_t::description

Optional string with a brief description of the model.

◆ fmiKind

oms_fmi_kind_enu_t oms_fmu_info_t::fmiKind

FMI for Model Exchange or Co-Simulation.

◆ fmiVersion

char* oms_fmu_info_t::fmiVersion

Version of "FMI for Model Exchange or Co-Simulation" that was used to generate the XML file. The value for this version is "2.0". Future minor revisions are denoted as "2.0.1", "2.0.2", ...

◆ generationDateAndTime

char* oms_fmu_info_t::generationDateAndTime

Optional date and time when the XML file was generated. The format is a subset of "xs:dateTime" and should be: "YYYY-MM-DDThh:mm:ssZ" (with one "T" between date and time; "Z" characterizes the Zulu time zone, in other words Greenwich meantime). [Example: "2009-12-08T14:33:22Z"].

◆ generationTool

char* oms_fmu_info_t::generationTool

Optional name of the tool that generated the XML file.

◆ guid

char* oms_fmu_info_t::guid

The "Globally Unique IDentifier" is a string that is used to check that the XML file is compatible with the C functions of the FMU. Typically when generating the XML file, a fingerprint of the "relevant" information is stored as guid and in the generated C-function.

◆ license

char* oms_fmu_info_t::license

Optional information on the intellectual property licensing for this FMU. [Example: license = "BSD license <license text or link to license>"].

◆ maxOutputDerivativeOrder

unsigned int oms_fmu_info_t::maxOutputDerivativeOrder

The slave is able to provide derivatives of outputs with maximum order. Calling of fmi2GetRealOutputDerivatives(...) is allowed up to the order defined by maxOutputDerivativeOrder.

◆ modelName

char* oms_fmu_info_t::modelName

The name of the model as used in the modeling environment that generated the XML file, such as "Modelica.Mechanics.Rotational.Examples.CoupledClutches".

◆ needsExecutionTool

bool oms_fmu_info_t::needsExecutionTool

If true, a tool is needed to execute the model and the FMU just contains the communication to this tool. [Typically, this information is only utilized for information purposes. For example when loading an FMU with needsExecutionTool = true, the environment can inform the user that a tool has to be available on the computer where the model is instantiated. The name of the tool can be taken from attribute generationTool of fmiModelDescription.]

◆ path

char* oms_fmu_info_t::path

Path to the FMU.

◆ providesDirectionalDerivative

bool oms_fmu_info_t::providesDirectionalDerivative

If true, the directional derivative of the equations can be computed with fmi2GetDirectionalDerivative(..).

◆ version

char* oms_fmu_info_t::version

Optional version of the model, for example "1.0".


The documentation for this struct was generated from the following file: