[][src]Struct ghakuf::messages::MidiEventBuilder

pub struct MidiEventBuilder { /* fields omitted */ }

A struct for building Midi event.

Examples

use ghakuf::messages::{MidiEvent, MidiEventBuilder};

let mut builder = MidiEventBuilder::new(0x91);
builder.push(0x9c);
builder.push(0x13);
let event: MidiEvent = builder.build();

assert_eq!(
    MidiEvent::NoteOn { ch: 0x01, note: 0x9c, velocity: 0x13 },
    event
)

Implementations

impl MidiEventBuilder[src]

pub fn new(status: u8) -> MidiEventBuilder[src]

Builds MidiEventBuilder from Midi status.

Examples

use ghakuf::messages::{MidiEvent, MidiEventBuilder};

let mut builder = MidiEventBuilder::new(0x91);

pub fn push(&mut self, data: u8)[src]

Pushed u8 value to MidiEventBuilder.

Examples

use ghakuf::messages::MidiEventBuilder;

let mut builder = MidiEventBuilder::new(0x91);
builder.push(0x00);
builder.push(0x01);

Note: MidiEventBuilder can accept only 2 or 3 u8 value due to SMF restriction.

pub fn shortage(&self) -> u8[src]

Returns num till MidiEventBuilder saturated.

Examples

use ghakuf::messages::MidiEventBuilder;

let mut builder = MidiEventBuilder::new(0x91);
assert_eq!(builder.shortage(), 2);
builder.push(0x00);
assert_eq!(builder.shortage(), 1);
builder.push(0x02);
assert_eq!(builder.shortage(), 0);

let mut builder = MidiEventBuilder::new(0xc0);
assert_eq!(builder.shortage(), 1);
builder.push(0x00);
assert_eq!(builder.shortage(), 0);

pub fn build(&self) -> MidiEvent[src]

Builds MidiEvnet from MidiEventBuilder.

Examples

use ghakuf::messages::{MidiEvent, MidiEventBuilder};

let mut builder = MidiEventBuilder::new(0x91);
builder.push(0x00);
builder.push(0x01);
builder.push(0x02);
let event: MidiEvent = builder.build();

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.