Trait infrared::receiver::DecoderStateMachine[][src]

pub trait DecoderStateMachine: Protocol {
    type State: DecoderState;
    type RangeData: Debug;
    type InternalStatus: Into<Status>;
    fn state() -> Self::State;
fn ranges(resolution: u32) -> Self::RangeData;
fn event_full(
        res: &mut Self::State,
        rd: &Self::RangeData,
        edge: bool,
        delta_t: u32
    ) -> Self::InternalStatus;
fn command(state: &Self::State) -> Option<Self::Cmd>; }
Expand description

Protocol decode state machine

Associated Types

Decoder state

The pulsewidth ranges

Internal State

Required methods

Create the resources

Create the timer dependent ranges resolution: Timer resolution

Notify the state machine of a new event

  • edge: true = positive edge, false = negative edge
  • dt : Time in micro seconds since last transition

Get the command Returns the data if State == Done, otherwise None

Implementors