Trait Data

Source
pub trait Data<B: Buffer> {
    // Required method
    fn data(&self) -> &[B::Unit];
}
Expand description

View the wrapped data of the MIDI message as a slice of units.

A slice of u32 for Ump backed messages.

use midi2::{Data, channel_voice1::NoteOn};

let message = NoteOn::<[u32; 4]>::new();

assert_eq!(message.data(), &[0x2090_0000]);

A slice of u8 for Bytes backed messages.

use midi2::{Data, channel_voice1::NoteOn};

let message = NoteOn::<[u8; 3]>::new();

assert_eq!(message.data(), &[0x90, 0x00, 0x00]);

Required Methods§

Source

fn data(&self) -> &[B::Unit]

Implementors§

Source§

impl<B: Buffer> Data<B> for ChannelVoice1<B>

Source§

impl<B: Buffer> Data<B> for SystemCommon<B>

Source§

impl<B: Buffer> Data<B> for midi2::channel_voice1::ChannelPressure<B>

Source§

impl<B: Buffer> Data<B> for midi2::channel_voice1::ControlChange<B>

Source§

impl<B: Buffer> Data<B> for midi2::channel_voice1::KeyPressure<B>

Source§

impl<B: Buffer> Data<B> for midi2::channel_voice1::NoteOff<B>

Source§

impl<B: Buffer> Data<B> for midi2::channel_voice1::NoteOn<B>

Source§

impl<B: Buffer> Data<B> for PitchBend<B>

Source§

impl<B: Buffer> Data<B> for midi2::channel_voice1::ProgramChange<B>

Source§

impl<B: Buffer> Data<B> for Sysex7<B>

Source§

impl<B: Buffer> Data<B> for ActiveSensing<B>

Source§

impl<B: Buffer> Data<B> for Continue<B>

Source§

impl<B: Buffer> Data<B> for Reset<B>

Source§

impl<B: Buffer> Data<B> for SongPositionPointer<B>

Source§

impl<B: Buffer> Data<B> for SongSelect<B>

Source§

impl<B: Buffer> Data<B> for Start<B>

Source§

impl<B: Buffer> Data<B> for Stop<B>

Source§

impl<B: Buffer> Data<B> for TimeCode<B>

Source§

impl<B: Buffer> Data<B> for TimingClock<B>

Source§

impl<B: Buffer> Data<B> for TuneRequest<B>

Source§

impl<B: Bytes> Data<B> for BytesMessage<B>

Source§

impl<B: Ump> Data<B> for ChannelVoice2<B>

Source§

impl<B: Ump> Data<B> for UmpMessage<B>

Source§

impl<B: Ump> Data<B> for FlexData<B>

Source§

impl<B: Ump> Data<B> for UmpStream<B>

Source§

impl<B: Ump> Data<B> for Utility<B>

Source§

impl<B: Ump> Data<B> for AssignableController<B>

Source§

impl<B: Ump> Data<B> for AssignablePerNoteController<B>

Source§

impl<B: Ump> Data<B> for ChannelPitchBend<B>

Source§

impl<B: Ump> Data<B> for midi2::channel_voice2::ChannelPressure<B>

Source§

impl<B: Ump> Data<B> for midi2::channel_voice2::ControlChange<B>

Source§

impl<B: Ump> Data<B> for midi2::channel_voice2::KeyPressure<B>

Source§

impl<B: Ump> Data<B> for midi2::channel_voice2::NoteOff<B>

Source§

impl<B: Ump> Data<B> for midi2::channel_voice2::NoteOn<B>

Source§

impl<B: Ump> Data<B> for PerNoteManagement<B>

Source§

impl<B: Ump> Data<B> for PerNotePitchBend<B>

Source§

impl<B: Ump> Data<B> for midi2::channel_voice2::ProgramChange<B>

Source§

impl<B: Ump> Data<B> for RegisteredController<B>

Source§

impl<B: Ump> Data<B> for RegisteredPerNoteController<B>

Source§

impl<B: Ump> Data<B> for RelativeAssignableController<B>

Source§

impl<B: Ump> Data<B> for RelativeRegisteredController<B>

Source§

impl<B: Ump> Data<B> for AccompanyingPerformerName<B>

Source§

impl<B: Ump> Data<B> for ArrangerName<B>

Source§

impl<B: Ump> Data<B> for ComposerName<B>

Source§

impl<B: Ump> Data<B> for CompositionName<B>

Source§

impl<B: Ump> Data<B> for CopyrightNotice<B>

Source§

impl<B: Ump> Data<B> for LyricistName<B>

Source§

impl<B: Ump> Data<B> for Lyrics<B>

Source§

impl<B: Ump> Data<B> for LyricsLanguage<B>

Source§

impl<B: Ump> Data<B> for MidiClipName<B>

Source§

impl<B: Ump> Data<B> for PrimaryPerformerName<B>

Source§

impl<B: Ump> Data<B> for ProjectName<B>

Source§

impl<B: Ump> Data<B> for PublisherName<B>

Source§

impl<B: Ump> Data<B> for RecordingDate<B>

Source§

impl<B: Ump> Data<B> for RecordingLocation<B>

Source§

impl<B: Ump> Data<B> for Ruby<B>

Source§

impl<B: Ump> Data<B> for RubyLanguage<B>

Source§

impl<B: Ump> Data<B> for SetChordName<B>

Source§

impl<B: Ump> Data<B> for SetKeySignature<B>

Source§

impl<B: Ump> Data<B> for SetMetronome<B>

Source§

impl<B: Ump> Data<B> for SetTempo<B>

Source§

impl<B: Ump> Data<B> for SetTimeSignature<B>

Source§

impl<B: Ump> Data<B> for UnknownMetadataText<B>

Source§

impl<B: Ump> Data<B> for UnknownPerformanceText<B>

Source§

impl<B: Ump> Data<B> for Sysex8<B>

Source§

impl<B: Ump> Data<B> for DeviceIdentity<B>

Source§

impl<B: Ump> Data<B> for EndOfClip<B>

Source§

impl<B: Ump> Data<B> for EndpointDiscovery<B>

Source§

impl<B: Ump> Data<B> for EndpointInfo<B>

Source§

impl<B: Ump> Data<B> for EndpointName<B>

Source§

impl<B: Ump> Data<B> for FunctionBlockDiscovery<B>

Source§

impl<B: Ump> Data<B> for FunctionBlockInfo<B>

Source§

impl<B: Ump> Data<B> for FunctionBlockName<B>

Source§

impl<B: Ump> Data<B> for ProductInstanceId<B>

Source§

impl<B: Ump> Data<B> for StartOfClip<B>

Source§

impl<B: Ump> Data<B> for StreamConfigurationNotification<B>

Source§

impl<B: Ump> Data<B> for StreamConfigurationRequest<B>

Source§

impl<B: Ump> Data<B> for Clock<B>

Source§

impl<B: Ump> Data<B> for DeltaClockstamp<B>

Source§

impl<B: Ump> Data<B> for DeltaClockstampTpq<B>

Source§

impl<B: Ump> Data<B> for NoOp<B>

Source§

impl<B: Ump> Data<B> for Timestamp<B>