pub struct KliveProtocol;
Expand description

Protocol implementation of Konnekt Live.

Trait Implementations§

source§

impl Debug for KliveProtocol

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for KliveProtocol

source§

fn default() -> KliveProtocol

Returns the “default value” for a type. Read more
source§

impl ShellKnob0TargetSpecification for KliveProtocol

source§

const KNOB0_TARGETS: &'static [ShellKnob0Target] = _

The list of targets supported for 1st knob.
source§

impl ShellKnob1TargetSpecification for KliveProtocol

source§

const KNOB1_TARGETS: &'static [ShellKnob1Target] = _

The list of targets supported for 2nd knob.
source§

impl ShellMixerMeterSpecification for KliveProtocol

source§

impl ShellMixerStateSpecification for KliveProtocol

source§

const MONITOR_SRC_MAP: [Option<ShellMixerMonitorSrcType>; 10] = _

The sources of monitor.
source§

fn analog_input_pair_count() -> usize

The number of analog input pairs.
source§

fn digital_input_pair_count() -> usize

The number of digital input pairs.
source§

fn create_mixer_state() -> ShellMixerState

Instantiate state of mixer.
source§

impl ShellMixerStreamSourcePairSpecification for KliveProtocol

source§

impl ShellStandaloneClockSpecification for KliveProtocol

source§

const STANDALONE_CLOCK_SOURCES: &'static [ShellStandaloneClockSource] = _

The list of available sources.
source§

impl TcKonnektMutableSegmentOperation<KliveChStripStates> for KliveProtocol

source§

fn update_partial_segment( req: &FwReq, node: &FwNode, params: &T, segment: &mut TcKonnektSegment<T>, timeout_ms: u32 ) -> Result<(), Error>

Update part of segment for any change at the parameters.
source§

fn update_whole_segment( req: &FwReq, node: &FwNode, params: &T, segment: &mut TcKonnektSegment<T>, timeout_ms: u32 ) -> Result<(), Error>

Update whole segment by the parameters.
source§

impl TcKonnektMutableSegmentOperation<KliveConfig> for KliveProtocol

source§

fn update_partial_segment( req: &FwReq, node: &FwNode, params: &T, segment: &mut TcKonnektSegment<T>, timeout_ms: u32 ) -> Result<(), Error>

Update part of segment for any change at the parameters.
source§

fn update_whole_segment( req: &FwReq, node: &FwNode, params: &T, segment: &mut TcKonnektSegment<T>, timeout_ms: u32 ) -> Result<(), Error>

Update whole segment by the parameters.
source§

impl TcKonnektMutableSegmentOperation<KliveHwState> for KliveProtocol

source§

fn update_partial_segment( req: &FwReq, node: &FwNode, params: &T, segment: &mut TcKonnektSegment<T>, timeout_ms: u32 ) -> Result<(), Error>

Update part of segment for any change at the parameters.
source§

fn update_whole_segment( req: &FwReq, node: &FwNode, params: &T, segment: &mut TcKonnektSegment<T>, timeout_ms: u32 ) -> Result<(), Error>

Update whole segment by the parameters.
source§

impl TcKonnektMutableSegmentOperation<KliveKnob> for KliveProtocol

source§

fn update_partial_segment( req: &FwReq, node: &FwNode, params: &T, segment: &mut TcKonnektSegment<T>, timeout_ms: u32 ) -> Result<(), Error>

Update part of segment for any change at the parameters.
source§

fn update_whole_segment( req: &FwReq, node: &FwNode, params: &T, segment: &mut TcKonnektSegment<T>, timeout_ms: u32 ) -> Result<(), Error>

Update whole segment by the parameters.
source§

impl TcKonnektMutableSegmentOperation<KliveMixerState> for KliveProtocol

source§

fn update_partial_segment( req: &FwReq, node: &FwNode, params: &T, segment: &mut TcKonnektSegment<T>, timeout_ms: u32 ) -> Result<(), Error>

Update part of segment for any change at the parameters.
source§

fn update_whole_segment( req: &FwReq, node: &FwNode, params: &T, segment: &mut TcKonnektSegment<T>, timeout_ms: u32 ) -> Result<(), Error>

Update whole segment by the parameters.
source§

impl TcKonnektMutableSegmentOperation<KliveReverbState> for KliveProtocol

source§

fn update_partial_segment( req: &FwReq, node: &FwNode, params: &T, segment: &mut TcKonnektSegment<T>, timeout_ms: u32 ) -> Result<(), Error>

Update part of segment for any change at the parameters.
source§

fn update_whole_segment( req: &FwReq, node: &FwNode, params: &T, segment: &mut TcKonnektSegment<T>, timeout_ms: u32 ) -> Result<(), Error>

Update whole segment by the parameters.
source§

impl TcKonnektNotifiedSegmentOperation<KliveChStripStates> for KliveProtocol

source§

const NOTIFY_FLAG: u32 = 1_048_576u32

source§

fn is_notified_segment(_: &TcKonnektSegment<T>, msg: u32) -> bool

Check message to be notified or not.
source§

impl TcKonnektNotifiedSegmentOperation<KliveConfig> for KliveProtocol

source§

const NOTIFY_FLAG: u32 = 131_072u32

source§

fn is_notified_segment(_: &TcKonnektSegment<T>, msg: u32) -> bool

Check message to be notified or not.
source§

impl TcKonnektNotifiedSegmentOperation<KliveHwState> for KliveProtocol

source§

const NOTIFY_FLAG: u32 = 16_777_216u32

source§

fn is_notified_segment(_: &TcKonnektSegment<T>, msg: u32) -> bool

Check message to be notified or not.
source§

impl TcKonnektNotifiedSegmentOperation<KliveKnob> for KliveProtocol

source§

const NOTIFY_FLAG: u32 = 65_536u32

source§

fn is_notified_segment(_: &TcKonnektSegment<T>, msg: u32) -> bool

Check message to be notified or not.
source§

impl TcKonnektNotifiedSegmentOperation<KliveMixerState> for KliveProtocol

source§

const NOTIFY_FLAG: u32 = 262_144u32

source§

fn is_notified_segment(_: &TcKonnektSegment<T>, msg: u32) -> bool

Check message to be notified or not.
source§

impl TcKonnektNotifiedSegmentOperation<KliveReverbState> for KliveProtocol

source§

const NOTIFY_FLAG: u32 = 524_288u32

source§

fn is_notified_segment(_: &TcKonnektSegment<T>, msg: u32) -> bool

Check message to be notified or not.
source§

impl TcKonnektSegmentSerdes<KliveChStripMeters> for KliveProtocol

source§

const NAME: &'static str = "channel-strip-meter"

The name of segment.
source§

const OFFSET: usize = 4_316usize

The offset of segment.
source§

const SIZE: usize = 60usize

The size of segment.
source§

fn serialize(params: &KliveChStripMeters, raw: &mut [u8]) -> Result<(), String>

Serialize for parameter.
source§

fn deserialize( params: &mut KliveChStripMeters, raw: &[u8] ) -> Result<(), String>

Deserialize for parameter.
source§

impl TcKonnektSegmentSerdes<KliveChStripStates> for KliveProtocol

source§

const NAME: &'static str = "channel-strip-state"

The name of segment.
source§

const OFFSET: usize = 608usize

The offset of segment.
source§

const SIZE: usize = 292usize

The size of segment.
source§

fn serialize(params: &KliveChStripStates, raw: &mut [u8]) -> Result<(), String>

Serialize for parameter.
source§

fn deserialize( params: &mut KliveChStripStates, raw: &[u8] ) -> Result<(), String>

Deserialize for parameter.
source§

impl TcKonnektSegmentSerdes<KliveConfig> for KliveProtocol

source§

const NAME: &'static str = "configuration"

The name of segment.
source§

const OFFSET: usize = 40usize

The offset of segment.
source§

const SIZE: usize = 132usize

The size of segment.
source§

fn serialize(params: &KliveConfig, raw: &mut [u8]) -> Result<(), String>

Serialize for parameter.
source§

fn deserialize(params: &mut KliveConfig, raw: &[u8]) -> Result<(), String>

Deserialize for parameter.
source§

impl TcKonnektSegmentSerdes<KliveHwState> for KliveProtocol

source§

const NAME: &'static str = "hardware-state"

The name of segment.
source§

const OFFSET: usize = 4_104usize

The offset of segment.
source§

const SIZE: usize = 28usize

The size of segment.
source§

fn serialize(params: &KliveHwState, raw: &mut [u8]) -> Result<(), String>

Serialize for parameter.
source§

fn deserialize(params: &mut KliveHwState, raw: &[u8]) -> Result<(), String>

Deserialize for parameter.
source§

impl TcKonnektSegmentSerdes<KliveKnob> for KliveProtocol

source§

const NAME: &'static str = "knob"

The name of segment.
source§

const OFFSET: usize = 4usize

The offset of segment.
source§

const SIZE: usize = 36usize

The size of segment.
source§

fn serialize(params: &KliveKnob, raw: &mut [u8]) -> Result<(), String>

Serialize for parameter.
source§

fn deserialize(params: &mut KliveKnob, raw: &[u8]) -> Result<(), String>

Deserialize for parameter.
source§

impl TcKonnektSegmentSerdes<KliveMixerMeter> for KliveProtocol

source§

const NAME: &'static str = "mixer-meter"

The name of segment.
source§

const OFFSET: usize = 4_200usize

The offset of segment.
source§

const SIZE: usize = 92usize

The size of segment.
source§

fn serialize(params: &KliveMixerMeter, raw: &mut [u8]) -> Result<(), String>

Serialize for parameter.
source§

fn deserialize(params: &mut KliveMixerMeter, raw: &[u8]) -> Result<(), String>

Deserialize for parameter.
source§

impl TcKonnektSegmentSerdes<KliveMixerState> for KliveProtocol

source§

const NAME: &'static str = "mixer-state"

The name of segment.
source§

const OFFSET: usize = 4usize

The offset of segment.
source§

const SIZE: usize = 364usize

The size of segment.
source§

fn serialize(params: &KliveMixerState, raw: &mut [u8]) -> Result<(), String>

Serialize for parameter.
source§

fn deserialize(params: &mut KliveMixerState, raw: &[u8]) -> Result<(), String>

Deserialize for parameter.
source§

impl TcKonnektSegmentSerdes<KliveReverbMeter> for KliveProtocol

source§

const NAME: &'static str = "reverb-meter"

The name of segment.
source§

const OFFSET: usize = 4_292usize

The offset of segment.
source§

const SIZE: usize = 24usize

The size of segment.
source§

fn serialize(params: &KliveReverbMeter, raw: &mut [u8]) -> Result<(), String>

Serialize for parameter.
source§

fn deserialize(params: &mut KliveReverbMeter, raw: &[u8]) -> Result<(), String>

Deserialize for parameter.
source§

impl TcKonnektSegmentSerdes<KliveReverbState> for KliveProtocol

source§

const NAME: &'static str = "reverb-state"

The name of segment.
source§

const OFFSET: usize = 536usize

The offset of segment.
source§

const SIZE: usize = 68usize

The size of segment.
source§

fn serialize(params: &KliveReverbState, raw: &mut [u8]) -> Result<(), String>

Serialize for parameter.
source§

fn deserialize(params: &mut KliveReverbState, raw: &[u8]) -> Result<(), String>

Deserialize for parameter.
source§

impl TcatGlobalSectionSpecification for KliveProtocol

source§

const AVAILABLE_CLOCK_SOURCE_OVERRIDE: Option<&'static [ClockSource]> = None

Some models report invalid list for signal source of sampling clock.
source§

const CLOCK_SOURCE_LABEL_TABLE: &'static [ClockSource] = _

Some models report list of labels for signal source of sampling clock with unexpected position.
source§

impl TcatOperation for KliveProtocol

source§

fn read( req: &FwReq, node: &FwNode, offset: usize, frames: &mut [u8], timeout_ms: u32 ) -> Result<(), Error>

Initiate read transaction to offset in specific address space and finish it.
source§

fn write( req: &FwReq, node: &FwNode, offset: usize, frames: &mut [u8], timeout_ms: u32 ) -> Result<(), Error>

Initiate write transaction to offset in specific address space and finish it.
source§

fn read_general_sections( req: &FwReq, node: &FwNode, sections: &mut GeneralSections, timeout_ms: u32 ) -> Result<(), Error>

Read section layout.

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<O, T> TcKonnektSegmentOperation<T> for O

source§

fn cache_whole_segment( req: &FwReq, node: &FwNode, segment: &mut TcKonnektSegment<T>, timeout_ms: u32 ) -> Result<(), Error>

Cache whole segment and deserialize for parameters.
source§

impl<O> TcatFluctuatedSectionOperation<GlobalParameters> for O

source§

const FLUCTUATED_OFFSETS: &'static [usize] = const FLUCTUATED_OFFSETS: &'static [usize] = &[88];

The set of address offsets in which any value is changed apart from software operation; e.g. hardware metering.
source§

fn partial_cache( req: &FwReq, node: &FwNode, section: &Section, params: &mut T, timeout_ms: u32 ) -> Result<(), Error>

Cache part of section for fluctuated values, then deserialize for parameters.
source§

impl<O> TcatMutableSectionOperation<GlobalParameters> for O

source§

fn whole_update( req: &FwReq, node: &FwNode, section: &Section, params: &T, timeout_ms: u32 ) -> Result<(), Error>

Update whole section by the parameters.
source§

fn partial_update( req: &FwReq, node: &FwNode, section: &Section, params: &T, prev: &mut T, timeout_ms: u32 ) -> Result<(), Error>

Update part of section for any change at the parameters.
source§

impl<O> TcatMutableSectionOperation<RxStreamFormatParameters> for O

source§

fn whole_update( req: &FwReq, node: &FwNode, section: &Section, params: &T, timeout_ms: u32 ) -> Result<(), Error>

Update whole section by the parameters.
source§

fn partial_update( req: &FwReq, node: &FwNode, section: &Section, params: &T, prev: &mut T, timeout_ms: u32 ) -> Result<(), Error>

Update part of section for any change at the parameters.
source§

impl<O> TcatMutableSectionOperation<TxStreamFormatParameters> for O

source§

fn whole_update( req: &FwReq, node: &FwNode, section: &Section, params: &T, timeout_ms: u32 ) -> Result<(), Error>

Update whole section by the parameters.
source§

fn partial_update( req: &FwReq, node: &FwNode, section: &Section, params: &T, prev: &mut T, timeout_ms: u32 ) -> Result<(), Error>

Update part of section for any change at the parameters.
source§

impl<O> TcatNotifiedSectionOperation<GlobalParameters> for O

source§

const NOTIFY_FLAG: u32 = 112u32

Flag in message notified for any change in section.
source§

fn notified(_: &T, msg: u32) -> bool

Check message to be notified or not.
source§

impl<O> TcatNotifiedSectionOperation<RxStreamFormatParameters> for O

source§

const NOTIFY_FLAG: u32 = 1u32

Flag in message notified for any change in section.
source§

fn notified(_: &T, msg: u32) -> bool

Check message to be notified or not.
source§

impl<O> TcatNotifiedSectionOperation<TxStreamFormatParameters> for O

source§

const NOTIFY_FLAG: u32 = 2u32

Flag in message notified for any change in section.
source§

fn notified(_: &T, msg: u32) -> bool

Check message to be notified or not.
source§

impl<O> TcatSectionOperation<ExtendedSyncParameters> for O
where O: TcatOperation,

source§

fn whole_cache( req: &FwReq, node: &FwNode, section: &Section, params: &mut T, timeout_ms: u32 ) -> Result<(), Error>

Cache whole section and deserialize for parameters.
source§

impl<O> TcatSectionOperation<GlobalParameters> for O

source§

fn whole_cache( req: &FwReq, node: &FwNode, section: &Section, params: &mut T, timeout_ms: u32 ) -> Result<(), Error>

Cache whole section and deserialize for parameters.
source§

impl<O> TcatSectionOperation<RxStreamFormatParameters> for O
where O: TcatOperation,

source§

fn whole_cache( req: &FwReq, node: &FwNode, section: &Section, params: &mut T, timeout_ms: u32 ) -> Result<(), Error>

Cache whole section and deserialize for parameters.
source§

impl<O> TcatSectionOperation<TxStreamFormatParameters> for O
where O: TcatOperation,

source§

fn whole_cache( req: &FwReq, node: &FwNode, section: &Section, params: &mut T, timeout_ms: u32 ) -> Result<(), Error>

Cache whole section and deserialize for parameters.
source§

impl<O> TcatSectionSerdes<ExtendedSyncParameters> for O
where O: TcatOperation,

source§

const MIN_SIZE: usize = 16usize

Minimum size of section for parameters.
source§

const ERROR_TYPE: GeneralProtocolError = const ERROR_TYPE: GeneralProtocolError = GeneralProtocolError::ExtendedSync;

The type of error.
source§

fn serialize(_: &ExtendedSyncParameters, _: &mut [u8]) -> Result<(), String>

Serialize parameters for section.
source§

fn deserialize( params: &mut ExtendedSyncParameters, raw: &[u8] ) -> Result<(), String>

Deserialize section for parameters.
source§

impl<O> TcatSectionSerdes<GlobalParameters> for O

source§

const MIN_SIZE: usize = 96usize

Minimum size of section for parameters.
source§

const ERROR_TYPE: GeneralProtocolError = const ERROR_TYPE: GeneralProtocolError = GeneralProtocolError::Global;

The type of error.
source§

fn serialize(params: &GlobalParameters, raw: &mut [u8]) -> Result<(), String>

Serialize parameters for section.
source§

fn deserialize(params: &mut GlobalParameters, raw: &[u8]) -> Result<(), String>

Deserialize section for parameters.
source§

impl<O> TcatSectionSerdes<RxStreamFormatParameters> for O
where O: TcatOperation,

source§

const MIN_SIZE: usize = 8usize

Minimum size of section for parameters.
source§

const ERROR_TYPE: GeneralProtocolError = const ERROR_TYPE: GeneralProtocolError = GeneralProtocolError::RxStreamFormat;

The type of error.
source§

fn serialize( params: &RxStreamFormatParameters, raw: &mut [u8] ) -> Result<(), String>

Serialize parameters for section.
source§

fn deserialize( params: &mut RxStreamFormatParameters, raw: &[u8] ) -> Result<(), String>

Deserialize section for parameters.
source§

impl<O> TcatSectionSerdes<TxStreamFormatParameters> for O
where O: TcatOperation,

source§

const MIN_SIZE: usize = 8usize

Minimum size of section for parameters.
source§

const ERROR_TYPE: GeneralProtocolError = const ERROR_TYPE: GeneralProtocolError = GeneralProtocolError::TxStreamFormat;

The type of error.
source§

fn serialize( params: &TxStreamFormatParameters, raw: &mut [u8] ) -> Result<(), String>

Serialize parameters for section.
source§

fn deserialize( params: &mut TxStreamFormatParameters, raw: &[u8] ) -> Result<(), String>

Deserialize section for parameters.
source§

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

§

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>,

§

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.