summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gtk2_ardour/automation_region_view.cc19
-rw-r--r--gtk2_ardour/edit_note_dialog.cc1
-rw-r--r--gtk2_ardour/editor_drag.cc6
-rw-r--r--gtk2_ardour/editor_export_audio.cc30
-rw-r--r--gtk2_ardour/editor_ops.cc23
-rw-r--r--gtk2_ardour/midi_list_editor.cc7
-rw-r--r--gtk2_ardour/midi_list_editor.h7
-rw-r--r--gtk2_ardour/midi_region_view.cc6
-rw-r--r--gtk2_ardour/midi_region_view.h4
-rw-r--r--gtk2_ardour/midi_time_axis.cc11
-rw-r--r--libs/ardour/ardour/midi_region.h26
-rw-r--r--libs/ardour/midi_diskstream.cc5
-rw-r--r--libs/ardour/midi_playlist.cc7
-rw-r--r--libs/ardour/midi_region.cc25
-rw-r--r--libs/ardour/midi_stretch.cc6
-rw-r--r--libs/ardour/region_factory.cc1
-rw-r--r--libs/ardour/session_state.cc1
17 files changed, 114 insertions, 71 deletions
diff --git a/gtk2_ardour/automation_region_view.cc b/gtk2_ardour/automation_region_view.cc
index fff86025d2..0acd002de7 100644
--- a/gtk2_ardour/automation_region_view.cc
+++ b/gtk2_ardour/automation_region_view.cc
@@ -17,21 +17,24 @@
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
+#include <utility>
+
#include "pbd/memento_command.h"
+
#include "ardour/automation_control.h"
#include "ardour/event_type_map.h"
-#include "ardour/session.h"
-#include "ardour/source.h"
#include "ardour/midi_automation_list_binder.h"
#include "ardour/midi_region.h"
+#include "ardour/session.h"
+#include "ardour/source.h"
#include "automation_region_view.h"
+#include "editing.h"
+#include "editor.h"
+#include "editor_drag.h"
#include "gui_thread.h"
-#include "public_editor.h"
#include "midi_automation_line.h"
-#include "editor_drag.h"
-#include "editor.h"
-#include "editing.h"
+#include "public_editor.h"
#include "i18n.h"
@@ -116,8 +119,8 @@ AutomationRegionView::canvas_event (GdkEvent* ev)
automation_view()->canvas_display()->w2i (x, y);
/* clamp y */
- y = max (y, 0.0);
- y = min (y, _height - NAME_HIGHLIGHT_SIZE);
+ y = std::max (y, 0.0);
+ y = std::min (y, _height - NAME_HIGHLIGHT_SIZE);
add_automation_event (ev, trackview.editor().pixel_to_frame (x) - _region->position() + _region->start(), y);
}
diff --git a/gtk2_ardour/edit_note_dialog.cc b/gtk2_ardour/edit_note_dialog.cc
index 8dbddefbf1..e334ffa06c 100644
--- a/gtk2_ardour/edit_note_dialog.cc
+++ b/gtk2_ardour/edit_note_dialog.cc
@@ -20,6 +20,7 @@
#include <gtkmm/stock.h>
#include <gtkmm/table.h>
#include "ardour/midi_model.h"
+#include "ardour/midi_region.h"
#include "edit_note_dialog.h"
#include "canvas-note-event.h"
#include "midi_region_view.h"
diff --git a/gtk2_ardour/editor_drag.cc b/gtk2_ardour/editor_drag.cc
index 04dedf97ad..70f705d0b6 100644
--- a/gtk2_ardour/editor_drag.cc
+++ b/gtk2_ardour/editor_drag.cc
@@ -29,10 +29,12 @@
#include "gtkmm2ext/utils.h"
-#include "ardour/session.h"
+#include "ardour/audioregion.h"
#include "ardour/dB.h"
-#include "ardour/region_factory.h"
+#include "ardour/midi_region.h"
#include "ardour/operations.h"
+#include "ardour/region_factory.h"
+#include "ardour/session.h"
#include "editor.h"
#include "i18n.h"
diff --git a/gtk2_ardour/editor_export_audio.cc b/gtk2_ardour/editor_export_audio.cc
index 3fb4a4b327..4a0424eb87 100644
--- a/gtk2_ardour/editor_export_audio.cc
+++ b/gtk2_ardour/editor_export_audio.cc
@@ -27,27 +27,29 @@
#include "gtkmm2ext/choice.h"
-#include "export_dialog.h"
-#include "editor.h"
-#include "public_editor.h"
-#include "selection.h"
-#include "time_axis_view.h"
-#include "audio_time_axis.h"
-#include "audio_region_view.h"
-#include "midi_region_view.h"
-
#include "pbd/pthread_utils.h"
-#include "ardour/types.h"
+
+#include "ardour/audio_diskstream.h"
#include "ardour/audio_track.h"
#include "ardour/audiofilesource.h"
-#include "ardour/audio_diskstream.h"
-#include "ardour/audioregion.h"
+#include "ardour/audiofilesource.h"
#include "ardour/audioplaylist.h"
+#include "ardour/audioregion.h"
#include "ardour/chan_count.h"
+#include "ardour/midi_region.h"
+#include "ardour/session.h"
#include "ardour/session_directory.h"
#include "ardour/source_factory.h"
-#include "ardour/audiofilesource.h"
-#include "ardour/session.h"
+#include "ardour/types.h"
+
+#include "audio_region_view.h"
+#include "audio_time_axis.h"
+#include "editor.h"
+#include "export_dialog.h"
+#include "midi_region_view.h"
+#include "public_editor.h"
+#include "selection.h"
+#include "time_axis_view.h"
#include "i18n.h"
diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc
index 8ba2115003..f122249564 100644
--- a/gtk2_ardour/editor_ops.cc
+++ b/gtk2_ardour/editor_ops.cc
@@ -38,25 +38,26 @@
#include <gtkmm2ext/choice.h>
#include <gtkmm2ext/popup.h>
+#include "ardour/audio_diskstream.h"
+#include "ardour/audio_track.h"
#include "ardour/audioengine.h"
-#include "ardour/session.h"
+#include "ardour/audioplaylist.h"
#include "ardour/audioplaylist.h"
#include "ardour/audioregion.h"
-#include "ardour/audio_diskstream.h"
-#include "ardour/utils.h"
+#include "ardour/dB.h"
#include "ardour/location.h"
-#include "ardour/audio_track.h"
-#include "ardour/audioplaylist.h"
-#include "ardour/region_factory.h"
+#include "ardour/midi_region.h"
+#include "ardour/operations.h"
#include "ardour/playlist_factory.h"
-#include "ardour/reverse.h"
-#include "ardour/transient_detector.h"
-#include "ardour/dB.h"
#include "ardour/quantize.h"
-#include "ardour/strip_silence.h"
+#include "ardour/region_factory.h"
+#include "ardour/reverse.h"
#include "ardour/route_group.h"
-#include "ardour/operations.h"
+#include "ardour/session.h"
#include "ardour/session_playlists.h"
+#include "ardour/strip_silence.h"
+#include "ardour/transient_detector.h"
+#include "ardour/utils.h"
#include "ardour_ui.h"
#include "debug.h"
diff --git a/gtk2_ardour/midi_list_editor.cc b/gtk2_ardour/midi_list_editor.cc
index ceb2e7ace6..c6dfc6c713 100644
--- a/gtk2_ardour/midi_list_editor.cc
+++ b/gtk2_ardour/midi_list_editor.cc
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2009 Paul Davis
+ Copyright (C) 2009 Paul Davis
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -14,14 +14,17 @@
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
*/
+
#include <cmath>
#include "evoral/midi_util.h"
+#include "evoral/Note.hpp"
#include "ardour/beats_frames_converter.h"
+#include "ardour/midi_model.h"
#include "ardour/midi_region.h"
+#include "ardour/midi_source.h"
#include "ardour/session.h"
#include "ardour/tempo.h"
diff --git a/gtk2_ardour/midi_list_editor.h b/gtk2_ardour/midi_list_editor.h
index 1e25d104f9..1d982fd56d 100644
--- a/gtk2_ardour/midi_list_editor.h
+++ b/gtk2_ardour/midi_list_editor.h
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2009 Paul Davis
+ Copyright (C) 2009 Paul Davis
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -14,7 +14,6 @@
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
*/
#ifndef __ardour_gtk2_midi_list_editor_h_
@@ -30,6 +29,10 @@
#include "ardour_dialog.h"
+namespace Evoral {
+ template<typename Time> class Note;
+};
+
namespace ARDOUR {
class MidiRegion;
class MidiModel;
diff --git a/gtk2_ardour/midi_region_view.cc b/gtk2_ardour/midi_region_view.cc
index 474db10eb3..59bef05a32 100644
--- a/gtk2_ardour/midi_region_view.cc
+++ b/gtk2_ardour/midi_region_view.cc
@@ -294,6 +294,12 @@ MidiRegionView::init (Gdk::Color const & basic_color, bool wfd)
SelectionCleared.connect (_selection_cleared_connection, invalidator (*this), ui_bind (&MidiRegionView::selection_cleared, this, _1), gui_context ());
}
+const boost::shared_ptr<ARDOUR::MidiRegion>
+MidiRegionView::midi_region() const
+{
+ return boost::dynamic_pointer_cast<ARDOUR::MidiRegion>(_region);
+}
+
void
MidiRegionView::connect_to_diskstream ()
{
diff --git a/gtk2_ardour/midi_region_view.h b/gtk2_ardour/midi_region_view.h
index c4c483892b..c43c863afe 100644
--- a/gtk2_ardour/midi_region_view.h
+++ b/gtk2_ardour/midi_region_view.h
@@ -28,7 +28,6 @@
#include "pbd/signals.h"
#include "ardour/midi_track.h"
-#include "ardour/midi_region.h"
#include "ardour/midi_model.h"
#include "ardour/diskstream.h"
#include "ardour/types.h"
@@ -85,8 +84,7 @@ public:
virtual void init (Gdk::Color const & basic_color, bool wfd);
- inline const boost::shared_ptr<ARDOUR::MidiRegion> midi_region() const
- { return boost::dynamic_pointer_cast<ARDOUR::MidiRegion>(_region); }
+ const boost::shared_ptr<ARDOUR::MidiRegion> midi_region() const;
inline MidiTimeAxisView* midi_view() const
{ return dynamic_cast<MidiTimeAxisView*>(&trackview); }
diff --git a/gtk2_ardour/midi_time_axis.cc b/gtk2_ardour/midi_time_axis.cc
index 63f92f71b0..ac08af3c20 100644
--- a/gtk2_ardour/midi_time_axis.cc
+++ b/gtk2_ardour/midi_time_axis.cc
@@ -39,20 +39,21 @@
#include "gtkmm2ext/utils.h"
#include "ardour/file_source.h"
-#include "ardour/midi_playlist.h"
+#include "ardour/ladspa_plugin.h"
+#include "ardour/location.h"
#include "ardour/midi_diskstream.h"
#include "ardour/midi_patch_manager.h"
+#include "ardour/midi_playlist.h"
+#include "ardour/midi_region.h"
#include "ardour/midi_source.h"
-#include "ardour/processor.h"
-#include "ardour/ladspa_plugin.h"
-#include "ardour/location.h"
+#include "ardour/operations.h"
#include "ardour/playlist.h"
+#include "ardour/processor.h"
#include "ardour/region_factory.h"
#include "ardour/session.h"
#include "ardour/session_playlist.h"
#include "ardour/tempo.h"
#include "ardour/utils.h"
-#include "ardour/operations.h"
#include "midi++/names.h"
diff --git a/libs/ardour/ardour/midi_region.h b/libs/ardour/ardour/midi_region.h
index 50352cc760..9e8c7441fc 100644
--- a/libs/ardour/ardour/midi_region.h
+++ b/libs/ardour/ardour/midi_region.h
@@ -23,14 +23,7 @@
#include <vector>
-#include "pbd/fastlog.h"
-#include "pbd/undo.h"
-
#include "ardour/ardour.h"
-#include "ardour/gain.h"
-#include "ardour/logcurve.h"
-#include "ardour/midi_model.h"
-#include "ardour/midi_source.h"
#include "ardour/region.h"
class XMLNode;
@@ -46,12 +39,17 @@ namespace ARDOUR {
}
}
+namespace Evoral {
+template<typename Time> class EventSink;
+}
+
namespace ARDOUR {
class Route;
class Playlist;
class Session;
class MidiFilter;
+class MidiModel;
class MidiSource;
class MidiStateTracker;
template<typename T> class MidiRingBuffer;
@@ -91,22 +89,16 @@ class MidiRegion : public Region
/* automation */
- boost::shared_ptr<Evoral::Control>
- control(const Evoral::Parameter& id, bool create=false) {
- return model()->control(id, create);
- }
+ boost::shared_ptr<Evoral::Control> control(const Evoral::Parameter& id, bool create=false);
- virtual boost::shared_ptr<const Evoral::Control>
- control(const Evoral::Parameter& id) const {
- return model()->control(id);
- }
+ virtual boost::shared_ptr<const Evoral::Control> control(const Evoral::Parameter& id) const;
/* export */
int exportme (ARDOUR::Session&, ARDOUR::ExportSpecification&);
- boost::shared_ptr<MidiModel> model() { return midi_source()->model(); }
- boost::shared_ptr<const MidiModel> model() const { return midi_source()->model(); }
+ boost::shared_ptr<MidiModel> model();
+ boost::shared_ptr<const MidiModel> model() const;
void fix_negative_start ();
void transpose (int);
diff --git a/libs/ardour/midi_diskstream.cc b/libs/ardour/midi_diskstream.cc
index 3dc54fe862..d13f638fa4 100644
--- a/libs/ardour/midi_diskstream.cc
+++ b/libs/ardour/midi_diskstream.cc
@@ -46,17 +46,18 @@
#include "ardour/debug.h"
#include "ardour/io.h"
#include "ardour/midi_diskstream.h"
+#include "ardour/midi_model.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/route.h"
#include "ardour/send.h"
#include "ardour/session.h"
+#include "ardour/session_playlists.h"
#include "ardour/smf_source.h"
#include "ardour/utils.h"
-#include "ardour/session_playlists.h"
-#include "ardour/route.h"
#include "midi++/types.h"
diff --git a/libs/ardour/midi_playlist.cc b/libs/ardour/midi_playlist.cc
index 5b0af9aa40..f2b8722ce3 100644
--- a/libs/ardour/midi_playlist.cc
+++ b/libs/ardour/midi_playlist.cc
@@ -28,13 +28,14 @@
#include "evoral/EventList.hpp"
-#include "ardour/debug.h"
-#include "ardour/types.h"
#include "ardour/configuration.h"
+#include "ardour/debug.h"
+#include "ardour/midi_model.h"
#include "ardour/midi_playlist.h"
#include "ardour/midi_region.h"
-#include "ardour/session.h"
#include "ardour/midi_ring_buffer.h"
+#include "ardour/session.h"
+#include "ardour/types.h"
#include "i18n.h"
diff --git a/libs/ardour/midi_region.cc b/libs/ardour/midi_region.cc
index 61b1459c17..124998b5df 100644
--- a/libs/ardour/midi_region.cc
+++ b/libs/ardour/midi_region.cc
@@ -33,6 +33,7 @@
#include "ardour/automation_control.h"
#include "ardour/dB.h"
#include "ardour/gain.h"
+#include "ardour/midi_model.h"
#include "ardour/midi_region.h"
#include "ardour/midi_ring_buffer.h"
#include "ardour/midi_source.h"
@@ -297,6 +298,30 @@ MidiRegion::separate_by_channel (ARDOUR::Session&, vector< boost::shared_ptr<Reg
return -1;
}
+boost::shared_ptr<Evoral::Control>
+MidiRegion::control (const Evoral::Parameter& id, bool create)
+{
+ return model()->control(id, create);
+}
+
+boost::shared_ptr<const Evoral::Control>
+MidiRegion::control (const Evoral::Parameter& id) const
+{
+ return model()->control(id);
+}
+
+boost::shared_ptr<MidiModel>
+MidiRegion::model()
+{
+ return midi_source()->model();
+}
+
+boost::shared_ptr<const MidiModel>
+MidiRegion::model() const
+{
+ return midi_source()->model();
+}
+
int
MidiRegion::exportme (ARDOUR::Session&, ARDOUR::ExportSpecification&)
{
diff --git a/libs/ardour/midi_stretch.cc b/libs/ardour/midi_stretch.cc
index fe0aca69ed..7a4164427a 100644
--- a/libs/ardour/midi_stretch.cc
+++ b/libs/ardour/midi_stretch.cc
@@ -20,10 +20,12 @@
#include "pbd/error.h"
-#include "ardour/types.h"
+#include "ardour/midi_model.h"
+#include "ardour/midi_region.h"
+#include "ardour/midi_source.h"
#include "ardour/midi_stretch.h"
#include "ardour/session.h"
-#include "ardour/midi_region.h"
+#include "ardour/types.h"
#include "i18n.h"
diff --git a/libs/ardour/region_factory.cc b/libs/ardour/region_factory.cc
index fb195dba4c..2c1a451335 100644
--- a/libs/ardour/region_factory.cc
+++ b/libs/ardour/region_factory.cc
@@ -36,6 +36,7 @@
using namespace ARDOUR;
using namespace PBD;
+using namespace std;
PBD::Signal1<void,boost::shared_ptr<Region> > RegionFactory::CheckNewRegion;
Glib::StaticMutex RegionFactory::region_map_lock;
diff --git a/libs/ardour/session_state.cc b/libs/ardour/session_state.cc
index d66b07c334..56a1380f91 100644
--- a/libs/ardour/session_state.cc
+++ b/libs/ardour/session_state.cc
@@ -90,6 +90,7 @@
#include "ardour/io_processor.h"
#include "ardour/location.h"
#include "ardour/midi_diskstream.h"
+#include "ardour/midi_model.h"
#include "ardour/midi_patch_manager.h"
#include "ardour/midi_playlist.h"
#include "ardour/midi_region.h"