use crate::*; pub struct TransportModel { jack: Arc>, /// Current sample rate, tempo, and PPQ. clock: Arc, /// JACK transport handle. transport: jack::Transport, /// Enable metronome? metronome: bool, } impl HasJack for TransportModel { fn jack (&self) -> &Arc> { &self.jack } } impl HasClock for TransportModel { fn clock (&self) -> &Arc { &self.clock } } //impl TransportModelApi for TransportModel { //fn transport (&self) -> &jack::Transport { //&self.transport //} //fn metronome (&self) -> bool { //self.metronome //} //} impl Debug for TransportModel { fn fmt (&self, f: &mut Formatter<'_>) -> std::result::Result<(), Error> { f.debug_struct("transport") .field("jack", &self.jack) .field("transport", &"(JACK transport)") .field("clock", &self.clock) .field("metronome", &self.metronome) .finish() } }