BMIsotpConfig

Struct BMIsotpConfig 

Source
#[repr(C)]
pub struct BMIsotpConfig {
Show 14 fields pub version: u8, pub mode: u8, pub tester_timeout: BMIsotpTimeoutConfig, pub ecu_timeout: BMIsotpTimeoutConfig, pub flow_control: BMIsotpFlowControlConfig, pub extended_address: u8, pub padding_enabled: u8, pub padding_value: u8, pub long_pdu_enabled: u8, pub padding: [u8; 2], pub callback: extern "C" fn(status: *const BMIsoTPStatus, arg: *const c_void), pub callback_user_arg: *const c_void, pub tester_data_template: BMData, pub ecu_data_template: BMData,
}
Expand description

ISOTP Protocol (See ISO15765-2 for details) configuration.

Fields§

§version: u8

Currently must be set to 0x01

§mode: u8

Currently only 0 is supported: normal (non-extended-addressing) UDS client(tester)

§tester_timeout: BMIsotpTimeoutConfig

Tester(UDS Client) Timeout configuration

§ecu_timeout: BMIsotpTimeoutConfig

ECU(UDS Server) Timeout configuration

§flow_control: BMIsotpFlowControlConfig

Current flow control status, i.e. 30 00 00

§extended_address: u8

UDS Address in Extended Addressing mode

§padding_enabled: u8

Enable padding for unused payload bytes

§padding_value: u8

Padding byte value (i.e. 0xCC) for unused payload bytes

§long_pdu_enabled: u8

Enable long PDU (>4095), note if CAN message DLC>8, long PDU is enabled by default

§padding: [u8; 2]

Reserved for future

§callback: extern "C" fn(status: *const BMIsoTPStatus, arg: *const c_void)

Callback function when any progress is made, used typically by GUI to show progress bar

§callback_user_arg: *const c_void

Callback user arg when any progress is made, used typically by GUI to show progress bar

§tester_data_template: BMData

All tester messages will be formatted/checked using this template, configure CAN message ID and IDE/FDF flags here

§ecu_data_template: BMData

All ECU messages will be formatted/checked using this template, configure CAN message ID and IDE/FDF flags here

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.