pub struct E2ETransformationTechnologyConfig {Show 22 fields
pub profile: E2EProfile,
pub zero_header_length: bool,
pub transform_in_place: bool,
pub offset: u32,
pub max_delta_counter: u32,
pub max_error_state_init: u32,
pub max_error_state_invalid: u32,
pub max_error_state_valid: u32,
pub max_no_new_or_repeated_data: u32,
pub min_ok_state_init: u32,
pub min_ok_state_invalid: u32,
pub min_ok_state_valid: u32,
pub window_size: u32,
pub window_size_init: Option<u32>,
pub window_size_invalid: Option<u32>,
pub window_size_valid: Option<u32>,
pub profile_behavior: Option<E2EProfileBehavior>,
pub sync_counter_init: Option<u32>,
pub data_id_mode: Option<DataIdMode>,
pub data_id_nibble_offset: Option<u32>,
pub crc_offset: Option<u32>,
pub counter_offset: Option<u32>,
}
Expand description
Configuration for an E2E transformation
Fields§
§profile: E2EProfile
E2E profile to use
zero_header_length: bool
When E2E is used in a transformer chain after COM, the header length must be zero.
In this configuration you are expected to provide space for the E2E data inside the signal group layout, and zero_header_length
should be set to true.
If zero_header_length
is set to false, the appropriate header length for the chosen E2E profile will be used (e.g. 24 bits for PROFILE_05
)
transform_in_place: bool
Should the E2E transformation take place in the existing buffer or in a separate buffer?
offset: u32
The offset in bits from the start of the buffer where the E2E data should be placed If E2E is used after COM, the offset should be 0; if E2E is used after SOMEIP, the offset should be 64
max_delta_counter: u32
Maximum jump in the counter value between two consecutive messages
max_error_state_init: u32
The maximum allowed number of consecutive failed counter checks in the init state
max_error_state_invalid: u32
The maximum allowed number of consecutive failed counter checks in the invalid state
max_error_state_valid: u32
The maximum allowed number of consecutive failed counter checks in the valid state
max_no_new_or_repeated_data: u32
The maximum allowed number of consecutive failed counter checks
min_ok_state_init: u32
The minimum allowed number of consecutive successful counter checks in the init state
min_ok_state_invalid: u32
The minimum allowed number of consecutive successful counter checks in the invalid state
min_ok_state_valid: u32
The minimum allowed number of consecutive successful counter checks in the valid state
window_size: u32
window size: Size of the monitoring window for the E2E state machine.
This can be directly set up to AUTOSAR 4.4.0 (AUTOSAR_00047
).
For newer files this only provides the default if window_size_init
, window_size_invalid
and window_size_valid
are not set
window_size_init: Option<u32>
window size in the init state - only valid in AUTOSAR 4.5.0 (AUTOSAR_00048
) and newer. if it is not set, this will default to window_size
window_size_invalid: Option<u32>
window size in the invalid state - only valid in AUTOSAR 4.5.0 (AUTOSAR_00048
) and newer. if it is not set, this will default to window_size
window_size_valid: Option<u32>
window size in the valid state - only valid in AUTOSAR 4.5.0 (AUTOSAR_00048
) and newer. if it is not set, this will default to window_size
profile_behavior: Option<E2EProfileBehavior>
Behavior of the check functionality
sync_counter_init: Option<u32>
Number of successful checks required for validating the consistency of the counter
data_id_mode: Option<DataIdMode>
The data ID mode to use; required for E2E profiles 01 and 11, unused otherwise
data_id_nibble_offset: Option<u32>
Offset of the data ID in the Data[] array in bits. Required for E2E profiles 01 and 11 when data_id_mode
is Lower12Bit
, unused otherwise
crc_offset: Option<u32>
Offset of the crc in the Data[] array in bits. Required for E2E profiles 01 and 11, unused otherwise
counter_offset: Option<u32>
Offset of the counter in the Data[] array in bits. Required for E2E profiles 01 and 11, unused otherwise
Trait Implementations§
Source§impl Clone for E2ETransformationTechnologyConfig
impl Clone for E2ETransformationTechnologyConfig
Source§fn clone(&self) -> E2ETransformationTechnologyConfig
fn clone(&self) -> E2ETransformationTechnologyConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl PartialEq for E2ETransformationTechnologyConfig
impl PartialEq for E2ETransformationTechnologyConfig
Source§fn eq(&self, other: &E2ETransformationTechnologyConfig) -> bool
fn eq(&self, other: &E2ETransformationTechnologyConfig) -> bool
self
and other
values to be equal, and is used by ==
.impl Eq for E2ETransformationTechnologyConfig
impl StructuralPartialEq for E2ETransformationTechnologyConfig
Auto Trait Implementations§
impl Freeze for E2ETransformationTechnologyConfig
impl RefUnwindSafe for E2ETransformationTechnologyConfig
impl Send for E2ETransformationTechnologyConfig
impl Sync for E2ETransformationTechnologyConfig
impl Unpin for E2ETransformationTechnologyConfig
impl UnwindSafe for E2ETransformationTechnologyConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.