36#ifndef _OMS_VARIABLE_H_
37#define _OMS_VARIABLE_H_
41#include "OMSimulator/Types.h"
42#include <dcp/model/DcpTypes.hpp>
43#include <dcp/xml/DcpSlaveDescriptionElements.hpp>
51typedef enum {
dcpFloat64,
dcpFloat32,
dcpInt64,
dcpInt32,
dcpInt16,
dcpInt8,
dcpUInt64,
dcpUInt32,
dcpUInt16,
dcpUInt8,
dcpString,
dcpBinary}
dcpDataType_t;
53class SlaveDescription_t;
61 Variable(std::shared_ptr<SlaveDescription_t> desc,
int index);
100 operator std::string()
const {
return std::string(
cref); }
dcpDataType_t
Definition Variable.h:51
@ dcpString
Definition Variable.h:51
@ dcpInt64
Definition Variable.h:51
@ dcpBinary
Definition Variable.h:51
@ dcpUInt64
Definition Variable.h:51
@ dcpUInt16
Definition Variable.h:51
@ dcpUInt32
Definition Variable.h:51
@ dcpFloat32
Definition Variable.h:51
@ dcpUInt8
Definition Variable.h:51
@ dcpFloat64
Definition Variable.h:51
@ dcpInt16
Definition Variable.h:51
@ dcpInt8
Definition Variable.h:51
@ dcpInt32
Definition Variable.h:51
dcpCausality_t
Definition Variable.h:50
@ dcpCausalityStructuralParameter
Definition Variable.h:50
@ dcpCausalityLocal
Definition Variable.h:50
@ dcpCausalityParameter
Definition Variable.h:50
@ dcpCausalityInput
Definition Variable.h:50
@ dcpCausalityOutput
Definition Variable.h:50
ComRef - component reference.
Definition ComRef.h:51
Connector.
Definition Connector.h:54
friend bool operator==(const oms::Variable &v1, const oms::Variable &v2)
void markAsState(size_t der_index)
Definition Variable.h:64
unsigned int getStateIndex() const
Definition Variable.h:68
bool isLocal() const
Definition Variable.h:79
bool isFmi2() const
Definition Variable.h:70
const std::string & getDescription() const
Definition Variable.h:107
bool isDer() const
Definition Variable.h:83
oms_causality_enu_t getCausality() const
Definition Variable.cpp:426
unsigned int getIndex() const
Definition Variable.h:117
bool isInitialUnknown() const
Definition Variable.h:92
oms_signal_type_enu_t type
Definition Variable.h:152
void markAsContinuousTimeDer()
Definition Variable.h:66
bool isTypeBoolean() const
Definition Variable.h:109
bool fmi3
Definition Variable.h:159
dcpDataType_t dcpDataType
Definition Variable.h:146
bool is_continuous_time_state
Definition Variable.h:150
bool isTypeReal() const
Definition Variable.h:111
ComRef cref
Definition Variable.h:126
fmi2Variability fmi2Variability_
Definition Variable.h:133
dcpCausality_t dcpCausality
Definition Variable.h:144
fmi2Causality fmi2Causality_
Definition Variable.h:132
bool dcp
Definition Variable.h:157
bool isCalculated() const
Definition Variable.h:90
bool isCalculatedParameter() const
Definition Variable.h:76
valueReference_t getValueReferenceDCP() const
Definition Variable.h:104
std::string description
Definition Variable.h:127
bool isTypeString() const
Definition Variable.h:112
oms_signal_numeric_type_enu_t getNumericType() const
Definition Variable.h:106
bool is_continuous_time_der
Definition Variable.h:151
std::string getCausalityString() const
Definition Variable.cpp:490
bool is_der
Definition Variable.h:149
const ComRef & getCref() const
Definition Variable.h:99
bool isState() const
Definition Variable.h:82
oms_signal_type_enu_t getType() const
Definition Variable.h:105
friend bool operator!=(const oms::Variable &v1, const oms::Variable &v2)
size_t der_index
index origin = 0
Definition Variable.h:156
Variability dcpVariability
Definition Variable.h:145
oms::Connector makeConnector(const oms::ComRef &owner) const
Definition Variable.h:118
bool isApprox() const
Definition Variable.h:89
bool isContinuousTimeDer() const
Definition Variable.h:85
bool is_state
Definition Variable.h:148
size_t state_index
index origin = 0
Definition Variable.h:155
fmi3Causality fmi3Causality_
Definition Variable.h:138
void configureFMI2Variable(fmuHandle *fmi4c, int index)
Definition Variable.cpp:71
unsigned int index
index origin = 0
Definition Variable.h:154
bool isIndependent() const
Definition Variable.h:80
fmi2ValueReference fmi2Vr
Definition Variable.h:131
oms_component_enu_t componentType
Definition Variable.h:128
bool isDcp() const
Definition Variable.h:72
void markAsContinuousTimeState(size_t der_index)
Definition Variable.h:65
fmi2ValueReference getValueReference() const
Definition Variable.h:102
void configureFMI3Variable(fmuHandle *fmi4c, int index)
Definition Variable.cpp:123
bool isContinuousTimeState() const
Definition Variable.h:84
void configureDCPVariable(std::shared_ptr< SlaveDescription_t > desc, int index)
Definition Variable.cpp:212
valueReference_t dcpVr
Definition Variable.h:143
oms_signal_numeric_type_enu_t numericType
Definition Variable.h:153
bool isTypeInteger() const
Definition Variable.h:110
fmi3Initial fmi3InitialProperty
Definition Variable.h:140
~Variable()
Definition Variable.cpp:394
fmi3Variability fmi3Variability_
Definition Variable.h:139
bool isExact() const
Definition Variable.h:88
bool isParameter() const
Definition Variable.h:75
bool isFmi3() const
Definition Variable.h:71
bool isInput() const
Definition Variable.cpp:398
fmi3ValueReference getValueReferenceFMI3() const
Definition Variable.h:103
bool isOutput() const
Definition Variable.cpp:412
fmi3ValueReference fmi3Vr
Definition Variable.h:137
fmi2Initial fmi2InitialProperty
Definition Variable.h:134
bool fmi2
Definition Variable.h:158
bool operator==(const ComRef &lhs, const ComRef &rhs)
Definition ComRef.cpp:227
bool operator!=(const ComRef &lhs, const ComRef &rhs)
Definition ComRef.cpp:232