mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-11 09:06:33 +01:00
Trim include dependency graph, especially for io.h and session.h.
Clean up some stuff and other such gruntwork in the process. git-svn-id: svn://localhost/ardour2/branches/3.0@4468 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
a384dab130
commit
aaa91db6d9
58 changed files with 425 additions and 387 deletions
|
|
@ -677,9 +677,9 @@ env = conf.Finish()
|
|||
|
||||
opt_flags = []
|
||||
if env['GPROFILE'] == 1:
|
||||
debug_flags = [ '-g', '-pg' ]
|
||||
debug_flags = [ '-O0', '-g', '-pg' ]
|
||||
else:
|
||||
debug_flags = [ '-g' ]
|
||||
debug_flags = [ '-O0', '-g' ]
|
||||
|
||||
# guess at the platform, used to define compiler flags
|
||||
|
||||
|
|
|
|||
|
|
@ -18,6 +18,8 @@
|
|||
*/
|
||||
|
||||
#include <pbd/memento_command.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/automation_control.h>
|
||||
#include "automation_region_view.h"
|
||||
#include "public_editor.h"
|
||||
|
||||
|
|
|
|||
|
|
@ -46,19 +46,20 @@
|
|||
#include <gtkmm2ext/window_title.h>
|
||||
#include <gtkmm2ext/choice.h>
|
||||
|
||||
#include <ardour/audio_track.h>
|
||||
#include <ardour/audio_diskstream.h>
|
||||
#include <ardour/plugin_manager.h>
|
||||
#include <ardour/location.h>
|
||||
#include <ardour/audio_track.h>
|
||||
#include <ardour/audioplaylist.h>
|
||||
#include <ardour/audioregion.h>
|
||||
#include <ardour/location.h>
|
||||
#include <ardour/midi_region.h>
|
||||
#include <ardour/session_route.h>
|
||||
#include <ardour/plugin_manager.h>
|
||||
#include <ardour/profile.h>
|
||||
#include <ardour/route_group.h>
|
||||
#include <ardour/session_directory.h>
|
||||
#include <ardour/session_route.h>
|
||||
#include <ardour/session_state_utils.h>
|
||||
#include <ardour/tempo.h>
|
||||
#include <ardour/utils.h>
|
||||
#include <ardour/profile.h>
|
||||
|
||||
#include <control_protocol/control_protocol.h>
|
||||
|
||||
|
|
|
|||
|
|
@ -24,12 +24,13 @@
|
|||
|
||||
#include <pbd/convert.h>
|
||||
|
||||
#include <ardour/audio_port.h>
|
||||
#include <ardour/audio_track.h>
|
||||
#include <ardour/audioengine.h>
|
||||
#include <ardour/export_channel_configuration.h>
|
||||
#include <ardour/export_handler.h>
|
||||
#include <ardour/io.h>
|
||||
#include <ardour/route.h>
|
||||
#include <ardour/audio_port.h>
|
||||
#include <ardour/session.h>
|
||||
|
||||
#include <sstream>
|
||||
|
|
|
|||
|
|
@ -924,3 +924,10 @@ GainMeter::meter_metrics_expose (GdkEventExpose *ev)
|
|||
return true;
|
||||
}
|
||||
|
||||
boost::shared_ptr<PBD::Controllable>
|
||||
GainMeterBase::get_controllable()
|
||||
{
|
||||
return _io->gain_control();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -74,7 +74,7 @@ class GainMeterBase : virtual public sigc::trackable
|
|||
|
||||
virtual void setup_meters (int len=0);
|
||||
|
||||
boost::shared_ptr<PBD::Controllable> get_controllable() { return _io->gain_control(); }
|
||||
boost::shared_ptr<PBD::Controllable> get_controllable();
|
||||
|
||||
LevelMeter& get_level_meter() const { return *level_meter; }
|
||||
Gtkmm2ext::SliderController& get_gain_slider() const { return *gain_slider; }
|
||||
|
|
|
|||
|
|
@ -21,7 +21,6 @@
|
|||
#define __ardour_gtk_track_meter_h__
|
||||
|
||||
#include <vector>
|
||||
#include <map>
|
||||
|
||||
#include <gtkmm/box.h>
|
||||
#include <gtkmm/adjustment.h>
|
||||
|
|
@ -93,7 +92,7 @@ class LevelMeter : public Gtk::HBox
|
|||
|
||||
guint16 regular_meter_width;
|
||||
static const guint16 thin_meter_width = 2;
|
||||
vector<MeterInfo> meters;
|
||||
std::vector<MeterInfo> meters;
|
||||
float max_peak;
|
||||
|
||||
void hide_all_meters ();
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@
|
|||
#include <ardour/session.h>
|
||||
#include <ardour/audioengine.h>
|
||||
#include <ardour/route.h>
|
||||
#include <ardour/route_group.h>
|
||||
#include <ardour/audio_track.h>
|
||||
#include <ardour/audio_diskstream.h>
|
||||
#include <ardour/panner.h>
|
||||
|
|
|
|||
|
|
@ -42,9 +42,7 @@
|
|||
|
||||
#include <ardour/types.h>
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/io.h>
|
||||
#include <ardour/processor.h>
|
||||
#include <ardour/io_processor.h>
|
||||
|
||||
#include <pbd/fastlog.h>
|
||||
|
||||
|
|
|
|||
|
|
@ -30,11 +30,12 @@
|
|||
#include <gtkmm2ext/stop_signal.h>
|
||||
#include <gtkmm2ext/window_title.h>
|
||||
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/audio_track.h>
|
||||
#include <ardour/session_route.h>
|
||||
#include <ardour/audio_diskstream.h>
|
||||
#include <ardour/audio_track.h>
|
||||
#include <ardour/plugin_manager.h>
|
||||
#include <ardour/route_group.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/session_route.h>
|
||||
|
||||
#include "keyboard.h"
|
||||
#include "mixer_ui.h"
|
||||
|
|
|
|||
|
|
@ -35,7 +35,6 @@
|
|||
#include <pbd/stateful.h>
|
||||
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/io.h>
|
||||
|
||||
#include "route_processor_selection.h"
|
||||
#include "enums.h"
|
||||
|
|
|
|||
|
|
@ -633,7 +633,7 @@ Panner2d::on_button_release_event (GdkEventButton *ev)
|
|||
|
||||
|
||||
for (Targets::iterator i = pucks.begin(); i != pucks.end(); ++i) {
|
||||
Target* puck = i->second;
|
||||
//Target* puck = i->second;
|
||||
|
||||
/* XXX DO SOMETHING TO SET PUCK BACK TO "normal" */
|
||||
}
|
||||
|
|
|
|||
|
|
@ -114,8 +114,8 @@ class PannerUI : public Gtk::HBox
|
|||
|
||||
void panning_link_direction_clicked ();
|
||||
|
||||
vector<Gtk::Adjustment*> pan_adjustments;
|
||||
vector<PannerBar*> pan_bars;
|
||||
std::vector<Gtk::Adjustment*> pan_adjustments;
|
||||
std::vector<PannerBar*> pan_bars;
|
||||
|
||||
void pan_adjustment_changed (uint32_t which);
|
||||
void pan_value_changed (uint32_t which);
|
||||
|
|
|
|||
|
|
@ -17,17 +17,21 @@
|
|||
|
||||
*/
|
||||
|
||||
#include <cstring>
|
||||
#include <boost/shared_ptr.hpp>
|
||||
|
||||
#include "ardour/audio_track.h"
|
||||
#include "ardour/audioengine.h"
|
||||
#include "ardour/bundle.h"
|
||||
#include "ardour/io_processor.h"
|
||||
#include "ardour/midi_track.h"
|
||||
#include "ardour/port.h"
|
||||
#include "ardour/session.h"
|
||||
|
||||
#include "port_group.h"
|
||||
#include "port_matrix.h"
|
||||
|
||||
#include "i18n.h"
|
||||
#include "ardour/session.h"
|
||||
#include "ardour/audio_track.h"
|
||||
#include "ardour/midi_track.h"
|
||||
#include "ardour/audioengine.h"
|
||||
#include "ardour/port.h"
|
||||
#include "ardour/bundle.h"
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <cstring>
|
||||
|
||||
using namespace std;
|
||||
using namespace Gtk;
|
||||
|
|
|
|||
|
|
@ -36,7 +36,6 @@
|
|||
|
||||
#include <ardour/types.h>
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/io.h>
|
||||
#include <ardour/plugin_insert.h>
|
||||
#include <ardour/port_insert.h>
|
||||
#include <ardour/processor.h>
|
||||
|
|
@ -56,6 +55,7 @@ class RouteRedirectSelection;
|
|||
|
||||
namespace ARDOUR {
|
||||
class Connection;
|
||||
class IO;
|
||||
class Insert;
|
||||
class Plugin;
|
||||
class PluginInsert;
|
||||
|
|
|
|||
|
|
@ -35,8 +35,6 @@
|
|||
#include <pbd/stateful.h>
|
||||
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/io.h>
|
||||
#include <ardour/io_processor.h>
|
||||
|
||||
#include "io_selector.h"
|
||||
#include "ardour_dialog.h"
|
||||
|
|
|
|||
|
|
@ -40,19 +40,20 @@
|
|||
#include <gtkmm2ext/bindable_button.h>
|
||||
#include <gtkmm2ext/utils.h>
|
||||
|
||||
#include <ardour/playlist.h>
|
||||
#include <ardour/audioplaylist.h>
|
||||
#include <ardour/diskstream.h>
|
||||
#include <ardour/processor.h>
|
||||
#include <ardour/ladspa_plugin.h>
|
||||
#include <ardour/location.h>
|
||||
#include <ardour/panner.h>
|
||||
#include <ardour/playlist.h>
|
||||
#include <ardour/playlist.h>
|
||||
#include <ardour/processor.h>
|
||||
#include <ardour/profile.h>
|
||||
#include <ardour/route_group.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/session_playlist.h>
|
||||
#include <ardour/utils.h>
|
||||
#include <evoral/Parameter.hpp>
|
||||
#include <ardour/profile.h>
|
||||
|
||||
#include "ardour_ui.h"
|
||||
#include "route_time_axis.h"
|
||||
|
|
|
|||
|
|
@ -20,6 +20,9 @@
|
|||
#ifndef __ardour_route_time_axis_h__
|
||||
#define __ardour_route_time_axis_h__
|
||||
|
||||
#include <list>
|
||||
#include <set>
|
||||
|
||||
#include <gtkmm/table.h>
|
||||
#include <gtkmm/button.h>
|
||||
#include <gtkmm/box.h>
|
||||
|
|
@ -31,7 +34,6 @@
|
|||
|
||||
#include <gtkmm2ext/selector.h>
|
||||
#include <gtkmm2ext/slider_controller.h>
|
||||
#include <list>
|
||||
|
||||
#include <ardour/playlist.h>
|
||||
#include <ardour/types.h>
|
||||
|
|
@ -305,7 +307,7 @@ protected:
|
|||
ProcessorAutomationCurves processor_automation_curves;
|
||||
|
||||
// Set from XML so context menu automation buttons can be correctly initialized
|
||||
set<Evoral::Parameter> _show_automation;
|
||||
std::set<Evoral::Parameter> _show_automation;
|
||||
|
||||
AutomationTracks _automation_tracks;
|
||||
|
||||
|
|
|
|||
|
|
@ -17,9 +17,11 @@
|
|||
|
||||
*/
|
||||
|
||||
#include <ardour/send.h>
|
||||
#include <gtkmm2ext/doi.h>
|
||||
|
||||
#include <ardour/io.h>
|
||||
#include <ardour/send.h>
|
||||
|
||||
#include "utils.h"
|
||||
#include "send_ui.h"
|
||||
#include "io_selector.h"
|
||||
|
|
|
|||
|
|
@ -36,9 +36,6 @@
|
|||
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/configuration.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/route_group.h>
|
||||
#include <ardour/route.h>
|
||||
#include <ardour/utils.h>
|
||||
#include <ardour/diskstream.h>
|
||||
#include <ardour/audioplaylist.h>
|
||||
|
|
@ -261,7 +258,7 @@ class AudioDiskstream : public Diskstream
|
|||
void process_varispeed_playback(nframes_t nframes, boost::shared_ptr<ChannelList> c);
|
||||
|
||||
/* The two central butler operations */
|
||||
int do_flush (Session::RunContext context, bool force = false);
|
||||
int do_flush (RunContext context, bool force = false);
|
||||
int do_refill () { return _do_refill(_mixdown_buffer, _gain_buffer); }
|
||||
|
||||
int do_refill_with_alloc ();
|
||||
|
|
|
|||
|
|
@ -23,9 +23,6 @@
|
|||
#include <set>
|
||||
#include <map>
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <ardour/session_object.h>
|
||||
#include <ardour/automation_list.h>
|
||||
#include <ardour/automation_control.h>
|
||||
#include <ardour/event_type_map.h>
|
||||
#include <evoral/ControlSet.hpp>
|
||||
#include <evoral/Sequence.hpp>
|
||||
|
|
|
|||
|
|
@ -28,7 +28,6 @@
|
|||
|
||||
namespace ARDOUR {
|
||||
|
||||
class AutomationList;
|
||||
class Session;
|
||||
class Automatable;
|
||||
|
||||
|
|
|
|||
|
|
@ -20,16 +20,17 @@
|
|||
#ifndef __ardour_diskstream_h__
|
||||
#define __ardour_diskstream_h__
|
||||
|
||||
#include <sigc++/signal.h>
|
||||
|
||||
#include <cmath>
|
||||
#include <string>
|
||||
#include <queue>
|
||||
#include <map>
|
||||
#include <vector>
|
||||
|
||||
#include <cmath>
|
||||
#include <time.h>
|
||||
|
||||
#include <sigc++/signal.h>
|
||||
|
||||
#include <evoral/types.hpp>
|
||||
|
||||
#include <pbd/fastlog.h>
|
||||
#include <pbd/ringbufferNPT.h>
|
||||
#include <pbd/stateful.h>
|
||||
|
|
@ -37,20 +38,23 @@
|
|||
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/configuration.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/route_group.h>
|
||||
#include <ardour/route.h>
|
||||
#include <ardour/location.h>
|
||||
#include <ardour/session_object.h>
|
||||
#include <ardour/types.h>
|
||||
#include <ardour/utils.h>
|
||||
#include <ardour/chan_count.h>
|
||||
|
||||
struct tm;
|
||||
|
||||
namespace ARDOUR {
|
||||
|
||||
class AudioEngine;
|
||||
class IO;
|
||||
class Playlist;
|
||||
class Processor;
|
||||
class Region;
|
||||
class Send;
|
||||
class Session;
|
||||
class Playlist;
|
||||
class IO;
|
||||
|
||||
class Diskstream : public SessionObject
|
||||
{
|
||||
|
|
@ -195,7 +199,7 @@ class Diskstream : public SessionObject
|
|||
};
|
||||
|
||||
/* The two central butler operations */
|
||||
virtual int do_flush (Session::RunContext context, bool force = false) = 0;
|
||||
virtual int do_flush (RunContext context, bool force = false) = 0;
|
||||
virtual int do_refill () = 0;
|
||||
|
||||
/** For non-butler contexts (allocates temporary working buffers) */
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@
|
|||
#define __ardour_export_channel_h__
|
||||
|
||||
#include <ardour/audioregion.h>
|
||||
#include <ardour/audio_track.h>
|
||||
#include <ardour/buffer_set.h>
|
||||
|
||||
#include <set>
|
||||
|
|
@ -33,6 +32,8 @@
|
|||
namespace ARDOUR {
|
||||
|
||||
class Session;
|
||||
class AudioTrack;
|
||||
class AudioPort;
|
||||
|
||||
/// Export channel base class interface for different source types
|
||||
class ExportChannel
|
||||
|
|
|
|||
|
|
@ -21,11 +21,10 @@
|
|||
#ifndef __ardour_export_filename_h__
|
||||
#define __ardour_export_filename_h__
|
||||
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <glibmm/ustring.h>
|
||||
#include <pbd/statefuldestructible.h>
|
||||
|
||||
#include <ardour/session.h>
|
||||
|
||||
using Glib::ustring;
|
||||
|
||||
namespace ARDOUR
|
||||
|
|
|
|||
|
|
@ -28,8 +28,8 @@
|
|||
#include <boost/shared_ptr.hpp>
|
||||
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/types.h>
|
||||
#include <ardour/session.h>
|
||||
|
||||
namespace ARDOUR
|
||||
{
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@
|
|||
|
||||
#include "ardour.h"
|
||||
#include "automation_list.h"
|
||||
#include <evoral/Curve.hpp>
|
||||
|
||||
namespace ARDOUR {
|
||||
|
||||
|
|
|
|||
|
|
@ -27,7 +27,6 @@
|
|||
#include <pbd/stateful.h>
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/audioengine.h>
|
||||
#include <ardour/io.h>
|
||||
#include <ardour/io_processor.h>
|
||||
|
||||
namespace ARDOUR {
|
||||
|
|
|
|||
|
|
@ -42,6 +42,7 @@
|
|||
#include <ardour/chan_count.h>
|
||||
#include <ardour/latent.h>
|
||||
#include <ardour/automation_control.h>
|
||||
#include <ardour/session_object.h>
|
||||
|
||||
using std::string;
|
||||
using std::vector;
|
||||
|
|
|
|||
|
|
@ -21,9 +21,6 @@
|
|||
#define __ardour_redirect_h__
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <set>
|
||||
#include <map>
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <sigc++/signal.h>
|
||||
|
||||
|
|
@ -33,19 +30,15 @@
|
|||
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/processor.h>
|
||||
#include <ardour/io.h>
|
||||
#include <ardour/automation_list.h>
|
||||
|
||||
using std::map;
|
||||
using std::set;
|
||||
using std::string;
|
||||
using std::vector;
|
||||
|
||||
class XMLNode;
|
||||
|
||||
namespace ARDOUR {
|
||||
|
||||
class Session;
|
||||
class IO;
|
||||
|
||||
/** A mixer strip element (Processor) with Jack ports (IO).
|
||||
*/
|
||||
|
|
@ -59,17 +52,18 @@ class IOProcessor : public Processor
|
|||
IOProcessor (const IOProcessor&);
|
||||
virtual ~IOProcessor ();
|
||||
|
||||
virtual ChanCount output_streams() const { return _io->n_outputs(); }
|
||||
virtual ChanCount input_streams () const { return _io->n_inputs(); }
|
||||
virtual ChanCount natural_output_streams() const { return _io->n_outputs(); }
|
||||
virtual ChanCount natural_input_streams () const { return _io->n_inputs(); }
|
||||
virtual ChanCount output_streams() const;
|
||||
virtual ChanCount input_streams () const;
|
||||
virtual ChanCount natural_output_streams() const;
|
||||
virtual ChanCount natural_input_streams () const;
|
||||
|
||||
boost::shared_ptr<IO> io() { return _io; }
|
||||
boost::shared_ptr<const IO> io() const { return _io; }
|
||||
|
||||
virtual void automation_snapshot (nframes_t now, bool force) { _io->automation_snapshot(now, force); }
|
||||
virtual void automation_snapshot (nframes_t now, bool force);
|
||||
|
||||
virtual void run_in_place (BufferSet& in, nframes_t start_frame, nframes_t end_frame, nframes_t nframes, nframes_t offset) = 0;
|
||||
virtual void run_in_place (BufferSet& in, nframes_t start, nframes_t end,
|
||||
nframes_t nframes, nframes_t offset) = 0;
|
||||
|
||||
void silence (nframes_t nframes, nframes_t offset);
|
||||
|
||||
|
|
|
|||
|
|
@ -37,25 +37,23 @@
|
|||
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/configuration.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/route_group.h>
|
||||
#include <ardour/route.h>
|
||||
#include <ardour/utils.h>
|
||||
#include <ardour/diskstream.h>
|
||||
#include <ardour/midi_playlist.h>
|
||||
#include <ardour/midi_ring_buffer.h>
|
||||
#include <ardour/midi_state_tracker.h>
|
||||
#include <ardour/utils.h>
|
||||
|
||||
struct tm;
|
||||
|
||||
namespace ARDOUR {
|
||||
|
||||
class IO;
|
||||
class MidiEngine;
|
||||
class MidiPort;
|
||||
class MidiRingbuffer;
|
||||
class SMFSource;
|
||||
class Send;
|
||||
class Session;
|
||||
class MidiPlaylist;
|
||||
class SMFSource;
|
||||
class IO;
|
||||
|
||||
class MidiDiskstream : public Diskstream
|
||||
{
|
||||
|
|
@ -145,7 +143,7 @@ class MidiDiskstream : public Diskstream
|
|||
private:
|
||||
|
||||
/* The two central butler operations */
|
||||
int do_flush (Session::RunContext context, bool force = false);
|
||||
int do_flush (RunContext context, bool force = false);
|
||||
int do_refill ();
|
||||
|
||||
int do_refill_with_alloc();
|
||||
|
|
|
|||
|
|
@ -21,7 +21,6 @@
|
|||
|
||||
#include <ardour/types.h>
|
||||
#include <ardour/utils.h>
|
||||
#include <ardour/io.h>
|
||||
|
||||
#if defined (ARCH_X86) && defined (BUILD_SSE_OPTIMIZATIONS)
|
||||
|
||||
|
|
@ -29,7 +28,7 @@ extern "C" {
|
|||
/* SSE functions */
|
||||
float x86_sse_compute_peak (const ARDOUR::Sample * buf, nframes_t nsamples, float current);
|
||||
void x86_sse_apply_gain_to_buffer (ARDOUR::Sample * buf, nframes_t nframes, float gain);
|
||||
void x86_sse_mix_buffers_with_gain (ARDOUR::Sample * dst, const ARDOUR::Sample * src, nframes_t nframes, float gain);
|
||||
void x86_sse_mix_buffers_with_gain(ARDOUR::Sample * dst, const ARDOUR::Sample * src, nframes_t nframes, float gain);
|
||||
void x86_sse_mix_buffers_no_gain (ARDOUR::Sample * dst, const ARDOUR::Sample * src, nframes_t nframes);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -33,7 +33,6 @@
|
|||
#include <ardour/types.h>
|
||||
#include <ardour/automation_control.h>
|
||||
#include <ardour/processor.h>
|
||||
#include <ardour/session.h>
|
||||
|
||||
using std::istream;
|
||||
using std::ostream;
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
#include <ardour/ardour.h>
|
||||
#include <ardour/types.h>
|
||||
#include <ardour/processor.h>
|
||||
#include <ardour/automation_list.h>
|
||||
#include <ardour/automation_control.h>
|
||||
|
||||
class XMLNode;
|
||||
|
||||
|
|
|
|||
|
|
@ -20,13 +20,13 @@
|
|||
#ifndef __ardour_port_h__
|
||||
#define __ardour_port_h__
|
||||
|
||||
#include <set>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <jack/jack.h>
|
||||
#include <sigc++/trackable.h>
|
||||
#include "ardour/data_type.h"
|
||||
#include "ardour/types.h"
|
||||
#include <sigc++/trackable.h>
|
||||
#include <jack/jack.h>
|
||||
#include <string>
|
||||
#include <set>
|
||||
#include <vector>
|
||||
|
||||
namespace ARDOUR {
|
||||
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@
|
|||
#include <ardour/buffer_set.h>
|
||||
#include <ardour/automatable.h>
|
||||
#include <ardour/latent.h>
|
||||
#include <ardour/session_object.h>
|
||||
|
||||
class XMLNode;
|
||||
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@
|
|||
#include <ardour/data_type.h>
|
||||
#include <ardour/automatable.h>
|
||||
#include <ardour/readable.h>
|
||||
#include <ardour/session_object.h>
|
||||
|
||||
class XMLNode;
|
||||
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@ class XMLNode;
|
|||
namespace ARDOUR {
|
||||
|
||||
class Session;
|
||||
class AudioRegion;
|
||||
|
||||
class RegionFactory {
|
||||
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@
|
|||
#include <string>
|
||||
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <boost/weak_ptr.hpp>
|
||||
|
||||
#include <pbd/fastlog.h>
|
||||
#include <glibmm/thread.h>
|
||||
|
|
@ -38,13 +39,12 @@
|
|||
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/io.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/io_processor.h>
|
||||
#include <ardour/types.h>
|
||||
|
||||
namespace ARDOUR {
|
||||
|
||||
class Processor;
|
||||
class IOProcessor;
|
||||
class Send;
|
||||
class RouteGroup;
|
||||
|
||||
|
|
@ -154,7 +154,7 @@ class Route : public IO
|
|||
ProcessorList::iterator i;
|
||||
for (i = _processors.begin(); i != _processors.end() && n; ++i, --n);
|
||||
if (i == _processors.end()) {
|
||||
return boost::shared_ptr<IOProcessor> ();
|
||||
return boost::shared_ptr<Processor> ();
|
||||
} else {
|
||||
return *i;
|
||||
}
|
||||
|
|
@ -227,7 +227,7 @@ class Route : public IO
|
|||
IO* control_outs() { return _control_outs; }
|
||||
|
||||
bool feeds (boost::shared_ptr<Route>);
|
||||
set<boost::shared_ptr<Route> > fed_by;
|
||||
std::set<boost::shared_ptr<Route> > fed_by;
|
||||
|
||||
struct ToggleControllable : public PBD::Controllable {
|
||||
enum ToggleType {
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@
|
|||
#define __ardour_route_group_specialized_h__
|
||||
|
||||
#include <ardour/route_group.h>
|
||||
#include <ardour/audio_track.h>
|
||||
#include <ardour/track.h>
|
||||
|
||||
namespace ARDOUR {
|
||||
|
||||
|
|
|
|||
|
|
@ -27,7 +27,6 @@
|
|||
#include <pbd/stateful.h>
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/audioengine.h>
|
||||
#include <ardour/io.h>
|
||||
#include <ardour/io_processor.h>
|
||||
|
||||
namespace ARDOUR {
|
||||
|
|
|
|||
|
|
@ -20,41 +20,38 @@
|
|||
#ifndef __ardour_session_h__
|
||||
#define __ardour_session_h__
|
||||
|
||||
#include <string>
|
||||
#include <list>
|
||||
#include <map>
|
||||
#include <vector>
|
||||
#include <set>
|
||||
#include <stack>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <stdint.h>
|
||||
|
||||
#include <boost/dynamic_bitset.hpp>
|
||||
#include <boost/scoped_ptr.hpp>
|
||||
#include <boost/weak_ptr.hpp>
|
||||
#include <boost/dynamic_bitset.hpp>
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#include <sndfile.h>
|
||||
|
||||
#include <glibmm/thread.h>
|
||||
|
||||
#include <pbd/error.h>
|
||||
#include <pbd/undo.h>
|
||||
#include <pbd/pool.h>
|
||||
#include <pbd/rcu.h>
|
||||
#include <pbd/statefuldestructible.h>
|
||||
#include <pbd/undo.h>
|
||||
|
||||
#include <midi++/types.h>
|
||||
#include <midi++/mmc.h>
|
||||
#include <midi++/types.h>
|
||||
|
||||
#include <pbd/stateful.h>
|
||||
#include <pbd/destructible.h>
|
||||
#include <pbd/stateful.h>
|
||||
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/chan_count.h>
|
||||
#include <ardour/configuration.h>
|
||||
#include <ardour/location.h>
|
||||
#include <ardour/gain.h>
|
||||
#include <ardour/chan_count.h>
|
||||
|
||||
#include <ardour/smpte.h>
|
||||
|
||||
class XMLTree;
|
||||
|
|
@ -69,51 +66,50 @@ namespace PBD {
|
|||
class Controllable;
|
||||
}
|
||||
|
||||
namespace Evoral {
|
||||
class Curve;
|
||||
}
|
||||
|
||||
namespace ARDOUR {
|
||||
|
||||
class Port;
|
||||
class AudioEngine;
|
||||
class Slave;
|
||||
class Diskstream;
|
||||
class Route;
|
||||
class AuxInput;
|
||||
class Source;
|
||||
class AudioSource;
|
||||
class BufferSet;
|
||||
class IO;
|
||||
|
||||
class Diskstream;
|
||||
class AudioDiskstream;
|
||||
class MidiDiskstream;
|
||||
class AudioEngine;
|
||||
class AudioFileSource;
|
||||
class MidiSource;
|
||||
class Auditioner;
|
||||
class Processor;
|
||||
class Send;
|
||||
class IOProcessor;
|
||||
class PortInsert;
|
||||
class PluginInsert;
|
||||
class Bundle;
|
||||
class TempoMap;
|
||||
class AudioTrack;
|
||||
class NamedSelection;
|
||||
class AudioRegion;
|
||||
|
||||
class Region;
|
||||
class Playlist;
|
||||
class VSTPlugin;
|
||||
class AudioSource;
|
||||
class AudioTrack;
|
||||
class Auditioner;
|
||||
class AutomationList;
|
||||
class AuxInput;
|
||||
class BufferSet;
|
||||
class Bundle;
|
||||
class ControlProtocolInfo;
|
||||
|
||||
class MidiTrack;
|
||||
class MidiRegion;
|
||||
class SMFSource;
|
||||
|
||||
class SessionDirectory;
|
||||
class SessionMetadata;
|
||||
class Diskstream;
|
||||
class ExportHandler;
|
||||
class ExportStatus;
|
||||
|
||||
struct RouteGroup;
|
||||
class IO;
|
||||
class IOProcessor;
|
||||
class MidiDiskstream;
|
||||
class MidiRegion;
|
||||
class MidiSource;
|
||||
class MidiTrack;
|
||||
class NamedSelection;
|
||||
class Playlist;
|
||||
class PluginInsert;
|
||||
class Port;
|
||||
class PortInsert;
|
||||
class Processor;
|
||||
class Region;
|
||||
class Route;
|
||||
class RouteGroup;
|
||||
class SMFSource;
|
||||
class Send;
|
||||
class SessionDirectory;
|
||||
class SessionMetadata;
|
||||
class Slave;
|
||||
class Source;
|
||||
class TempoMap;
|
||||
class VSTPlugin;
|
||||
|
||||
using std::vector;
|
||||
using std::string;
|
||||
|
|
@ -728,8 +724,8 @@ class Session : public PBD::StatefulDestructible
|
|||
|
||||
/* flattening stuff */
|
||||
|
||||
boost::shared_ptr<Region> write_one_track (AudioTrack&, nframes_t start, nframes_t end, bool overwrite, vector<boost::shared_ptr<Source> >&,
|
||||
InterThreadInfo& wot);
|
||||
boost::shared_ptr<Region> write_one_track (AudioTrack&, nframes_t start, nframes_t end,
|
||||
bool overwrite, vector<boost::shared_ptr<Source> >&, InterThreadInfo& wot);
|
||||
int freeze (InterThreadInfo&);
|
||||
|
||||
/* session-wide solo/mute/rec-enable */
|
||||
|
|
@ -946,13 +942,6 @@ class Session : public PBD::StatefulDestructible
|
|||
gain_t* gain_automation_buffer () const { return _gain_automation_buffer; }
|
||||
pan_t** pan_automation_buffer () const { return _pan_automation_buffer; }
|
||||
|
||||
/* buffers for conversion */
|
||||
enum RunContext {
|
||||
ButlerContext = 0,
|
||||
TransportContext,
|
||||
ExportContext
|
||||
};
|
||||
|
||||
/* VST support */
|
||||
|
||||
static long vst_callback (AEffect* effect,
|
||||
|
|
@ -971,8 +960,6 @@ class Session : public PBD::StatefulDestructible
|
|||
void add_controllable (boost::shared_ptr<PBD::Controllable>);
|
||||
void remove_controllable (PBD::Controllable*);
|
||||
|
||||
/* metadata */
|
||||
|
||||
SessionMetadata & metadata () { return *_metadata; }
|
||||
|
||||
protected:
|
||||
|
|
@ -1235,7 +1222,8 @@ class Session : public PBD::StatefulDestructible
|
|||
};
|
||||
|
||||
static const PostTransportWork ProcessCannotProceedMask =
|
||||
PostTransportWork (PostTransportInputChange|
|
||||
PostTransportWork (
|
||||
PostTransportInputChange|
|
||||
PostTransportSpeed|
|
||||
PostTransportReverse|
|
||||
PostTransportCurveRealloc|
|
||||
|
|
@ -1397,15 +1385,11 @@ class Session : public PBD::StatefulDestructible
|
|||
bool process_can_proceed() const { return !(post_transport_work & ProcessCannotProceedMask); }
|
||||
|
||||
struct MIDIRequest {
|
||||
|
||||
enum Type {
|
||||
PortChange,
|
||||
Quit
|
||||
};
|
||||
|
||||
Type type;
|
||||
|
||||
MIDIRequest () {}
|
||||
};
|
||||
|
||||
Glib::Mutex midi_lock;
|
||||
|
|
@ -1730,7 +1714,6 @@ class Session : public PBD::StatefulDestructible
|
|||
uint32_t n_physical_midi_outputs;
|
||||
uint32_t n_physical_midi_inputs;
|
||||
|
||||
|
||||
int find_all_sources (std::string path, std::set<std::string>& result);
|
||||
int find_all_sources_across_snapshots (std::set<std::string>& result, bool exclude_this_snapshot);
|
||||
|
||||
|
|
@ -1754,13 +1737,9 @@ class Session : public PBD::StatefulDestructible
|
|||
|
||||
static bool _disable_all_loaded_plugins;
|
||||
|
||||
/* Metadata */
|
||||
|
||||
SessionMetadata * _metadata;
|
||||
|
||||
/* used in ::audible_frame() */
|
||||
|
||||
mutable bool have_looped;
|
||||
mutable bool have_looped; ///< Used in ::audible_frame(*)
|
||||
};
|
||||
|
||||
} // namespace ARDOUR
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@ class Session;
|
|||
class Diskstream;
|
||||
class Playlist;
|
||||
class RouteGroup;
|
||||
class Region;
|
||||
|
||||
class Track : public Route
|
||||
{
|
||||
|
|
|
|||
|
|
@ -379,6 +379,12 @@ namespace ARDOUR {
|
|||
VST
|
||||
};
|
||||
|
||||
enum RunContext {
|
||||
ButlerContext = 0,
|
||||
TransportContext,
|
||||
ExportContext
|
||||
};
|
||||
|
||||
enum SlaveSource {
|
||||
None = 0,
|
||||
MTC,
|
||||
|
|
|
|||
|
|
@ -53,6 +53,8 @@
|
|||
#include <ardour/audio_port.h>
|
||||
#include <ardour/source_factory.h>
|
||||
#include <ardour/audio_buffer.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/io.h>
|
||||
|
||||
#include "i18n.h"
|
||||
#include <locale.h>
|
||||
|
|
@ -1403,7 +1405,7 @@ AudioDiskstream::_do_refill (Sample* mixdown_buffer, float* gain_buffer)
|
|||
* written at all unless @a force_flush is true.
|
||||
*/
|
||||
int
|
||||
AudioDiskstream::do_flush (Session::RunContext context, bool force_flush)
|
||||
AudioDiskstream::do_flush (RunContext context, bool force_flush)
|
||||
{
|
||||
uint32_t to_write;
|
||||
int32_t ret = 0;
|
||||
|
|
@ -1555,7 +1557,7 @@ AudioDiskstream::transport_stopped (struct tm& when, time_t twhen, bool abort_ca
|
|||
*/
|
||||
|
||||
while (more_work && !err) {
|
||||
switch (do_flush (Session::TransportContext, true)) {
|
||||
switch (do_flush (TransportContext, true)) {
|
||||
case 0:
|
||||
more_work = false;
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -50,6 +50,9 @@
|
|||
#include <ardour/cycle_timer.h>
|
||||
#include <ardour/region.h>
|
||||
#include <ardour/panner.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/io.h>
|
||||
#include <ardour/route.h>
|
||||
|
||||
#include "i18n.h"
|
||||
#include <locale.h>
|
||||
|
|
|
|||
|
|
@ -18,12 +18,13 @@
|
|||
|
||||
*/
|
||||
|
||||
#include <ardour/export_channel.h>
|
||||
|
||||
#include <ardour/export_failed.h>
|
||||
#include <ardour/audioengine.h>
|
||||
#include <ardour/audio_port.h>
|
||||
#include <ardour/audio_buffer.h>
|
||||
#include <ardour/audio_port.h>
|
||||
#include <ardour/audio_track.h>
|
||||
#include <ardour/audioengine.h>
|
||||
#include <ardour/export_channel.h>
|
||||
#include <ardour/export_failed.h>
|
||||
#include <ardour/session.h>
|
||||
|
||||
using namespace ARDOUR;
|
||||
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
#include <ardour/buffer_set.h>
|
||||
#include <ardour/meter.h>
|
||||
#include <ardour/panner.h>
|
||||
#include <ardour/io.h>
|
||||
|
||||
#include "i18n.h"
|
||||
|
||||
|
|
|
|||
|
|
@ -35,6 +35,7 @@
|
|||
#include <ardour/send.h>
|
||||
#include <ardour/port_insert.h>
|
||||
#include <ardour/plugin_insert.h>
|
||||
#include <ardour/io.h>
|
||||
|
||||
#include "i18n.h"
|
||||
|
||||
|
|
@ -121,3 +122,34 @@ IOProcessor::silence (nframes_t nframes, nframes_t offset)
|
|||
{
|
||||
_io->silence(nframes, offset);
|
||||
}
|
||||
|
||||
ChanCount
|
||||
IOProcessor::output_streams() const
|
||||
{
|
||||
return _io->n_outputs();
|
||||
}
|
||||
|
||||
ChanCount
|
||||
IOProcessor::input_streams () const
|
||||
{
|
||||
return _io->n_inputs();
|
||||
}
|
||||
|
||||
ChanCount
|
||||
IOProcessor::natural_output_streams() const
|
||||
{
|
||||
return _io->n_outputs();
|
||||
}
|
||||
|
||||
ChanCount
|
||||
IOProcessor::natural_input_streams () const
|
||||
{
|
||||
return _io->n_inputs();
|
||||
}
|
||||
|
||||
void
|
||||
IOProcessor::automation_snapshot (nframes_t now, bool force)
|
||||
{
|
||||
_io->automation_snapshot(now, force);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -38,17 +38,19 @@
|
|||
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/audioengine.h>
|
||||
#include <ardour/midi_diskstream.h>
|
||||
#include <ardour/utils.h>
|
||||
#include <ardour/configuration.h>
|
||||
#include <ardour/smf_source.h>
|
||||
#include <ardour/send.h>
|
||||
#include <ardour/region_factory.h>
|
||||
#include <ardour/midi_playlist.h>
|
||||
#include <ardour/playlist_factory.h>
|
||||
#include <ardour/cycle_timer.h>
|
||||
#include <ardour/midi_region.h>
|
||||
#include <ardour/io.h>
|
||||
#include <ardour/midi_diskstream.h>
|
||||
#include <ardour/midi_playlist.h>
|
||||
#include <ardour/midi_port.h>
|
||||
#include <ardour/midi_region.h>
|
||||
#include <ardour/playlist_factory.h>
|
||||
#include <ardour/region_factory.h>
|
||||
#include <ardour/send.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/smf_source.h>
|
||||
#include <ardour/utils.h>
|
||||
|
||||
#include "i18n.h"
|
||||
#include <locale.h>
|
||||
|
|
@ -870,7 +872,7 @@ MidiDiskstream::do_refill ()
|
|||
* written at all unless @a force_flush is true.
|
||||
*/
|
||||
int
|
||||
MidiDiskstream::do_flush (Session::RunContext context, bool force_flush)
|
||||
MidiDiskstream::do_flush (RunContext context, bool force_flush)
|
||||
{
|
||||
uint32_t to_write;
|
||||
int32_t ret = 0;
|
||||
|
|
@ -941,7 +943,7 @@ MidiDiskstream::transport_stopped (struct tm& when, time_t twhen, bool abort_cap
|
|||
*/
|
||||
|
||||
while (more_work && !err) {
|
||||
switch (do_flush (Session::TransportContext, true)) {
|
||||
switch (do_flush (TransportContext, true)) {
|
||||
case 0:
|
||||
more_work = false;
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -31,6 +31,7 @@
|
|||
#include <ardour/audio_track.h>
|
||||
#include <ardour/audio_diskstream.h>
|
||||
#include <ardour/configuration.h>
|
||||
#include <ardour/session.h>
|
||||
|
||||
using namespace ARDOUR;
|
||||
using namespace sigc;
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
#include <ardour/buffer_set.h>
|
||||
#include <ardour/meter.h>
|
||||
#include <ardour/panner.h>
|
||||
#include <ardour/io.h>
|
||||
|
||||
#include "i18n.h"
|
||||
|
||||
|
|
|
|||
|
|
@ -43,47 +43,48 @@
|
|||
#include <pbd/stacktrace.h>
|
||||
#include <pbd/file_utils.h>
|
||||
|
||||
#include <ardour/audioengine.h>
|
||||
#include <ardour/configuration.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/session_directory.h>
|
||||
#include <ardour/session_metadata.h>
|
||||
#include <ardour/utils.h>
|
||||
#include <ardour/analyser.h>
|
||||
#include <ardour/audio_buffer.h>
|
||||
#include <ardour/audio_diskstream.h>
|
||||
#include <ardour/audio_track.h>
|
||||
#include <ardour/audioengine.h>
|
||||
#include <ardour/audiofilesource.h>
|
||||
#include <ardour/audioplaylist.h>
|
||||
#include <ardour/audioregion.h>
|
||||
#include <ardour/audiofilesource.h>
|
||||
#include <ardour/auditioner.h>
|
||||
#include <ardour/buffer_set.h>
|
||||
#include <ardour/bundle.h>
|
||||
#include <ardour/click.h>
|
||||
#include <ardour/configuration.h>
|
||||
#include <ardour/crossfade.h>
|
||||
#include <ardour/cycle_timer.h>
|
||||
#include <ardour/data_type.h>
|
||||
#include <ardour/filename_extensions.h>
|
||||
#include <ardour/internal_send.h>
|
||||
#include <ardour/io_processor.h>
|
||||
#include <ardour/midi_diskstream.h>
|
||||
#include <ardour/midi_playlist.h>
|
||||
#include <ardour/midi_region.h>
|
||||
#include <ardour/smf_source.h>
|
||||
#include <ardour/auditioner.h>
|
||||
#include <ardour/recent_sessions.h>
|
||||
#include <ardour/io_processor.h>
|
||||
#include <ardour/send.h>
|
||||
#include <ardour/processor.h>
|
||||
#include <ardour/midi_track.h>
|
||||
#include <ardour/named_selection.h>
|
||||
#include <ardour/playlist.h>
|
||||
#include <ardour/plugin_insert.h>
|
||||
#include <ardour/port_insert.h>
|
||||
#include <ardour/slave.h>
|
||||
#include <ardour/tempo.h>
|
||||
#include <ardour/audio_track.h>
|
||||
#include <ardour/midi_track.h>
|
||||
#include <ardour/cycle_timer.h>
|
||||
#include <ardour/named_selection.h>
|
||||
#include <ardour/crossfade.h>
|
||||
#include <ardour/playlist.h>
|
||||
#include <ardour/internal_send.h>
|
||||
#include <ardour/click.h>
|
||||
#include <ardour/data_type.h>
|
||||
#include <ardour/buffer_set.h>
|
||||
#include <ardour/source_factory.h>
|
||||
#include <ardour/processor.h>
|
||||
#include <ardour/recent_sessions.h>
|
||||
#include <ardour/region_factory.h>
|
||||
#include <ardour/filename_extensions.h>
|
||||
#include <ardour/route_group.h>
|
||||
#include <ardour/send.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/session_directory.h>
|
||||
#include <ardour/session_directory.h>
|
||||
#include <ardour/session_metadata.h>
|
||||
#include <ardour/slave.h>
|
||||
#include <ardour/smf_source.h>
|
||||
#include <ardour/source_factory.h>
|
||||
#include <ardour/tape_file_matcher.h>
|
||||
#include <ardour/analyser.h>
|
||||
#include <ardour/audio_buffer.h>
|
||||
#include <ardour/bundle.h>
|
||||
#include <ardour/tempo.h>
|
||||
#include <ardour/utils.h>
|
||||
|
||||
#include "i18n.h"
|
||||
|
||||
|
|
|
|||
|
|
@ -31,12 +31,13 @@
|
|||
#include <pbd/pthread_utils.h>
|
||||
#include <pbd/stacktrace.h>
|
||||
|
||||
#include <ardour/configuration.h>
|
||||
#include <ardour/audioengine.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/audio_diskstream.h>
|
||||
#include <ardour/midi_diskstream.h>
|
||||
#include <ardour/audioengine.h>
|
||||
#include <ardour/configuration.h>
|
||||
#include <ardour/crossfade.h>
|
||||
#include <ardour/io.h>
|
||||
#include <ardour/midi_diskstream.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/timestamps.h>
|
||||
|
||||
#include "i18n.h"
|
||||
|
|
@ -315,7 +316,7 @@ Session::butler_thread_work ()
|
|||
/* note that we still try to flush diskstreams attached to inactive routes
|
||||
*/
|
||||
|
||||
switch ((*i)->do_flush (Session::ButlerContext)) {
|
||||
switch ((*i)->do_flush (ButlerContext)) {
|
||||
case 0:
|
||||
bytes += (*i)->write_data_count();
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -22,17 +22,18 @@
|
|||
#include <pbd/error.h>
|
||||
#include <glibmm/thread.h>
|
||||
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/audio_diskstream.h>
|
||||
#include <ardour/audioengine.h>
|
||||
#include <ardour/export_failed.h>
|
||||
#include <ardour/export_file_io.h>
|
||||
#include <ardour/export_utilities.h>
|
||||
#include <ardour/export_handler.h>
|
||||
#include <ardour/export_status.h>
|
||||
#include <ardour/timestamps.h>
|
||||
#include <ardour/ardour.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/audioengine.h>
|
||||
#include <ardour/audio_diskstream.h>
|
||||
#include <ardour/export_utilities.h>
|
||||
#include <ardour/panner.h>
|
||||
#include <ardour/route.h>
|
||||
#include <ardour/session.h>
|
||||
#include <ardour/timestamps.h>
|
||||
|
||||
#include "i18n.h"
|
||||
|
||||
|
|
|
|||
|
|
@ -103,6 +103,7 @@
|
|||
#include <ardour/directory_names.h>
|
||||
#include <ardour/template_utils.h>
|
||||
#include <ardour/ticker.h>
|
||||
#include <ardour/route_group.h>
|
||||
|
||||
#include <control_protocol/control_protocol.h>
|
||||
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@
|
|||
#include <glibmm/miscutils.h>
|
||||
|
||||
#include <evoral/SMFReader.hpp>
|
||||
#include <evoral/Control.hpp>
|
||||
|
||||
#include <ardour/smf_source.h>
|
||||
#include <ardour/session.h>
|
||||
|
|
|
|||
|
|
@ -117,12 +117,12 @@ ControlProtocol::prev_track (uint32_t initial_id)
|
|||
}
|
||||
|
||||
if (id < 0) {
|
||||
id = limit;
|
||||
while (id > initial_id) {
|
||||
if ((cr = session->route_by_remote_id (id)) != 0) {
|
||||
uint32_t i = limit;
|
||||
while (i > initial_id) {
|
||||
if ((cr = session->route_by_remote_id (i)) != 0) {
|
||||
break;
|
||||
}
|
||||
id--;
|
||||
i--;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue