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§
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
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.