Enum fmi::FmiError[][src]

pub enum FmiError {
    Instantiation,
    InvalidStatus {
        status: u32,
    },
    FmiStatusDiscard,
    FmiStatusError,
    FmiStatusFatal,
    UnknownVariable {
        name: String,
    },
    UnknownToolchainVersion {
        version: String,
    },
    UnsupportedFmuType(fmi2Type),
    TypesPlatformMismatch {
        found: Box<[u8]>,
    },
    FmiVersionMismatch {
        found: Box<[u8]>,
        expected: Box<[u8]>,
    },
    Io(Error),
    Zip(ZipError),
    Xml(Error),
    Dlopen(Error),
    ModelDescr(ModelDescriptionError),
    Utf8Error(Utf8Error),
}

Variants

Instantiation
InvalidStatus

Fields of InvalidStatus

status: u32
FmiStatusDiscard

For ME: It is recommended to perform a smaller step size and evaluate the model equations again, for example because an iterative solver in the model did not converge or because a function is outside of its domain (for example sqrt()). If this is not possible, the simulation has to be terminated.

For CS: fmi2Discard is returned also if the slave is not able to return the required status information. The master has to decide if the simulation run can be continued.

FmiStatusError

The FMU encountered an error. The simulation cannot be continued with this FMU instance. If one of the functions returns fmi2Error, it can be tried to restart the simulation from a formerly stored FMU state by calling fmi2SetFMUstate. This can be done if the capability flag canGetAndSetFMUstate is true and fmu2GetFMUstate was called before in non-erroneous state. If not, the simulation cannot be continued and fmi2FreeInstance or fmi2Reset must be called afterwards.

FmiStatusFatal

The model computations are irreparably corrupted for all FMU instances. [For example, due to a run-time exception such as access violation or integer division by zero during the execution of an fmi function]. It is not possible to call any other function for any of the FMU instances.

UnknownVariable

Fields of UnknownVariable

name: String
UnknownToolchainVersion

Fields of UnknownToolchainVersion

version: String
UnsupportedFmuType(fmi2Type)
TypesPlatformMismatch

Fields of TypesPlatformMismatch

found: Box<[u8]>
FmiVersionMismatch

Fields of FmiVersionMismatch

found: Box<[u8]>expected: Box<[u8]>
Io(Error)
Xml(Error)
Dlopen(Error)
Utf8Error(Utf8Error)

Trait Implementations

impl Debug for FmiError[src]

impl Display for FmiError[src]

impl Error for FmiError[src]

impl From<Error> for FmiError[src]

impl From<Error> for FmiError[src]

impl From<Error> for FmiError[src]

impl From<ModelDescriptionError> for FmiError[src]

impl From<Utf8Error> for FmiError[src]

impl From<ZipError> for FmiError[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,