djio 0.0.23

DJ Hardware Control(ler) Support
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// SPDX-FileCopyrightText: The djio authors
// SPDX-License-Identifier: MPL-2.0

use crate::{BoxedMidiOutputConnection, Controller, MidiDeviceDescriptor, MidiOutputGateway};

#[cfg(feature = "controller-thread")]
pub(crate) mod context;

pub trait MidiController: Controller + MidiOutputGateway<BoxedMidiOutputConnection> {
    #[must_use]
    fn midi_device_descriptor(&self) -> &MidiDeviceDescriptor;
}

pub type BoxedMidiController<T> = Box<dyn MidiController<Types = T> + Send + 'static>;