dbc_rs/extended_multiplexing/
mod.rs

1//! Extended Multiplexing definition (SG_MUL_VAL_)
2//!
3//! Represents extended multiplexing entries that define which multiplexer switch values
4//! activate specific multiplexed signals.
5use crate::{MAX_NAME_SIZE, compat::String, compat::Vec};
6
7mod core;
8mod parse;
9
10#[cfg(feature = "std")]
11mod builder;
12
13#[cfg(feature = "std")]
14pub use builder::ExtendedMultiplexingBuilder;
15
16/// Extended Multiplexing definition (SG_MUL_VAL_)
17///
18/// Represents extended multiplexing entries that define which multiplexer switch values
19/// activate specific multiplexed signals.
20#[derive(Debug, Clone, PartialEq)]
21pub struct ExtendedMultiplexing {
22    message_id: u32,
23    signal_name: String<{ MAX_NAME_SIZE }>,
24    multiplexer_switch: String<{ MAX_NAME_SIZE }>,
25    value_ranges: Vec<(u64, u64), 64>, // Max 64 ranges per extended multiplexing entry
26}