Enum midi_msg::SampleDumpMsg[][src]

pub enum SampleDumpMsg {
    Request {
        sample_num: u16,
    },
    Header {
        sample_num: u16,
        format: u8,
        period: u32,
        length: u32,
        sustain_loop_start: u32,
        sustain_loop_end: u32,
        loop_type: LoopType,
    },
    Packet {
        running_count: u8,
        data: Vec<u8>,
    },
    LoopPointsRequest {
        sample_num: u16,
        loop_num: LoopNumber,
    },
    LoopPointTransmission {
        sample_num: u16,
        loop_num: LoopNumber,
        loop_type: LoopType,
        start_addr: u32,
        end_addr: u32,
    },
}

Used to request and transmit sampler data. Used by UniversalNonRealTimeMsg::SampleDump.

Variants

Request

Request that the receiver send the given sample.

Fields of Request

sample_num: u16

The ID of the sample, between 0-16383.

Header

The first message in a sample dump, used to describe the data contained in the following packets.

Fields of Header

sample_num: u16

The ID of the sample, between 0-16383.

format: u8period: u32

Sample period (1/sample rate) in nanoseconds, 0-2097151

length: u32

Sample length in words, 0-2097151

sustain_loop_start: u32

Sustain loop start point word number, 0-2097151

sustain_loop_end: u32

Sustain loop end point word number, 0-2097151

loop_type: LoopType
Packet

A single packet of sample data.

Use SampleDumpMsg::packet to construct.

Fields of Packet

running_count: u8

Running packet count, 0-127. Wraps back to 0

data: Vec<u8>

At most 120 7 bit words

LoopPointsRequest

Request that the receiver return data about the loop points for a given sample.

Fields of LoopPointsRequest

sample_num: u16

The ID of the sample, between 0-16383.

loop_num: LoopNumber
LoopPointTransmission

Used to send additional loop points for a given sample.

Fields of LoopPointTransmission

sample_num: u16

The ID of the sample, between 0-16383.

loop_num: LoopNumberloop_type: LoopTypestart_addr: u32

Loop start address (in samples)

end_addr: u32

Loop end address (in samples)

Implementations

impl SampleDumpMsg[src]

pub fn packet(num: u32, data: [u8; 120]) -> Self[src]

Construct a packet of exactly 120 7-bit “bytes”. num is the number of this packet.

Trait Implementations

impl Clone for SampleDumpMsg[src]

impl Debug for SampleDumpMsg[src]

impl PartialEq<SampleDumpMsg> for SampleDumpMsg[src]

impl StructuralPartialEq for SampleDumpMsg[src]

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> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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.