Skip to main content

Fmi3ModelExchange

Trait Fmi3ModelExchange 

Source
pub trait Fmi3ModelExchange: Fmi3Common + ModelGetSetStates{
    // Provided methods
    unsafe fn fmi3_enter_continuous_time_mode(
        instance: fmi3Instance,
    ) -> fmi3Status { ... }
    unsafe fn fmi3_completed_integrator_step(
        instance: fmi3Instance,
        no_set_fmu_state_prior: fmi3Boolean,
        enter_event_mode: *mut fmi3Boolean,
        terminate_simulation: *mut fmi3Boolean,
    ) -> fmi3Status { ... }
    unsafe fn fmi3_set_time(
        instance: fmi3Instance,
        time: fmi3Float64,
    ) -> fmi3Status { ... }
    unsafe fn fmi3_set_continuous_states(
        instance: fmi3Instance,
        continuous_states: *const fmi3Float64,
        n_continuous_states: usize,
    ) -> fmi3Status { ... }
    unsafe fn fmi3_get_continuous_state_derivatives(
        instance: fmi3Instance,
        derivatives: *mut fmi3Float64,
        n_continuous_states: usize,
    ) -> fmi3Status { ... }
    unsafe fn fmi3_get_event_indicators(
        instance: fmi3Instance,
        event_indicators: *mut fmi3Float64,
        n_event_indicators: usize,
    ) -> fmi3Status { ... }
    unsafe fn fmi3_get_continuous_states(
        instance: fmi3Instance,
        continuous_states: *mut fmi3Float64,
        n_continuous_states: usize,
    ) -> fmi3Status { ... }
    unsafe fn fmi3_get_nominals_of_continuous_states(
        instance: fmi3Instance,
        nominals: *mut fmi3Float64,
        n_continuous_states: usize,
    ) -> fmi3Status { ... }
    unsafe fn fmi3_get_number_of_event_indicators(
        instance: fmi3Instance,
        n_event_indicators: *mut usize,
    ) -> fmi3Status { ... }
    unsafe fn fmi3_get_number_of_continuous_states(
        instance: fmi3Instance,
        n_continuous_states: *mut usize,
    ) -> fmi3Status { ... }
}

Provided Methods§

Source

unsafe fn fmi3_enter_continuous_time_mode(instance: fmi3Instance) -> fmi3Status

Source

unsafe fn fmi3_completed_integrator_step( instance: fmi3Instance, no_set_fmu_state_prior: fmi3Boolean, enter_event_mode: *mut fmi3Boolean, terminate_simulation: *mut fmi3Boolean, ) -> fmi3Status

Source

unsafe fn fmi3_set_time(instance: fmi3Instance, time: fmi3Float64) -> fmi3Status

Source

unsafe fn fmi3_set_continuous_states( instance: fmi3Instance, continuous_states: *const fmi3Float64, n_continuous_states: usize, ) -> fmi3Status

Source

unsafe fn fmi3_get_continuous_state_derivatives( instance: fmi3Instance, derivatives: *mut fmi3Float64, n_continuous_states: usize, ) -> fmi3Status

Source

unsafe fn fmi3_get_event_indicators( instance: fmi3Instance, event_indicators: *mut fmi3Float64, n_event_indicators: usize, ) -> fmi3Status

Source

unsafe fn fmi3_get_continuous_states( instance: fmi3Instance, continuous_states: *mut fmi3Float64, n_continuous_states: usize, ) -> fmi3Status

Source

unsafe fn fmi3_get_nominals_of_continuous_states( instance: fmi3Instance, nominals: *mut fmi3Float64, n_continuous_states: usize, ) -> fmi3Status

Source

unsafe fn fmi3_get_number_of_event_indicators( instance: fmi3Instance, n_event_indicators: *mut usize, ) -> fmi3Status

Source

unsafe fn fmi3_get_number_of_continuous_states( instance: fmi3Instance, n_continuous_states: *mut usize, ) -> fmi3Status

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§