FMI Library: part of JModelica.org
Functions
Functions for handling variable definitions.

All the functions in this group take a pointer to fmi1_import_variable_t as a parameter. A variable pointer may be obtained via a Handling of variable lists module or via functions fmi1_import_get_variable_by_name() and fmi1_import_get_variable_by_vr(). More...

Functions

FMILIB_EXPORT fmi1_import_variable_tfmi1_import_get_variable_by_name (fmi1_import_t *fmu, const char *name)
 Get variable by variable name. More...
 
FMILIB_EXPORT fmi1_import_variable_tfmi1_import_get_variable_by_vr (fmi1_import_t *fmu, fmi1_base_type_enu_t baseType, fmi1_value_reference_t vr)
 Get variable by value reference. More...
 
FMILIB_EXPORT const charfmi1_import_get_variable_name (fmi1_import_variable_t *)
 Get the variable name. More...
 
FMILIB_EXPORT const charfmi1_import_get_variable_description (fmi1_import_variable_t *)
 Get variable description. More...
 
FMILIB_EXPORT fmi1_value_reference_t fmi1_import_get_variable_vr (fmi1_import_variable_t *)
 Get variable value reference. More...
 
FMILIB_EXPORT fmi1_import_variable_typedef_tfmi1_import_get_variable_declared_type (fmi1_import_variable_t *)
 For scalar variable gives the type definition is present. More...
 
FMILIB_EXPORT fmi1_base_type_enu_t fmi1_import_get_variable_base_type (fmi1_import_variable_t *)
 Get variable base type. More...
 
FMILIB_EXPORT int fmi1_import_get_variable_has_start (fmi1_import_variable_t *)
 Check if the variable has "start" attribute. More...
 
FMILIB_EXPORT int fmi1_import_get_variable_is_fixed (fmi1_import_variable_t *)
 Get the variable "fixed" attribute. More...
 
FMILIB_EXPORT fmi1_variability_enu_t fmi1_import_get_variability (fmi1_import_variable_t *)
 Get variability attribute. More...
 
FMILIB_EXPORT fmi1_causality_enu_t fmi1_import_get_causality (fmi1_import_variable_t *)
 Get causality attribute. More...
 
FMILIB_EXPORT fmi1_import_real_variable_tfmi1_import_get_variable_as_real (fmi1_import_variable_t *)
 Cast general variable to a one with the specific type. More...
 
FMILIB_EXPORT fmi1_import_integer_variable_tfmi1_import_get_variable_as_integer (fmi1_import_variable_t *)
 Cast general variable to a one with the specific type. More...
 
FMILIB_EXPORT fmi1_import_enum_variable_tfmi1_import_get_variable_as_enum (fmi1_import_variable_t *)
 Cast general variable to a one with the specific type. More...
 
FMILIB_EXPORT fmi1_import_string_variable_tfmi1_import_get_variable_as_string (fmi1_import_variable_t *)
 Cast general variable to a one with the specific type. More...
 
FMILIB_EXPORT fmi1_import_bool_variable_tfmi1_import_get_variable_as_boolean (fmi1_import_variable_t *)
 Cast general variable to a one with the specific type. More...
 
FMILIB_EXPORT fmi1_real_t fmi1_import_get_real_variable_start (fmi1_import_real_variable_t *v)
 Get the variable start attribute. More...
 
FMILIB_EXPORT fmi1_real_t fmi1_import_get_real_variable_max (fmi1_import_real_variable_t *v)
 Get maximum value for the variable. More...
 
FMILIB_EXPORT fmi1_real_t fmi1_import_get_real_variable_min (fmi1_import_real_variable_t *v)
 Get minimal value for the variable. More...
 
FMILIB_EXPORT fmi1_real_t fmi1_import_get_real_variable_nominal (fmi1_import_real_variable_t *v)
 Get nominal value for the variable. More...
 
FMILIB_EXPORT fmi1_import_unit_tfmi1_import_get_real_variable_unit (fmi1_import_real_variable_t *v)
 Get associated "unit" object if any. More...
 
FMILIB_EXPORT fmi1_import_display_unit_tfmi1_import_get_real_variable_display_unit (fmi1_import_real_variable_t *v)
 Get associated "display unit" object if any. More...
 
FMILIB_EXPORT const charfmi1_import_get_string_variable_start (fmi1_import_string_variable_t *v)
 Get start value for the variable. More...
 
FMILIB_EXPORT fmi1_boolean_t fmi1_import_get_boolean_variable_start (fmi1_import_bool_variable_t *v)
 Get start value for the variable. More...
 
FMILIB_EXPORT int fmi1_import_get_integer_variable_start (fmi1_import_integer_variable_t *v)
 Get start value for the variable. More...
 
FMILIB_EXPORT int fmi1_import_get_integer_variable_min (fmi1_import_integer_variable_t *v)
 Get minimal value for the variable. More...
 
FMILIB_EXPORT int fmi1_import_get_integer_variable_max (fmi1_import_integer_variable_t *v)
 Get max value for the variable. More...
 
FMILIB_EXPORT int fmi1_import_get_enum_variable_start (fmi1_import_enum_variable_t *v)
 Get start value for the variable. More...
 
FMILIB_EXPORT int fmi1_import_get_enum_variable_min (fmi1_import_enum_variable_t *v)
 Get minimal value for the variable. More...
 
FMILIB_EXPORT int fmi1_import_get_enum_variable_max (fmi1_import_enum_variable_t *v)
 Get max value for the variable. More...
 
FMILIB_EXPORT fmi1_variable_alias_kind_enu_t fmi1_import_get_variable_alias_kind (fmi1_import_variable_t *)
 Get the variable alias kind. More...
 
size_t fmi1_import_get_variable_original_order (fmi1_import_variable_t *v)
 Get the original index in xml of the variable. More...
 

Scalar variable types

typedef struct fmi1_xml_variable_t fmi1_import_variable_t
 General variable type. More...
 
typedef struct fmi1_xml_real_variable_t fmi1_import_real_variable_t
 Opaque real variable. More...
 
typedef struct fmi1_xml_integer_variable_t fmi1_import_integer_variable_t
 Opaque integer variable. More...
 
typedef struct fmi1_xml_string_variable_t fmi1_import_string_variable_t
 Opaque string variable. More...
 
typedef struct fmi1_xml_enum_variable_t fmi1_import_enum_variable_t
 Opaque enumeration variable. More...
 
typedef struct fmi1_xml_bool_variable_t fmi1_import_bool_variable_t
 Opaque boolean variable. More...
 
typedef struct fmi1_import_variable_list_t fmi1_import_variable_list_t
 List of variables. More...
 

Detailed Description

All the functions in this group take a pointer to fmi1_import_variable_t as a parameter. A variable pointer may be obtained via a Handling of variable lists module or via functions fmi1_import_get_variable_by_name() and fmi1_import_get_variable_by_vr().

Typedef Documentation

typedef struct fmi1_xml_variable_t fmi1_import_variable_t

General variable type.

This type is convenient to unify all the variable list operations. However, typed variables are needed to support specific attributes.

Definition at line 51 of file fmi1_import_variable.h.

typedef struct fmi1_xml_real_variable_t fmi1_import_real_variable_t

Opaque real variable.

Definition at line 53 of file fmi1_import_variable.h.

typedef struct fmi1_xml_integer_variable_t fmi1_import_integer_variable_t

Opaque integer variable.

Definition at line 55 of file fmi1_import_variable.h.

typedef struct fmi1_xml_string_variable_t fmi1_import_string_variable_t

Opaque string variable.

Definition at line 57 of file fmi1_import_variable.h.

typedef struct fmi1_xml_enum_variable_t fmi1_import_enum_variable_t

Opaque enumeration variable.

Definition at line 59 of file fmi1_import_variable.h.

typedef struct fmi1_xml_bool_variable_t fmi1_import_bool_variable_t

Opaque boolean variable.

Definition at line 61 of file fmi1_import_variable.h.

List of variables.

Definition at line 63 of file fmi1_import_variable.h.

Function Documentation

FMILIB_EXPORT fmi1_import_variable_t* fmi1_import_get_variable_by_name ( fmi1_import_t fmu,
const char name 
)

Get variable by variable name.

Parameters
fmu- An fmu object as returned by fmi1_import_parse_xml().
name- variable name
Returns
variable pointer.
FMILIB_EXPORT fmi1_import_variable_t* fmi1_import_get_variable_by_vr ( fmi1_import_t fmu,
fmi1_base_type_enu_t  baseType,
fmi1_value_reference_t  vr 
)

Get variable by value reference.

Parameters
fmu- An fmu object as returned by fmi1_import_parse_xml().
baseType- basic data type
vr- value reference
Returns
variable pointer.
FMILIB_EXPORT const char* fmi1_import_get_variable_name ( fmi1_import_variable_t )

Get the variable name.

FMILIB_EXPORT const char* fmi1_import_get_variable_description ( fmi1_import_variable_t )

Get variable description.

Returns
Description string or empty string ("") if no description in the XML file was given.
FMILIB_EXPORT fmi1_value_reference_t fmi1_import_get_variable_vr ( fmi1_import_variable_t )

Get variable value reference.

FMILIB_EXPORT fmi1_import_variable_typedef_t* fmi1_import_get_variable_declared_type ( fmi1_import_variable_t )

For scalar variable gives the type definition is present.

Returns
Pointer of a type fmi1_import_variable_typedef_t object or NULL of not present.
FMILIB_EXPORT fmi1_base_type_enu_t fmi1_import_get_variable_base_type ( fmi1_import_variable_t )

Get variable base type.

FMILIB_EXPORT int fmi1_import_get_variable_has_start ( fmi1_import_variable_t )

Check if the variable has "start" attribute.

FMILIB_EXPORT int fmi1_import_get_variable_is_fixed ( fmi1_import_variable_t )

Get the variable "fixed" attribute.

FMILIB_EXPORT fmi1_variability_enu_t fmi1_import_get_variability ( fmi1_import_variable_t )

Get variability attribute.

FMILIB_EXPORT fmi1_causality_enu_t fmi1_import_get_causality ( fmi1_import_variable_t )

Get causality attribute.

FMILIB_EXPORT fmi1_import_real_variable_t* fmi1_import_get_variable_as_real ( fmi1_import_variable_t )

Cast general variable to a one with the specific type.

Returns
Typed object or NULL if base type does not match
FMILIB_EXPORT fmi1_import_integer_variable_t* fmi1_import_get_variable_as_integer ( fmi1_import_variable_t )

Cast general variable to a one with the specific type.

Returns
Typed object or NULL if base type does not match
FMILIB_EXPORT fmi1_import_enum_variable_t* fmi1_import_get_variable_as_enum ( fmi1_import_variable_t )

Cast general variable to a one with the specific type.

Returns
Typed object or NULL if base type does not match
FMILIB_EXPORT fmi1_import_string_variable_t* fmi1_import_get_variable_as_string ( fmi1_import_variable_t )

Cast general variable to a one with the specific type.

Returns
Typed object or NULL if base type does not match
FMILIB_EXPORT fmi1_import_bool_variable_t* fmi1_import_get_variable_as_boolean ( fmi1_import_variable_t )

Cast general variable to a one with the specific type.

Returns
Typed object or NULL if base type does not match
FMILIB_EXPORT fmi1_real_t fmi1_import_get_real_variable_start ( fmi1_import_real_variable_t v)

Get the variable start attribute.

Returns
The "start" attriburte as specified in the XML file or variable nominal value.
FMILIB_EXPORT fmi1_real_t fmi1_import_get_real_variable_max ( fmi1_import_real_variable_t v)

Get maximum value for the variable.

Returns
Either the value specified in the XML file or DBL_MAX as defined in <float.h>
FMILIB_EXPORT fmi1_real_t fmi1_import_get_real_variable_min ( fmi1_import_real_variable_t v)

Get minimal value for the variable.

Returns
Either the value specified in the XML file or negated DBL_MAX as defined in <float.h>
FMILIB_EXPORT fmi1_real_t fmi1_import_get_real_variable_nominal ( fmi1_import_real_variable_t v)

Get nominal value for the variable.

FMILIB_EXPORT fmi1_import_unit_t* fmi1_import_get_real_variable_unit ( fmi1_import_real_variable_t v)

Get associated "unit" object if any.

FMILIB_EXPORT fmi1_import_display_unit_t* fmi1_import_get_real_variable_display_unit ( fmi1_import_real_variable_t v)

Get associated "display unit" object if any.

FMILIB_EXPORT const char* fmi1_import_get_string_variable_start ( fmi1_import_string_variable_t v)

Get start value for the variable.

FMILIB_EXPORT fmi1_boolean_t fmi1_import_get_boolean_variable_start ( fmi1_import_bool_variable_t v)

Get start value for the variable.

FMILIB_EXPORT int fmi1_import_get_integer_variable_start ( fmi1_import_integer_variable_t v)

Get start value for the variable.

FMILIB_EXPORT int fmi1_import_get_integer_variable_min ( fmi1_import_integer_variable_t v)

Get minimal value for the variable.

FMILIB_EXPORT int fmi1_import_get_integer_variable_max ( fmi1_import_integer_variable_t v)

Get max value for the variable.

FMILIB_EXPORT int fmi1_import_get_enum_variable_start ( fmi1_import_enum_variable_t v)

Get start value for the variable.

FMILIB_EXPORT int fmi1_import_get_enum_variable_min ( fmi1_import_enum_variable_t v)

Get minimal value for the variable.

FMILIB_EXPORT int fmi1_import_get_enum_variable_max ( fmi1_import_enum_variable_t v)

Get max value for the variable.

FMILIB_EXPORT fmi1_variable_alias_kind_enu_t fmi1_import_get_variable_alias_kind ( fmi1_import_variable_t )

Get the variable alias kind.

size_t fmi1_import_get_variable_original_order ( fmi1_import_variable_t v)

Get the original index in xml of the variable.