diff options
Diffstat (limited to 'libs/ardour/ardour')
-rw-r--r-- | libs/ardour/ardour/audioengine.h | 6 | ||||
-rw-r--r-- | libs/ardour/ardour/midiport_manager.h | 2 | ||||
-rw-r--r-- | libs/ardour/ardour/port_manager.h | 2 | ||||
-rw-r--r-- | libs/ardour/ardour/rc_configuration.h | 6 | ||||
-rw-r--r-- | libs/ardour/ardour/session.h | 18 |
5 files changed, 20 insertions, 14 deletions
diff --git a/libs/ardour/ardour/audioengine.h b/libs/ardour/ardour/audioengine.h index 61fe27abd5..4db1604345 100644 --- a/libs/ardour/ardour/audioengine.h +++ b/libs/ardour/ardour/audioengine.h @@ -36,8 +36,6 @@ #include "pbd/signals.h" #include "pbd/stacktrace.h" -#include "midi++/mmc.h" - #include "ardour/ardour.h" #include "ardour/data_type.h" #include "ardour/session_handle.h" @@ -184,8 +182,6 @@ public: /* sets up the process callback thread */ static void thread_init_callback (void *); - MIDI::MachineControl& mmc() { return _mmc; } - private: AudioEngine (); @@ -207,10 +203,8 @@ public: framecnt_t last_monitor_check; /// the number of frames processed since start() was called framecnt_t _processed_frames; - bool _pre_freewheel_mmc_enabled; Glib::Threads::Thread* m_meter_thread; ProcessThread* _main_thread; - MIDI::MachineControl _mmc; void meter_thread (); void start_metering_thread (); diff --git a/libs/ardour/ardour/midiport_manager.h b/libs/ardour/ardour/midiport_manager.h index 9a32bfe475..9f93c43d5a 100644 --- a/libs/ardour/ardour/midiport_manager.h +++ b/libs/ardour/ardour/midiport_manager.h @@ -65,7 +65,7 @@ class MidiPortManager { boost::shared_ptr<MidiPort> midi_clock_input_port() const { return _midi_clock_input_port; } boost::shared_ptr<MidiPort> midi_clock_output_port() const { return _midi_clock_output_port; } - void set_midi_port_states (); + void set_midi_port_states (const XMLNodeList&); std::list<XMLNode*> get_midi_port_states () const; PBD::Signal0<void> PortsChanged; diff --git a/libs/ardour/ardour/port_manager.h b/libs/ardour/ardour/port_manager.h index 895294810e..6d45597a41 100644 --- a/libs/ardour/ardour/port_manager.h +++ b/libs/ardour/ardour/port_manager.h @@ -38,7 +38,7 @@ namespace ARDOUR { -class PortManager : public MidiPortManager +class PortManager { public: typedef std::map<std::string,boost::shared_ptr<Port> > Ports; diff --git a/libs/ardour/ardour/rc_configuration.h b/libs/ardour/ardour/rc_configuration.h index ff1c5f035c..e2f68477a1 100644 --- a/libs/ardour/ardour/rc_configuration.h +++ b/libs/ardour/ardour/rc_configuration.h @@ -52,7 +52,6 @@ class RCConfiguration : public Configuration XMLNode * instant_xml (const std::string& str); XMLNode* control_protocol_state () { return _control_protocol_state; } - std::list<XMLNode*> midi_port_states () { return _midi_port_states; } /* define accessor methods */ @@ -81,11 +80,6 @@ class RCConfiguration : public Configuration #undef CONFIG_VARIABLE_SPECIAL XMLNode* _control_protocol_state; - - /** MIDI port nodes from the RC configuration. We store them so that we can set their - state once the audio engine and hence ports are up. - */ - std::list<XMLNode*> _midi_port_states; }; /* XXX: rename this */ diff --git a/libs/ardour/ardour/session.h b/libs/ardour/ardour/session.h index 31f0658931..ded5a07f91 100644 --- a/libs/ardour/ardour/session.h +++ b/libs/ardour/ardour/session.h @@ -110,6 +110,8 @@ class IOProcessor; class ImportStatus; class MidiClockTicker; class MidiControlUI; +class MidiPortManager; +class MidiPort; class MidiRegion; class MidiSource; class MidiTrack; @@ -860,6 +862,18 @@ class Session : public PBD::StatefulDestructible, public PBD::ScopedConnectionLi boost::shared_ptr<IO> ltc_input_io() { return _ltc_input; } boost::shared_ptr<IO> ltc_output_io() { return _ltc_output; } + MIDI::Port* midi_input_port () const; + MIDI::Port* midi_output_port () const; + MIDI::Port* mmc_output_port () const; + MIDI::Port* mmc_input_port () const; + + boost::shared_ptr<MidiPort> midi_clock_output_port () const; + boost::shared_ptr<MidiPort> midi_clock_input_port () const; + boost::shared_ptr<MidiPort> mtc_output_port () const; + boost::shared_ptr<MidiPort> mtc_input_port () const; + + MIDI::MachineControl& mmc() { return *_mmc; } + /* Callbacks specifically related to JACK, and called directly * from the JACK audio backend. */ @@ -1597,6 +1611,10 @@ class Session : public PBD::StatefulDestructible, public PBD::ScopedConnectionLi void reconnect_ltc_input (); void reconnect_ltc_output (); + + /* persistent, non-track related MIDI ports */ + MidiPortManager* _midi_ports; + MIDI::MachineControl* _mmc; }; } // namespace ARDOUR |