Skip to main content

midi_io/
lib.rs

1#![doc = include_str!("../README.md")]
2#![cfg_attr(docsrs, feature(doc_cfg))]
3
4pub(crate) mod error;
5pub(crate) mod midi;
6
7#[cfg(feature = "io")]
8pub(crate) mod client;
9#[cfg(feature = "io")]
10pub(crate) mod connection;
11#[cfg(feature = "io")]
12pub(crate) mod name;
13#[cfg(feature = "io")]
14pub(crate) mod platform;
15#[cfg(feature = "io")]
16pub(crate) mod port;
17
18pub use error::Error;
19#[cfg(feature = "io")]
20pub use io::*;
21pub use midi::channel::Channel;
22pub use midi::codec_error::CodecError;
23pub use midi::data_byte::DataByte;
24pub use midi::decode::decode;
25pub use midi::decode::Decoded;
26pub use midi::message::MidiMessage;
27pub use midi::parse_error::ParseError;
28pub use midi::pitch_bend::PitchBend;
29pub use midi::raw_message::RawMidiMessage;
30pub use midi::song_position::SongPosition;
31pub use midi::sys_ex::SysEx;
32pub use midi::sys_ex_error::SysExError;
33pub use midi::value_error::ValueError;
34
35#[cfg(feature = "io")]
36mod io {
37    pub use crate::client::Client;
38    pub use crate::connection::DestinationChanges;
39    pub use crate::connection::DestinationConnection;
40    pub use crate::connection::ErrorStream;
41    pub use crate::connection::EventStream;
42    pub use crate::connection::MessageStream;
43    pub use crate::connection::SourceChanges;
44    pub use crate::connection::SourceConnection;
45    pub use crate::connection::Streams;
46    pub use crate::connection::SysexStream;
47    pub use crate::connection::Timed;
48    pub use crate::connection::VirtualDestination;
49    pub use crate::connection::VirtualSource;
50    pub use crate::error::IoError;
51    pub use crate::error::NameError;
52    pub use crate::error::PlatformError;
53    pub use crate::port::Destination;
54    pub use crate::port::DestinationChange;
55    pub use crate::port::PortId;
56    pub use crate::port::Source;
57    pub use crate::port::SourceChange;
58}