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

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
)

Methods

impl MidiEventBuilder
[src]

Builds MidiEventBuilder from Midi status.

Examples

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

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

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.

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);

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();