summaryrefslogtreecommitdiff
path: root/libs/ardour
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2012-05-24 06:09:29 +0000
committerDavid Robillard <d@drobilla.net>2012-05-24 06:09:29 +0000
commit6fa6514cfdb0ce38d93b51197f599dfd091bad1d (patch)
tree10c50e4752aae8ebffe24564561192b8325abe47 /libs/ardour
parent224e6175adc29f64cf0fc255fe05c95b99e5ec7d (diff)
Remove over 500 unnecessary includes (including 54 of session.h).
It's slightly possible that this causes trivial build failures on different configurations, but otherwise shouldn't cause any problems (i.e. no actual changes other than include/naming/namespace stuff). I deliberately avoided removing libardour-config.h since this can mysteriously break things, though a few of those do seem to be unnecessary. This commit only targets includes of ardour/*.h. There is also a very large number of unnecessary includes of stuff in gtk2_ardour; tackling that should also give a big improvement in build time when things are modified. git-svn-id: svn://localhost/ardour2/branches/3.0@12420 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour')
-rw-r--r--libs/ardour/amp.cc2
-rw-r--r--libs/ardour/analyser.cc3
-rw-r--r--libs/ardour/ardour/audio_buffer.h2
-rw-r--r--libs/ardour/ardour/audio_playlist_importer.h2
-rw-r--r--libs/ardour/ardour/audio_region_importer.h3
-rw-r--r--libs/ardour/ardour/broadcast_info.h4
-rw-r--r--libs/ardour/ardour/buffer.h7
-rw-r--r--libs/ardour/ardour/directory_names.h3
-rw-r--r--libs/ardour/ardour/export_channel_configuration.h10
-rw-r--r--libs/ardour/ardour/export_format_base.h9
-rw-r--r--libs/ardour/ardour/export_graph_builder.h6
-rw-r--r--libs/ardour/ardour/export_handler.h4
-rw-r--r--libs/ardour/ardour/export_status.h1
-rw-r--r--libs/ardour/ardour/export_timespan.h9
-rw-r--r--libs/ardour/ardour/location_importer.h5
-rw-r--r--libs/ardour/ardour/meter.h1
-rw-r--r--libs/ardour/ardour/mtdm.h5
-rw-r--r--libs/ardour/ardour/region_factory.h1
-rw-r--r--libs/ardour/ardour/route_group_member.h1
-rw-r--r--libs/ardour/ardour/sndfileimportable.h1
-rw-r--r--libs/ardour/ardour/tempo_map_importer.h4
-rw-r--r--libs/ardour/audio_diskstream.cc9
-rw-r--r--libs/ardour/audio_playlist.cc2
-rw-r--r--libs/ardour/audio_playlist_importer.cc1
-rw-r--r--libs/ardour/audio_playlist_source.cc5
-rw-r--r--libs/ardour/audio_port.cc3
-rw-r--r--libs/ardour/audio_region_importer.cc1
-rw-r--r--libs/ardour/audio_track.cc19
-rw-r--r--libs/ardour/audioengine.cc10
-rw-r--r--libs/ardour/audiofilesource.cc3
-rw-r--r--libs/ardour/audioregion.cc1
-rw-r--r--libs/ardour/audiosource.cc6
-rw-r--r--libs/ardour/auditioner.cc2
-rw-r--r--libs/ardour/automatable.cc9
-rw-r--r--libs/ardour/automation_control.cc3
-rw-r--r--libs/ardour/broadcast_info.cc3
-rw-r--r--libs/ardour/buffer_manager.cc1
-rw-r--r--libs/ardour/buffer_set.cc1
-rw-r--r--libs/ardour/bundle.cc3
-rw-r--r--libs/ardour/callback.cc1
-rw-r--r--libs/ardour/control_protocol_manager.cc1
-rw-r--r--libs/ardour/default_click.cc2
-rw-r--r--libs/ardour/delivery.cc17
-rw-r--r--libs/ardour/diskstream.cc13
-rw-r--r--libs/ardour/enums.cc8
-rw-r--r--libs/ardour/export_channel_configuration.cc10
-rw-r--r--libs/ardour/export_filename.cc1
-rw-r--r--libs/ardour/export_format_manager.cc1
-rw-r--r--libs/ardour/export_graph_builder.cc1
-rw-r--r--libs/ardour/export_handler.cc3
-rw-r--r--libs/ardour/export_timespan.cc4
-rw-r--r--libs/ardour/file_source.cc7
-rw-r--r--libs/ardour/filename_extensions.cc1
-rw-r--r--libs/ardour/filter.cc13
-rw-r--r--libs/ardour/find_session.cc7
-rw-r--r--libs/ardour/globals.cc10
-rw-r--r--libs/ardour/import.cc1
-rw-r--r--libs/ardour/internal_return.cc6
-rw-r--r--libs/ardour/internal_send.cc3
-rw-r--r--libs/ardour/io.cc9
-rw-r--r--libs/ardour/io_processor.cc21
-rw-r--r--libs/ardour/jack_slave.cc3
-rw-r--r--libs/ardour/ladspa_plugin.cc2
-rw-r--r--libs/ardour/lv2_plugin.cc4
-rw-r--r--libs/ardour/meter.cc8
-rw-r--r--libs/ardour/midi_clock_slave.cc4
-rw-r--r--libs/ardour/midi_diskstream.cc6
-rw-r--r--libs/ardour/midi_model.cc1
-rw-r--r--libs/ardour/midi_patch_manager.cc3
-rw-r--r--libs/ardour/midi_playlist.cc5
-rw-r--r--libs/ardour/midi_playlist_source.cc27
-rw-r--r--libs/ardour/midi_region.cc4
-rw-r--r--libs/ardour/midi_source.cc5
-rw-r--r--libs/ardour/midi_state_tracker.cc3
-rw-r--r--libs/ardour/midi_stretch.cc1
-rw-r--r--libs/ardour/midi_track.cc16
-rw-r--r--libs/ardour/mtc_slave.cc3
-rw-r--r--libs/ardour/mtdm.cc2
-rw-r--r--libs/ardour/panner.cc5
-rw-r--r--libs/ardour/panner_shell.cc5
-rw-r--r--libs/ardour/playlist.cc6
-rw-r--r--libs/ardour/playlist_source.cc3
-rw-r--r--libs/ardour/plugin.cc14
-rw-r--r--libs/ardour/plugin_insert.cc3
-rw-r--r--libs/ardour/plugin_manager.cc2
-rw-r--r--libs/ardour/port.cc8
-rw-r--r--libs/ardour/port_insert.cc9
-rw-r--r--libs/ardour/port_set.cc5
-rw-r--r--libs/ardour/process_thread.cc2
-rw-r--r--libs/ardour/processor.cc16
-rw-r--r--libs/ardour/quantize.cc5
-rw-r--r--libs/ardour/rb_effect.cc10
-rw-r--r--libs/ardour/rc_configuration.cc6
-rw-r--r--libs/ardour/recent_sessions.cc5
-rw-r--r--libs/ardour/region.cc6
-rw-r--r--libs/ardour/region_factory.cc11
-rw-r--r--libs/ardour/return.cc6
-rw-r--r--libs/ardour/reverse.cc13
-rw-r--r--libs/ardour/route.cc18
-rw-r--r--libs/ardour/route_group.cc7
-rw-r--r--libs/ardour/route_group_member.cc5
-rw-r--r--libs/ardour/send.cc9
-rw-r--r--libs/ardour/session.cc30
-rw-r--r--libs/ardour/session_butler.cc9
-rw-r--r--libs/ardour/session_click.cc2
-rw-r--r--libs/ardour/session_command.cc55
-rw-r--r--libs/ardour/session_configuration.cc1
-rw-r--r--libs/ardour/session_events.cc5
-rw-r--r--libs/ardour/session_export.cc3
-rw-r--r--libs/ardour/session_midi.cc9
-rw-r--r--libs/ardour/session_object.cc3
-rw-r--r--libs/ardour/session_playlists.cc9
-rw-r--r--libs/ardour/session_process.cc10
-rw-r--r--libs/ardour/session_state.cc25
-rw-r--r--libs/ardour/session_time.cc3
-rw-r--r--libs/ardour/session_transport.cc8
-rw-r--r--libs/ardour/smf_source.cc1
-rw-r--r--libs/ardour/sndfile_helpers.cc3
-rw-r--r--libs/ardour/sndfilesource.cc2
-rw-r--r--libs/ardour/strip_silence.cc2
-rw-r--r--libs/ardour/tempo.cc1
-rw-r--r--libs/ardour/tempo_map_importer.cc3
-rw-r--r--libs/ardour/track.cc4
-rw-r--r--libs/ardour/user_bundle.cc12
124 files changed, 240 insertions, 541 deletions
diff --git a/libs/ardour/amp.cc b/libs/ardour/amp.cc
index 24b2066ed5..1579b5dcea 100644
--- a/libs/ardour/amp.cc
+++ b/libs/ardour/amp.cc
@@ -26,8 +26,6 @@
#include "ardour/amp.h"
#include "ardour/audio_buffer.h"
#include "ardour/buffer_set.h"
-#include "ardour/configuration.h"
-#include "ardour/io.h"
#include "ardour/midi_buffer.h"
#include "ardour/session.h"
diff --git a/libs/ardour/analyser.cc b/libs/ardour/analyser.cc
index c19657baaf..730ea4169a 100644
--- a/libs/ardour/analyser.cc
+++ b/libs/ardour/analyser.cc
@@ -22,9 +22,6 @@
#include "ardour/session_event.h"
#include "ardour/transient_detector.h"
-#include "pbd/pthread_utils.h"
-#include "pbd/convert.h"
-
using namespace std;
using namespace ARDOUR;
using namespace PBD;
diff --git a/libs/ardour/ardour/audio_buffer.h b/libs/ardour/ardour/audio_buffer.h
index 57c5de6124..faa3de7685 100644
--- a/libs/ardour/ardour/audio_buffer.h
+++ b/libs/ardour/ardour/audio_buffer.h
@@ -20,7 +20,9 @@
#define __ardour_audio_buffer_h__
#include <cstring>
+
#include "ardour/buffer.h"
+#include "ardour/runtime_functions.h"
namespace ARDOUR {
diff --git a/libs/ardour/ardour/audio_playlist_importer.h b/libs/ardour/ardour/audio_playlist_importer.h
index 9b3abfc33d..011bfe39b8 100644
--- a/libs/ardour/ardour/audio_playlist_importer.h
+++ b/libs/ardour/ardour/audio_playlist_importer.h
@@ -30,13 +30,13 @@
#include "ardour/element_importer.h"
#include "ardour/element_import_handler.h"
-#include "ardour/types.h"
namespace ARDOUR {
class AudioRegionImportHandler;
class AudioRegionImporter;
class AudioPlaylistImporter;
+class Session;
class AudioPlaylistImportHandler : public ElementImportHandler
{
diff --git a/libs/ardour/ardour/audio_region_importer.h b/libs/ardour/ardour/audio_region_importer.h
index 2187d92148..5aee017c51 100644
--- a/libs/ardour/ardour/audio_region_importer.h
+++ b/libs/ardour/ardour/audio_region_importer.h
@@ -30,7 +30,6 @@
#include "pbd/xml++.h"
#include "pbd/id.h"
#include "pbd/filesystem.h"
-#include "ardour/types.h"
#include "ardour/element_importer.h"
#include "ardour/element_import_handler.h"
#include "ardour/import_status.h"
@@ -38,6 +37,8 @@
namespace ARDOUR {
class Region;
+class Session;
+class Source;
class AudioRegionImportHandler : public ElementImportHandler
{
diff --git a/libs/ardour/ardour/broadcast_info.h b/libs/ardour/ardour/broadcast_info.h
index 991a3bbbcc..0e87d6e6df 100644
--- a/libs/ardour/ardour/broadcast_info.h
+++ b/libs/ardour/ardour/broadcast_info.h
@@ -22,12 +22,8 @@
#define __ardour_broadcast_info_h__
#include <string>
-#include <ctime>
-
-#include <sndfile.h>
#include "audiographer/broadcast_info.h"
-#include "ardour/types.h"
namespace ARDOUR
{
diff --git a/libs/ardour/ardour/buffer.h b/libs/ardour/ardour/buffer.h
index c6f6822519..cbb92e7c4a 100644
--- a/libs/ardour/ardour/buffer.h
+++ b/libs/ardour/ardour/buffer.h
@@ -19,15 +19,12 @@
#ifndef __ardour_buffer_h__
#define __ardour_buffer_h__
-#include <cstdlib>
-#include <cassert>
-#include <cstring>
-#include <iostream>
+#include <stddef.h>
+
#include <boost/utility.hpp>
#include "ardour/types.h"
#include "ardour/data_type.h"
-#include "ardour/runtime_functions.h"
namespace ARDOUR {
diff --git a/libs/ardour/ardour/directory_names.h b/libs/ardour/ardour/directory_names.h
index a4235dd9c0..a377d351f6 100644
--- a/libs/ardour/ardour/directory_names.h
+++ b/libs/ardour/ardour/directory_names.h
@@ -2,9 +2,6 @@
#ifndef __ardour_directory_names_h__
#define __ardour_directory_names_h__
-#include <string>
-#include <stdint.h>
-
namespace ARDOUR {
extern const char* const old_sound_dir_name;
diff --git a/libs/ardour/ardour/export_channel_configuration.h b/libs/ardour/ardour/export_channel_configuration.h
index a950cecc65..b625be9dc3 100644
--- a/libs/ardour/ardour/export_channel_configuration.h
+++ b/libs/ardour/ardour/export_channel_configuration.h
@@ -28,21 +28,13 @@
#include <boost/enable_shared_from_this.hpp>
#include "ardour/export_channel.h"
-#include "ardour/export_status.h"
-#include "ardour/ardour.h"
+#include "ardour/export_pointers.h"
#include "pbd/xml++.h"
namespace ARDOUR
{
-class ExportHandler;
-class AudioPort;
-class ExportChannel;
-class ExportFormatSpecification;
-class ExportFilename;
-class ExportProcessor;
-class ExportTimespan;
class Session;
class ExportChannelConfiguration : public boost::enable_shared_from_this<ExportChannelConfiguration>
diff --git a/libs/ardour/ardour/export_format_base.h b/libs/ardour/ardour/export_format_base.h
index 0ba5f73e8d..46b44e2252 100644
--- a/libs/ardour/ardour/export_format_base.h
+++ b/libs/ardour/ardour/export_format_base.h
@@ -22,22 +22,21 @@
#define __ardour_export_format_base_h__
#include <set>
-#include <algorithm>
-#include <boost/shared_ptr.hpp>
#include <string>
+#include <boost/shared_ptr.hpp>
+
#include <sndfile.h>
#include <samplerate.h>
-#include "ardour/ardour.h"
+#include "pbd/signals.h"
+#include "ardour/types.h"
#include "audiographer/general/sample_format_converter.h"
namespace ARDOUR
{
-class HasSampleFormat;
-
class ExportFormatBase {
public:
diff --git a/libs/ardour/ardour/export_graph_builder.h b/libs/ardour/ardour/export_graph_builder.h
index 18aa8db519..f565fd4134 100644
--- a/libs/ardour/ardour/export_graph_builder.h
+++ b/libs/ardour/ardour/export_graph_builder.h
@@ -21,10 +21,7 @@
#ifndef __ardour_export_graph_builder_h__
#define __ardour_export_graph_builder_h__
-#include "ardour/ardour.h"
#include "ardour/export_handler.h"
-#include "ardour/export_channel.h"
-#include "ardour/export_format_base.h"
#include "audiographer/utils/identity_vertex.h"
@@ -47,6 +44,9 @@ namespace AudioGrapher {
namespace ARDOUR
{
+class ExportTimespan;
+class Session;
+
class ExportGraphBuilder
{
private:
diff --git a/libs/ardour/ardour/export_handler.h b/libs/ardour/ardour/export_handler.h
index c4061684eb..eb8ffc2333 100644
--- a/libs/ardour/ardour/export_handler.h
+++ b/libs/ardour/ardour/export_handler.h
@@ -22,13 +22,11 @@
#define __ardour_export_handler_h__
#include <map>
-#include <list>
#include <fstream>
#include <boost/operators.hpp>
#include <boost/shared_ptr.hpp>
-#include "ardour/ardour.h"
#include "ardour/export_pointers.h"
#include "ardour/session.h"
#include "ardour/types.h"
@@ -45,7 +43,7 @@ class ExportChannelConfiguration;
class ExportFormatSpecification;
class ExportFilename;
class ExportGraphBuilder;
-
+class Location;
class ExportElementFactory
{
diff --git a/libs/ardour/ardour/export_status.h b/libs/ardour/ardour/export_status.h
index 164b348c37..cb24cb55f5 100644
--- a/libs/ardour/ardour/export_status.h
+++ b/libs/ardour/ardour/export_status.h
@@ -21,7 +21,6 @@
#ifndef __ardour_export_status_h__
#define __ardour_export_status_h__
-#include <list>
#include <stdint.h>
#include "ardour/types.h"
diff --git a/libs/ardour/ardour/export_timespan.h b/libs/ardour/ardour/export_timespan.h
index 9273aab6c7..5cb32dbb1a 100644
--- a/libs/ardour/ardour/export_timespan.h
+++ b/libs/ardour/ardour/export_timespan.h
@@ -21,17 +21,16 @@
#ifndef __ardour_export_timespan_h__
#define __ardour_export_timespan_h__
-#include <map>
-#include <list>
#include <string>
-#include "ardour/export_status.h"
-#include "ardour/export_channel.h"
-#include "ardour/ardour.h"
+#include <boost/shared_ptr.hpp>
+
+#include "ardour/types.h"
namespace ARDOUR
{
+class ExportStatus;
class ExportChannel;
class ExportTempFile;
diff --git a/libs/ardour/ardour/location_importer.h b/libs/ardour/ardour/location_importer.h
index 2b6f1ec1c2..332c5ae685 100644
--- a/libs/ardour/ardour/location_importer.h
+++ b/libs/ardour/ardour/location_importer.h
@@ -27,11 +27,12 @@
#include <boost/shared_ptr.hpp>
#include "pbd/xml++.h"
-#include "ardour/location.h"
-#include "ardour/types.h"
namespace ARDOUR {
+class Location;
+class Session;
+
class LocationImportHandler : public ElementImportHandler
{
public:
diff --git a/libs/ardour/ardour/meter.h b/libs/ardour/ardour/meter.h
index 4a9f8305ad..773b04f386 100644
--- a/libs/ardour/ardour/meter.h
+++ b/libs/ardour/ardour/meter.h
@@ -22,7 +22,6 @@
#include <vector>
#include "ardour/types.h"
#include "ardour/processor.h"
-#include "pbd/signals.h"
#include "pbd/fastlog.h"
namespace ARDOUR {
diff --git a/libs/ardour/ardour/mtdm.h b/libs/ardour/ardour/mtdm.h
index 4948d844f4..9d67e1cd64 100644
--- a/libs/ardour/ardour/mtdm.h
+++ b/libs/ardour/ardour/mtdm.h
@@ -19,10 +19,7 @@
#ifndef __libardour_mtdm_h__
#define __libardour_mtdm_h__
-#include <cstdlib>
-#include <cstdio>
-#include <cmath>
-#include <unistd.h>
+#include <stddef.h>
class MTDM {
public:
diff --git a/libs/ardour/ardour/region_factory.h b/libs/ardour/ardour/region_factory.h
index 20ca0d355d..80584e6859 100644
--- a/libs/ardour/ardour/region_factory.h
+++ b/libs/ardour/ardour/region_factory.h
@@ -25,6 +25,7 @@
#include <glibmm/thread.h>
#include "pbd/id.h"
+#include "pbd/property_list.h"
#include "pbd/signals.h"
#include "ardour/types.h"
diff --git a/libs/ardour/ardour/route_group_member.h b/libs/ardour/ardour/route_group_member.h
index 3cc8e2aaf8..2665c719e6 100644
--- a/libs/ardour/ardour/route_group_member.h
+++ b/libs/ardour/ardour/route_group_member.h
@@ -20,6 +20,7 @@
#ifndef __libardour_route_group_member_h__
#define __libardour_route_group_member_h__
+#include "pbd/signals.h"
namespace ARDOUR {
diff --git a/libs/ardour/ardour/sndfileimportable.h b/libs/ardour/ardour/sndfileimportable.h
index b146d3231c..8612e264c4 100644
--- a/libs/ardour/ardour/sndfileimportable.h
+++ b/libs/ardour/ardour/sndfileimportable.h
@@ -22,7 +22,6 @@
#include <boost/shared_ptr.hpp>
#include <sndfile.h>
-#include "pbd/failed_constructor.h"
#include "ardour/types.h"
#include "ardour/importable_source.h"
diff --git a/libs/ardour/ardour/tempo_map_importer.h b/libs/ardour/ardour/tempo_map_importer.h
index beacbc1e01..57c7402781 100644
--- a/libs/ardour/ardour/tempo_map_importer.h
+++ b/libs/ardour/ardour/tempo_map_importer.h
@@ -27,11 +27,11 @@
#include "ardour/element_importer.h"
#include "ardour/element_import_handler.h"
-#include "ardour/tempo.h"
-#include "ardour/types.h"
namespace ARDOUR {
+class Session;
+
class TempoMapImportHandler : public ElementImportHandler
{
public:
diff --git a/libs/ardour/audio_diskstream.cc b/libs/ardour/audio_diskstream.cc
index c38901f430..8c5b606388 100644
--- a/libs/ardour/audio_diskstream.cc
+++ b/libs/ardour/audio_diskstream.cc
@@ -37,29 +37,24 @@
#include "pbd/stateful_diff_command.h"
#include "ardour/analyser.h"
-#include "ardour/ardour.h"
#include "ardour/audio_buffer.h"
#include "ardour/audio_diskstream.h"
#include "ardour/audio_port.h"
#include "ardour/audioengine.h"
#include "ardour/audiofilesource.h"
-
#include "ardour/audioplaylist.h"
#include "ardour/audioregion.h"
#include "ardour/butler.h"
-#include "ardour/configuration.h"
-#include "ardour/cycle_timer.h"
#include "ardour/debug.h"
#include "ardour/io.h"
#include "ardour/playlist_factory.h"
#include "ardour/region_factory.h"
-#include "ardour/send.h"
#include "ardour/session.h"
+#include "ardour/session_playlists.h"
#include "ardour/source_factory.h"
#include "ardour/track.h"
+#include "ardour/types.h"
#include "ardour/utils.h"
-#include "ardour/session_playlists.h"
-#include "ardour/route.h"
#include "i18n.h"
#include <locale.h>
diff --git a/libs/ardour/audio_playlist.cc b/libs/ardour/audio_playlist.cc
index da6f84a4ae..25fad6122f 100644
--- a/libs/ardour/audio_playlist.cc
+++ b/libs/ardour/audio_playlist.cc
@@ -23,12 +23,10 @@
#include "ardour/types.h"
#include "ardour/debug.h"
-#include "ardour/configuration.h"
#include "ardour/audioplaylist.h"
#include "ardour/audioregion.h"
#include "ardour/region_sorters.h"
#include "ardour/session.h"
-#include "pbd/enumwriter.h"
#include "i18n.h"
diff --git a/libs/ardour/audio_playlist_importer.cc b/libs/ardour/audio_playlist_importer.cc
index 1c119e0ed7..34d46915f1 100644
--- a/libs/ardour/audio_playlist_importer.cc
+++ b/libs/ardour/audio_playlist_importer.cc
@@ -28,7 +28,6 @@
#include "ardour/audio_region_importer.h"
#include "ardour/session.h"
-#include "ardour/playlist.h"
#include "ardour/playlist_factory.h"
#include "ardour/session_playlists.h"
diff --git a/libs/ardour/audio_playlist_source.cc b/libs/ardour/audio_playlist_source.cc
index 141a8495f9..4ba820d716 100644
--- a/libs/ardour/audio_playlist_source.cc
+++ b/libs/ardour/audio_playlist_source.cc
@@ -27,18 +27,13 @@
#include <glibmm/miscutils.h>
#include "pbd/error.h"
-#include "pbd/convert.h"
-#include "pbd/enumwriter.h"
#include "ardour/audioplaylist.h"
#include "ardour/audio_playlist_source.h"
#include "ardour/audioregion.h"
-#include "ardour/debug.h"
#include "ardour/filename_extensions.h"
#include "ardour/session.h"
#include "ardour/session_directory.h"
-#include "ardour/session_playlists.h"
-#include "ardour/source_factory.h"
#include "i18n.h"
diff --git a/libs/ardour/audio_port.cc b/libs/ardour/audio_port.cc
index ae64d797c9..48a757fb42 100644
--- a/libs/ardour/audio_port.cc
+++ b/libs/ardour/audio_port.cc
@@ -20,10 +20,9 @@
#include "pbd/stacktrace.h"
+#include "ardour/audio_buffer.h"
#include "ardour/audio_port.h"
-#include "ardour/audioengine.h"
#include "ardour/data_type.h"
-#include "ardour/audio_buffer.h"
using namespace ARDOUR;
using namespace std;
diff --git a/libs/ardour/audio_region_importer.cc b/libs/ardour/audio_region_importer.cc
index 6f6bd82501..91c362d042 100644
--- a/libs/ardour/audio_region_importer.cc
+++ b/libs/ardour/audio_region_importer.cc
@@ -28,7 +28,6 @@
#include "ardour/session.h"
#include "ardour/region.h"
-#include "ardour/source_factory.h"
#include "ardour/region_factory.h"
#include "ardour/session_directory.h"
diff --git a/libs/ardour/audio_track.cc b/libs/ardour/audio_track.cc
index b548b3a444..293ca0d2c1 100644
--- a/libs/ardour/audio_track.cc
+++ b/libs/ardour/audio_track.cc
@@ -19,9 +19,9 @@
#include <boost/scoped_array.hpp>
-#include "pbd/error.h"
-#include "pbd/enumwriter.h"
#include "pbd/boost_debug.h"
+#include "pbd/enumwriter.h"
+#include "pbd/error.h"
#include "evoral/Curve.hpp"
@@ -30,23 +30,18 @@
#include "ardour/audio_diskstream.h"
#include "ardour/audio_track.h"
#include "ardour/audioplaylist.h"
-#include "ardour/audioregion.h"
-#include "ardour/audiosource.h"
#include "ardour/buffer_set.h"
-#include "ardour/io_processor.h"
-#include "ardour/panner.h"
+#include "ardour/delivery.h"
#include "ardour/meter.h"
#include "ardour/playlist_factory.h"
-#include "ardour/plugin_insert.h"
-#include "ardour/port_insert.h"
#include "ardour/processor.h"
+#include "ardour/region.h"
#include "ardour/region_factory.h"
-#include "ardour/route_group_specialized.h"
#include "ardour/session.h"
-#include "ardour/utils.h"
#include "ardour/session_playlists.h"
-#include "ardour/delivery.h"
-#include "ardour/meter.h"
+#include "ardour/source.h"
+#include "ardour/utils.h"
+
#include "i18n.h"
using namespace std;
diff --git a/libs/ardour/audioengine.cc b/libs/ardour/audioengine.cc
index 372581f4e6..7c3beb6c13 100644
--- a/libs/ardour/audioengine.cc
+++ b/libs/ardour/audioengine.cc
@@ -38,24 +38,16 @@
#include "midi++/mmc.h"
#include "midi++/manager.h"
-#include "ardour/amp.h"
#include "ardour/audio_port.h"
#include "ardour/audioengine.h"
#include "ardour/buffer.h"
-#include "ardour/buffer_set.h"
#include "ardour/cycle_timer.h"
-#include "ardour/event_type_map.h"
-#include "ardour/internal_return.h"
#include "ardour/internal_send.h"
-#include "ardour/io.h"
#include "ardour/meter.h"
#include "ardour/midi_port.h"
-#include "ardour/process_thread.h"
#include "ardour/port.h"
-#include "ardour/port_set.h"
+#include "ardour/process_thread.h"
#include "ardour/session.h"
-#include "ardour/timestamps.h"
-#include "ardour/utils.h"
#include "i18n.h"
diff --git a/libs/ardour/audiofilesource.cc b/libs/ardour/audiofilesource.cc
index 3ae0db2101..e101f5b25b 100644
--- a/libs/ardour/audiofilesource.cc
+++ b/libs/ardour/audiofilesource.cc
@@ -46,11 +46,8 @@
#include "ardour/audiofilesource.h"
#include "ardour/debug.h"
-#include "ardour/sndfile_helpers.h"
#include "ardour/sndfilesource.h"
#include "ardour/session.h"
-#include "ardour/session_directory.h"
-#include "ardour/source_factory.h"
#include "ardour/filename_extensions.h"
// if these headers come before sigc++ is included
diff --git a/libs/ardour/audioregion.cc b/libs/ardour/audioregion.cc
index 9cbbdcfe4e..8a8f42165c 100644
--- a/libs/ardour/audioregion.cc
+++ b/libs/ardour/audioregion.cc
@@ -37,7 +37,6 @@
#include "evoral/Curve.hpp"
#include "ardour/audioregion.h"
-#include "ardour/debug.h"
#include "ardour/session.h"
#include "ardour/dB.h"
#include "ardour/playlist.h"
diff --git a/libs/ardour/audiosource.cc b/libs/ardour/audiosource.cc
index 8fe3b8d8c3..e33a3d30de 100644
--- a/libs/ardour/audiosource.cc
+++ b/libs/ardour/audiosource.cc
@@ -35,13 +35,9 @@
#include <glibmm/miscutils.h>
#include "pbd/xml++.h"
-#include "pbd/pthread_utils.h"
#include "ardour/audiosource.h"
-#include "ardour/audio_diskstream.h"
-#include "ardour/cycle_timer.h"
-#include "ardour/session.h"
-#include "ardour/transient_detector.h"
+#include "ardour/rc_configuration.h"
#include "ardour/runtime_functions.h"
#include "i18n.h"
diff --git a/libs/ardour/auditioner.cc b/libs/ardour/auditioner.cc
index 71730ad0bb..6c143568c4 100644
--- a/libs/ardour/auditioner.cc
+++ b/libs/ardour/auditioner.cc
@@ -30,8 +30,6 @@
#include "ardour/auditioner.h"
#include "ardour/audioplaylist.h"
#include "ardour/audio_port.h"
-#include "ardour/panner_shell.h"
-#include "ardour/panner.h"
#include "ardour/data_type.h"
#include "ardour/region_factory.h"
diff --git a/libs/ardour/automatable.cc b/libs/ardour/automatable.cc
index 6d8114939d..d0a605bcd9 100644
--- a/libs/ardour/automatable.cc
+++ b/libs/ardour/automatable.cc
@@ -17,27 +17,22 @@
*/
-#include "ardour/ardour.h"
#include <fstream>
-#include <inttypes.h>
#include <cstdio>
#include <errno.h>
#include <glibmm/miscutils.h>
#include "pbd/error.h"
-#include "pbd/enumwriter.h"
-#include "pbd/stacktrace.h"
#include "midi++/names.h"
-#include "ardour/automatable.h"
#include "ardour/amp.h"
+#include "ardour/automatable.h"
#include "ardour/event_type_map.h"
#include "ardour/midi_track.h"
-#include "ardour/pannable.h"
-#include "ardour/panner.h"
#include "ardour/pan_controllable.h"
+#include "ardour/pannable.h"
#include "ardour/plugin_insert.h"
#include "ardour/session.h"
diff --git a/libs/ardour/automation_control.cc b/libs/ardour/automation_control.cc
index fd4a228037..05463dcdd0 100644
--- a/libs/ardour/automation_control.cc
+++ b/libs/ardour/automation_control.cc
@@ -19,7 +19,7 @@
*/
#include <iostream>
-#include "ardour/automatable.h"
+
#include "ardour/automation_control.h"
#include "ardour/event_type_map.h"
#include "ardour/session.h"
@@ -28,7 +28,6 @@ using namespace std;
using namespace ARDOUR;
using namespace PBD;
-
AutomationControl::AutomationControl(
ARDOUR::Session& session,
const Evoral::Parameter& parameter,
diff --git a/libs/ardour/broadcast_info.cc b/libs/ardour/broadcast_info.cc
index d31104d545..436c30c797 100644
--- a/libs/ardour/broadcast_info.cc
+++ b/libs/ardour/broadcast_info.cc
@@ -26,12 +26,9 @@
#include <glibmm.h>
#include "ardour/svn_revision.h"
-#include "ardour/ardour.h"
#include "ardour/session.h"
#include "ardour/session_metadata.h"
-#include "pbd/convert.h"
-
using namespace PBD;
namespace ARDOUR
diff --git a/libs/ardour/buffer_manager.cc b/libs/ardour/buffer_manager.cc
index 5a2d941eaf..b30fd6ebb6 100644
--- a/libs/ardour/buffer_manager.cc
+++ b/libs/ardour/buffer_manager.cc
@@ -22,7 +22,6 @@
#include "pbd/compose.h"
#include "ardour/buffer_manager.h"
-#include "ardour/debug.h"
#include "ardour/thread_buffers.h"
using namespace ARDOUR;
diff --git a/libs/ardour/buffer_set.cc b/libs/ardour/buffer_set.cc
index 156cf4dd3f..55356bdecb 100644
--- a/libs/ardour/buffer_set.cc
+++ b/libs/ardour/buffer_set.cc
@@ -33,7 +33,6 @@
#include "ardour/midi_buffer.h"
#include "ardour/port.h"
#include "ardour/port_set.h"
-#include "ardour/audioengine.h"
#ifdef LV2_SUPPORT
#include "ardour/lv2_plugin.h"
#include "lv2_evbuf.h"
diff --git a/libs/ardour/bundle.cc b/libs/ardour/bundle.cc
index 6180836bd2..5040882b7a 100644
--- a/libs/ardour/bundle.cc
+++ b/libs/ardour/bundle.cc
@@ -19,12 +19,9 @@
#include <algorithm>
-#include "pbd/failed_constructor.h"
-#include "ardour/ardour.h"
#include "ardour/bundle.h"
#include "ardour/audioengine.h"
#include "ardour/port.h"
-#include "pbd/xml++.h"
#include "i18n.h"
diff --git a/libs/ardour/callback.cc b/libs/ardour/callback.cc
index 85449dac03..37442fce0c 100644
--- a/libs/ardour/callback.cc
+++ b/libs/ardour/callback.cc
@@ -16,7 +16,6 @@
#include "pbd/strsplit.h"
#include "pbd/convert.h"
-#include "ardour/callback.h"
#include "ardour/filesystem_paths.h"
using namespace std;
diff --git a/libs/ardour/control_protocol_manager.cc b/libs/ardour/control_protocol_manager.cc
index 2931fe46e5..475781f3c5 100644
--- a/libs/ardour/control_protocol_manager.cc
+++ b/libs/ardour/control_protocol_manager.cc
@@ -28,7 +28,6 @@
#include "control_protocol/control_protocol.h"
#include "ardour/debug.h"
-#include "ardour/session.h"
#include "ardour/control_protocol_manager.h"
#include "ardour/control_protocol_search_path.h"
diff --git a/libs/ardour/default_click.cc b/libs/ardour/default_click.cc
index 242e5c2918..fd23f0166d 100644
--- a/libs/ardour/default_click.cc
+++ b/libs/ardour/default_click.cc
@@ -18,8 +18,8 @@
*/
-#include "ardour/ardour.h"
#include "ardour/session.h"
+#include "ardour/types.h"
using namespace ARDOUR;
diff --git a/libs/ardour/delivery.cc b/libs/ardour/delivery.cc
index 86ce419340..b58e7b4471 100644
--- a/libs/ardour/delivery.cc
+++ b/libs/ardour/delivery.cc
@@ -22,27 +22,22 @@
#include "pbd/enumwriter.h"
#include "pbd/convert.h"
-#include "ardour/midi_buffer.h"
-
-#include "ardour/debug.h"
-#include "ardour/delivery.h"
-#include "ardour/audio_buffer.h"
-#include "ardour/audio_port.h"
#include "ardour/amp.h"
+#include "ardour/audioengine.h"
#include "ardour/buffer_set.h"
-#include "ardour/configuration.h"
+#include "ardour/debug.h"
+#include "ardour/delivery.h"
#include "ardour/io.h"
-#include "ardour/meter.h"
#include "ardour/mute_master.h"
-#include "ardour/panner.h"
-#include "ardour/panner_shell.h"
#include "ardour/pannable.h"
+#include "ardour/panner_shell.h"
#include "ardour/port.h"
#include "ardour/session.h"
-#include "ardour/audioengine.h"
#include "i18n.h"
+namespace ARDOUR { class Panner; }
+
using namespace std;
using namespace PBD;
using namespace ARDOUR;
diff --git a/libs/ardour/diskstream.cc b/libs/ardour/diskstream.cc
index 6e23eb81aa..7a0b0a81b1 100644
--- a/libs/ardour/diskstream.cc
+++ b/libs/ardour/diskstream.cc
@@ -31,7 +31,6 @@
#include <sys/stat.h>
#include <sys/mman.h>
-
#include <glibmm/thread.h>
#include "pbd/error.h"
@@ -40,22 +39,12 @@
#include "pbd/xml++.h"
#include "pbd/stacktrace.h"
-#include "ardour/ardour.h"
-#include "ardour/audioengine.h"
#include "ardour/debug.h"
#include "ardour/diskstream.h"
-#include "ardour/utils.h"
-#include "ardour/configuration.h"
-#include "ardour/audiofilesource.h"
-#include "ardour/send.h"
+#include "ardour/io.h"
#include "ardour/pannable.h"
-#include "ardour/panner_shell.h"
#include "ardour/playlist.h"
-#include "ardour/cycle_timer.h"
-#include "ardour/region.h"
-#include "ardour/panner.h"
#include "ardour/session.h"
-#include "ardour/io.h"
#include "ardour/track.h"
#include "i18n.h"
diff --git a/libs/ardour/enums.cc b/libs/ardour/enums.cc
index c0d6107639..afe92ed5f7 100644
--- a/libs/ardour/enums.cc
+++ b/libs/ardour/enums.cc
@@ -20,22 +20,18 @@
#include "pbd/enumwriter.h"
#include "midi++/types.h"
-#include "ardour/audiofilesource.h"
-#include "ardour/audioregion.h"
#include "ardour/delivery.h"
#include "ardour/diskstream.h"
+#include "ardour/export_channel.h"
#include "ardour/export_filename.h"
#include "ardour/export_format_base.h"
#include "ardour/export_profile_manager.h"
-#include "ardour/export_channel_configuration.h"
#include "ardour/io.h"
#include "ardour/location.h"
#include "ardour/midi_model.h"
-#include "ardour/midi_track.h"
#include "ardour/mute_master.h"
-#include "ardour/panner.h"
-#include "ardour/route_group.h"
#include "ardour/session.h"
+#include "ardour/source.h"
#include "ardour/track.h"
#include "ardour/types.h"
diff --git a/libs/ardour/export_channel_configuration.cc b/libs/ardour/export_channel_configuration.cc
index 9487d021b4..77b56272d6 100644
--- a/libs/ardour/export_channel_configuration.cc
+++ b/libs/ardour/export_channel_configuration.cc
@@ -20,16 +20,6 @@
#include "ardour/export_channel_configuration.h"
-#include "ardour/export_handler.h"
-#include "ardour/export_filename.h"
-#include "ardour/export_timespan.h"
-
-#include "ardour/audio_port.h"
-#include "ardour/export_failed.h"
-#include "ardour/midi_port.h"
-#include "ardour/session.h"
-#include "ardour/audioengine.h"
-
#include "pbd/convert.h"
#include "pbd/enumwriter.h"
#include "pbd/pthread_utils.h"
diff --git a/libs/ardour/export_filename.cc b/libs/ardour/export_filename.cc
index d5309bd535..f53dfbcbf6 100644
--- a/libs/ardour/export_filename.cc
+++ b/libs/ardour/export_filename.cc
@@ -30,7 +30,6 @@
#include "ardour/export_timespan.h"
#include "ardour/export_format_specification.h"
#include "ardour/export_channel_configuration.h"
-#include "ardour/export_failed.h"
#include "i18n.h"
diff --git a/libs/ardour/export_format_manager.cc b/libs/ardour/export_format_manager.cc
index 23a77925fe..ff115d4447 100644
--- a/libs/ardour/export_format_manager.cc
+++ b/libs/ardour/export_format_manager.cc
@@ -20,7 +20,6 @@
#include "ardour/export_format_manager.h"
-#include "ardour/types.h"
#include "ardour/export_format_specification.h"
#include "ardour/export_format_compatibility.h"
diff --git a/libs/ardour/export_graph_builder.cc b/libs/ardour/export_graph_builder.cc
index 8152ff0c20..fbb5d0f98a 100644
--- a/libs/ardour/export_graph_builder.cc
+++ b/libs/ardour/export_graph_builder.cc
@@ -17,7 +17,6 @@
#include "ardour/export_format_specification.h"
#include "ardour/export_timespan.h"
#include "ardour/sndfile_helpers.h"
-#include "ardour/utils.h"
#include "pbd/filesystem.h"
#include "pbd/cpus.h"
diff --git a/libs/ardour/export_handler.cc b/libs/ardour/export_handler.cc
index f44450d3f0..fb65cebff0 100644
--- a/libs/ardour/export_handler.cc
+++ b/libs/ardour/export_handler.cc
@@ -26,15 +26,12 @@
#include "pbd/convert.h"
#include "pbd/filesystem.h"
-#include "ardour/ardour.h"
-#include "ardour/configuration.h"
#include "ardour/export_graph_builder.h"
#include "ardour/export_timespan.h"
#include "ardour/export_channel_configuration.h"
#include "ardour/export_status.h"
#include "ardour/export_format_specification.h"
#include "ardour/export_filename.h"
-#include "ardour/export_failed.h"
#include "i18n.h"
diff --git a/libs/ardour/export_timespan.cc b/libs/ardour/export_timespan.cc
index 20b535836c..3b2021355e 100644
--- a/libs/ardour/export_timespan.cc
+++ b/libs/ardour/export_timespan.cc
@@ -20,10 +20,6 @@
#include "ardour/export_timespan.h"
-#include "ardour/export_channel_configuration.h"
-#include "ardour/export_filename.h"
-#include "ardour/export_failed.h"
-
namespace ARDOUR
{
diff --git a/libs/ardour/file_source.cc b/libs/ardour/file_source.cc
index be4ded9a2c..a7e3585e64 100644
--- a/libs/ardour/file_source.cc
+++ b/libs/ardour/file_source.cc
@@ -38,12 +38,11 @@
#include <glibmm/fileutils.h>
#include <glibmm/thread.h>
+#include "ardour/data_type.h"
#include "ardour/file_source.h"
-#include "ardour/directory_names.h"
#include "ardour/session.h"
-#include "ardour/session_directory.h"
-#include "ardour/source_factory.h"
-#include "ardour/filename_extensions.h"
+#include "ardour/source.h"
+#include "ardour/utils.h"
#include "i18n.h"
diff --git a/libs/ardour/filename_extensions.cc b/libs/ardour/filename_extensions.cc
index c09a8c481c..0684a13083 100644
--- a/libs/ardour/filename_extensions.cc
+++ b/libs/ardour/filename_extensions.cc
@@ -1,6 +1,5 @@
#include "ardour/filename_extensions.h"
-#include <stdint.h>
#include "i18n.h"
namespace ARDOUR {
diff --git a/libs/ardour/filter.cc b/libs/ardour/filter.cc
index 8067edf14e..67aa840cad 100644
--- a/libs/ardour/filter.cc
+++ b/libs/ardour/filter.cc
@@ -21,15 +21,16 @@
#include <cerrno>
#include "pbd/basename.h"
-#include "ardour/sndfilesource.h"
-#include "ardour/smf_source.h"
-#include "ardour/session.h"
-#include "ardour/region.h"
+
+#include "ardour/analyser.h"
+#include "ardour/audiofilesource.h"
+#include "ardour/audioregion.h"
#include "ardour/filter.h"
+#include "ardour/region.h"
#include "ardour/region_factory.h"
+#include "ardour/session.h"
+#include "ardour/smf_source.h"
#include "ardour/source_factory.h"
-#include "ardour/analyser.h"
-#include "ardour/audioregion.h"
#include "i18n.h"
diff --git a/libs/ardour/find_session.cc b/libs/ardour/find_session.cc
index c635b86545..4469b4e59d 100644
--- a/libs/ardour/find_session.cc
+++ b/libs/ardour/find_session.cc
@@ -10,7 +10,6 @@
#include "pbd/compose.h"
#include "pbd/error.h"
-#include "ardour/session_utils.h"
#include "ardour/filename_extensions.h"
#include "ardour/utils.h"
@@ -19,8 +18,10 @@
using namespace std;
using namespace PBD;
+namespace ARDOUR {
+
int
-ARDOUR::find_session (string str, string& path, string& snapshot, bool& isnew)
+find_session (string str, string& path, string& snapshot, bool& isnew)
{
struct stat statbuf;
char buf[PATH_MAX+1];
@@ -164,3 +165,5 @@ ARDOUR::find_session (string str, string& path, string& snapshot, bool& isnew)
return 0;
}
+
+} // namespace ARDOUR
diff --git a/libs/ardour/globals.cc b/libs/ardour/globals.cc
index 0e0c508a58..56aab1e12d 100644
--- a/libs/ardour/globals.cc
+++ b/libs/ardour/globals.cc
@@ -62,31 +62,25 @@
#include "midi++/mmc.h"
#include "ardour/analyser.h"
-#include "ardour/ardour.h"
#include "ardour/audio_library.h"
#include "ardour/audioengine.h"
+#include "ardour/audioplaylist.h"
#include "ardour/audioregion.h"
-#include "ardour/audiosource.h"
#include "ardour/buffer_manager.h"
#include "ardour/control_protocol_manager.h"
-#include "ardour/dB.h"
-#include "ardour/debug.h"
#include "ardour/filesystem_paths.h"
#include "ardour/midi_region.h"
#include "ardour/mix.h"
-#include "ardour/audioplaylist.h"
#include "ardour/panner_manager.h"
#include "ardour/plugin_manager.h"
#include "ardour/process_thread.h"
#include "ardour/profile.h"
-#include "ardour/region.h"
#include "ardour/rc_configuration.h"
+#include "ardour/region.h"
#include "ardour/route_group.h"
#include "ardour/runtime_functions.h"
-#include "ardour/session.h"
#include "ardour/session_event.h"
#include "ardour/source_factory.h"
-#include "ardour/utils.h"
#include "audiographer/routines.h"
diff --git a/libs/ardour/import.cc b/libs/ardour/import.cc
index 0c4256e1f4..17b396961a 100644
--- a/libs/ardour/import.cc
+++ b/libs/ardour/import.cc
@@ -52,6 +52,7 @@
#include "ardour/import_status.h"
#include "ardour/region_factory.h"
#include "ardour/resampled_source.h"
+#include "ardour/runtime_functions.h"
#include "ardour/session.h"
#include "ardour/session_directory.h"
#include "ardour/smf_source.h"
diff --git a/libs/ardour/internal_return.cc b/libs/ardour/internal_return.cc
index 6a3d20e5c9..ad2ed81194 100644
--- a/libs/ardour/internal_return.cc
+++ b/libs/ardour/internal_return.cc
@@ -18,14 +18,8 @@
#include <glibmm/thread.h>
-#include "pbd/failed_constructor.h"
-
-#include "ardour/audio_buffer.h"
#include "ardour/internal_return.h"
-#include "ardour/mute_master.h"
-#include "ardour/session.h"
#include "ardour/internal_send.h"
-#include "ardour/audioengine.h"
using namespace std;
using namespace ARDOUR;
diff --git a/libs/ardour/internal_send.cc b/libs/ardour/internal_send.cc
index dfb0204c8c..671936b0ff 100644
--- a/libs/ardour/internal_send.cc
+++ b/libs/ardour/internal_send.cc
@@ -25,7 +25,6 @@
#include "ardour/internal_return.h"
#include "ardour/internal_send.h"
#include "ardour/meter.h"
-#include "ardour/panner.h"
#include "ardour/panner_shell.h"
#include "ardour/route.h"
#include "ardour/session.h"
@@ -33,6 +32,8 @@
#include "i18n.h"
+namespace ARDOUR { class MuteMaster; class Pannable; }
+
using namespace PBD;
using namespace ARDOUR;
using namespace std;
diff --git a/libs/ardour/io.cc b/libs/ardour/io.cc
index 26432c66ef..da79301a31 100644
--- a/libs/ardour/io.cc
+++ b/libs/ardour/io.cc
@@ -34,17 +34,12 @@
#include "ardour/audioengine.h"
#include "ardour/buffer.h"
+#include "ardour/buffer_set.h"
#include "ardour/debug.h"
#include "ardour/io.h"
-#include "ardour/route.h"
#include "ardour/port.h"
-#include "ardour/audio_port.h"
-#include "ardour/midi_port.h"
+#include "ardour/route.h"
#include "ardour/session.h"
-#include "ardour/cycle_timer.h"
-#include "ardour/buffer_set.h"
-#include "ardour/meter.h"
-#include "ardour/amp.h"
#include "ardour/user_bundle.h"
#include "i18n.h"
diff --git a/libs/ardour/io_processor.cc b/libs/ardour/io_processor.cc
index d5e0f3e0eb..fd47e1c06c 100644
--- a/libs/ardour/io_processor.cc
+++ b/libs/ardour/io_processor.cc
@@ -17,25 +17,20 @@
*/
-#include <fstream>
-#include <algorithm>
+#include <list>
#include <string>
-#include <cerrno>
-#include <unistd.h>
-#include <sstream>
-
#include "pbd/xml++.h"
#include "pbd/enumwriter.h"
-#include "ardour/io_processor.h"
-#include "ardour/session.h"
-#include "ardour/utils.h"
-#include "ardour/send.h"
-#include "ardour/port_insert.h"
-#include "ardour/plugin_insert.h"
+#include "ardour/chan_count.h"
+#include "ardour/data_type.h"
#include "ardour/io.h"
+#include "ardour/io_processor.h"
+#include "ardour/processor.h"
#include "ardour/route.h"
+#include "ardour/session_object.h"
+#include "ardour/types.h"
#include "i18n.h"
@@ -43,6 +38,8 @@ using namespace std;
using namespace ARDOUR;
using namespace PBD;
+namespace ARDOUR { class Session; }
+
/* create an IOProcessor that proxies to a new IO object */
IOProcessor::IOProcessor (Session& s, bool with_input, bool with_output,
diff --git a/libs/ardour/jack_slave.cc b/libs/ardour/jack_slave.cc
index 116ccdd145..4c2da4c6c4 100644
--- a/libs/ardour/jack_slave.cc
+++ b/libs/ardour/jack_slave.cc
@@ -24,9 +24,6 @@
#include <jack/transport.h>
#include "ardour/slave.h"
-#include "ardour/session.h"
-
-#include "i18n.h"
using namespace std;
using namespace ARDOUR;
diff --git a/libs/ardour/ladspa_plugin.cc b/libs/ardour/ladspa_plugin.cc
index 3a25eab384..1b3a5ea2e3 100644
--- a/libs/ardour/ladspa_plugin.cc
+++ b/libs/ardour/ladspa_plugin.cc
@@ -37,9 +37,7 @@
#include "midi++/manager.h"
-#include "ardour/ardour.h"
#include "ardour/session.h"
-#include "ardour/audioengine.h"
#include "ardour/ladspa_plugin.h"
#include "ardour/buffer_set.h"
#include "ardour/audio_buffer.h"
diff --git a/libs/ardour/lv2_plugin.cc b/libs/ardour/lv2_plugin.cc
index 46c09a1227..50552d2eb8 100644
--- a/libs/ardour/lv2_plugin.cc
+++ b/libs/ardour/lv2_plugin.cc
@@ -31,13 +31,11 @@
#include "pbd/compose.h"
#include "pbd/error.h"
-#include "pbd/pathscanner.h"
-#include "pbd/stl_delete.h"
#include "pbd/xml++.h"
#include "libardour-config.h"
-#include "ardour/ardour.h"
+#include "ardour/types.h"
#include "ardour/audio_buffer.h"
#include "ardour/audioengine.h"
#include "ardour/debug.h"
diff --git a/libs/ardour/meter.cc b/libs/ardour/meter.cc
index 5957d570b9..3b49c97d27 100644
--- a/libs/ardour/meter.cc
+++ b/libs/ardour/meter.cc
@@ -16,15 +16,15 @@
675 Mass Ave, Cambridge, MA 02139, USA.
*/
-#include "ardour/meter.h"
#include <algorithm>
#include <cmath>
+
+#include "ardour/audio_buffer.h"
#include "ardour/buffer_set.h"
-#include "ardour/peak.h"
#include "ardour/dB.h"
-#include "ardour/session.h"
+#include "ardour/meter.h"
#include "ardour/midi_buffer.h"
-#include "ardour/audio_buffer.h"
+#include "ardour/rc_configuration.h"
#include "ardour/runtime_functions.h"
using namespace std;
diff --git a/libs/ardour/midi_clock_slave.cc b/libs/ardour/midi_clock_slave.cc
index 87ea05738d..05c0e9e2ac 100644
--- a/libs/ardour/midi_clock_slave.cc
+++ b/libs/ardour/midi_clock_slave.cc
@@ -32,12 +32,8 @@
#include "ardour/debug.h"
#include "ardour/slave.h"
-#include "ardour/session.h"
-#include "ardour/audioengine.h"
-#include "ardour/cycles.h"
#include "ardour/tempo.h"
-
#include "i18n.h"
using namespace std;
diff --git a/libs/ardour/midi_diskstream.cc b/libs/ardour/midi_diskstream.cc
index 9b3b619d1c..a8757d7575 100644
--- a/libs/ardour/midi_diskstream.cc
+++ b/libs/ardour/midi_diskstream.cc
@@ -38,11 +38,8 @@
#include "pbd/stateful_diff_command.h"
#include "pbd/stacktrace.h"
-#include "ardour/ardour.h"
#include "ardour/audioengine.h"
#include "ardour/butler.h"
-#include "ardour/configuration.h"
-#include "ardour/cycle_timer.h"
#include "ardour/debug.h"
#include "ardour/io.h"
#include "ardour/midi_diskstream.h"
@@ -52,11 +49,10 @@
#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/types.h"
#include "ardour/utils.h"
#include "midi++/types.h"
diff --git a/libs/ardour/midi_model.cc b/libs/ardour/midi_model.cc
index 40d2f600c8..a914a0d887 100644
--- a/libs/ardour/midi_model.cc
+++ b/libs/ardour/midi_model.cc
@@ -38,7 +38,6 @@
#include "ardour/midi_source.h"
#include "ardour/midi_state_tracker.h"
#include "ardour/session.h"
-#include "ardour/smf_source.h"
#include "ardour/types.h"
#include "i18n.h"
diff --git a/libs/ardour/midi_patch_manager.cc b/libs/ardour/midi_patch_manager.cc
index d3d080a179..58e33d2d53 100644
--- a/libs/ardour/midi_patch_manager.cc
+++ b/libs/ardour/midi_patch_manager.cc
@@ -20,7 +20,6 @@
#include <boost/shared_ptr.hpp>
-#include "pbd/compose.h"
#include "pbd/file_utils.h"
#include "pbd/error.h"
@@ -29,8 +28,6 @@
#include "ardour/midi_patch_manager.h"
#include "ardour/midi_patch_search_path.h"
-#include "i18n.h"
-
using namespace std;
using namespace ARDOUR;
using namespace MIDI;
diff --git a/libs/ardour/midi_playlist.cc b/libs/ardour/midi_playlist.cc
index 9aa36304a6..9c1e338b6c 100644
--- a/libs/ardour/midi_playlist.cc
+++ b/libs/ardour/midi_playlist.cc
@@ -25,17 +25,12 @@
#include <stdlib.h>
-#include "pbd/error.h"
-
#include "evoral/EventList.hpp"
-#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/midi_ring_buffer.h"
-#include "ardour/session.h"
#include "ardour/types.h"
#include "i18n.h"
diff --git a/libs/ardour/midi_playlist_source.cc b/libs/ardour/midi_playlist_source.cc
index 957531f520..5dfbf955c6 100644
--- a/libs/ardour/midi_playlist_source.cc
+++ b/libs/ardour/midi_playlist_source.cc
@@ -20,25 +20,10 @@
#include "libardour-config.h"
#endif
-#include <vector>
-#include <cstdio>
-
-#include <glibmm/fileutils.h>
-#include <glibmm/miscutils.h>
-
#include "pbd/error.h"
-#include "pbd/convert.h"
-#include "pbd/enumwriter.h"
#include "ardour/midi_playlist.h"
#include "ardour/midi_playlist_source.h"
-#include "ardour/midi_region.h"
-#include "ardour/debug.h"
-#include "ardour/filename_extensions.h"
-#include "ardour/session.h"
-#include "ardour/session_directory.h"
-#include "ardour/session_playlists.h"
-#include "ardour/source_factory.h"
#include "i18n.h"
@@ -46,6 +31,17 @@ using namespace std;
using namespace ARDOUR;
using namespace PBD;
+namespace ARDOUR {
+class MidiStateTracker;
+class Session;
+template <typename T> class MidiRingBuffer;
+}
+
+namespace Evoral {
+template <typename T> class EventSink;
+template <typename Time> class Event;
+}
+
/*******************************************************************************
As of May 2011, it appears too complex to support compound regions for MIDI
because of the need to be able to edit the data represented by the region. It
@@ -98,7 +94,6 @@ MidiPlaylistSource::get_state ()
return node;
}
-
int
MidiPlaylistSource::set_state (const XMLNode& node, int version)
{
diff --git a/libs/ardour/midi_region.cc b/libs/ardour/midi_region.cc
index f9f1867686..d52d661c1a 100644
--- a/libs/ardour/midi_region.cc
+++ b/libs/ardour/midi_region.cc
@@ -26,17 +26,13 @@
#include <glibmm/thread.h>
-#include "pbd/basename.h"
#include "pbd/xml++.h"
-#include "pbd/enumwriter.h"
#include "ardour/automation_control.h"
-#include "ardour/dB.h"
#include "ardour/midi_model.h"
#include "ardour/midi_region.h"
#include "ardour/midi_ring_buffer.h"
#include "ardour/midi_source.h"
-#include "ardour/playlist.h"
#include "ardour/region_factory.h"
#include "ardour/session.h"
#include "ardour/tempo.h"
diff --git a/libs/ardour/midi_source.cc b/libs/ardour/midi_source.cc
index 4c854baf69..48d9cdf877 100644
--- a/libs/ardour/midi_source.cc
+++ b/libs/ardour/midi_source.cc
@@ -34,19 +34,18 @@
#include "pbd/pthread_utils.h"
#include "pbd/basename.h"
-#include "ardour/audioengine.h"
#include "ardour/debug.h"
#include "ardour/midi_model.h"
-#include "ardour/midi_ring_buffer.h"
#include "ardour/midi_state_tracker.h"
#include "ardour/midi_source.h"
#include "ardour/session.h"
#include "ardour/session_directory.h"
#include "ardour/source_factory.h"
-#include "ardour/tempo.h"
#include "i18n.h"
+namespace ARDOUR { template <typename T> class MidiRingBuffer; }
+
using namespace std;
using namespace ARDOUR;
using namespace PBD;
diff --git a/libs/ardour/midi_state_tracker.cc b/libs/ardour/midi_state_tracker.cc
index 7bf23f9358..99a6cd991d 100644
--- a/libs/ardour/midi_state_tracker.cc
+++ b/libs/ardour/midi_state_tracker.cc
@@ -22,9 +22,10 @@
#include "pbd/compose.h"
#include "pbd/stacktrace.h"
+#include "evoral/EventSink.hpp"
+
#include "ardour/debug.h"
#include "ardour/event_type_map.h"
-#include "ardour/midi_ring_buffer.h"
#include "ardour/midi_source.h"
#include "ardour/midi_state_tracker.h"
diff --git a/libs/ardour/midi_stretch.cc b/libs/ardour/midi_stretch.cc
index 83b845bbfc..aa03def614 100644
--- a/libs/ardour/midi_stretch.cc
+++ b/libs/ardour/midi_stretch.cc
@@ -24,7 +24,6 @@
#include "ardour/midi_region.h"
#include "ardour/midi_source.h"
#include "ardour/midi_stretch.h"
-#include "ardour/session.h"
#include "ardour/types.h"
#include "i18n.h"
diff --git a/libs/ardour/midi_track.cc b/libs/ardour/midi_track.cc
index 7291a41212..64e61e79f9 100644
--- a/libs/ardour/midi_track.cc
+++ b/libs/ardour/midi_track.cc
@@ -17,35 +17,33 @@
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-#include "pbd/error.h"
-
#include "pbd/enumwriter.h"
#include "pbd/convert.h"
-#include "midi++/events.h"
#include "evoral/midi_util.h"
-#include "ardour/amp.h"
#include "ardour/buffer_set.h"
#include "ardour/debug.h"
#include "ardour/delivery.h"
-#include "ardour/io_processor.h"
#include "ardour/meter.h"
#include "ardour/midi_diskstream.h"
#include "ardour/midi_playlist.h"
#include "ardour/midi_port.h"
-#include "ardour/midi_region.h"
-#include "ardour/midi_source.h"
#include "ardour/midi_track.h"
-#include "ardour/panner.h"
#include "ardour/port.h"
#include "ardour/processor.h"
-#include "ardour/route_group_specialized.h"
#include "ardour/session.h"
#include "ardour/session_playlists.h"
#include "ardour/utils.h"
#include "i18n.h"
+namespace ARDOUR {
+class InterThreadInfo;
+class MidiSource;
+class Region;
+class SMFSource;
+}
+
using namespace std;
using namespace ARDOUR;
using namespace PBD;
diff --git a/libs/ardour/mtc_slave.cc b/libs/ardour/mtc_slave.cc
index 5edb5583f7..6c95730f24 100644
--- a/libs/ardour/mtc_slave.cc
+++ b/libs/ardour/mtc_slave.cc
@@ -23,9 +23,6 @@
#include <unistd.h>
#include "pbd/error.h"
-#include "pbd/enumwriter.h"
-#include "pbd/failed_constructor.h"
-#include "pbd/pthread_utils.h"
#include "midi++/port.h"
#include "ardour/debug.h"
diff --git a/libs/ardour/mtdm.cc b/libs/ardour/mtdm.cc
index dceb4f8406..ba73025053 100644
--- a/libs/ardour/mtdm.cc
+++ b/libs/ardour/mtdm.cc
@@ -16,6 +16,8 @@
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
+#include <math.h>
+
#include "ardour/mtdm.h"
MTDM::MTDM (void)
diff --git a/libs/ardour/panner.cc b/libs/ardour/panner.cc
index 0713e48fe5..6f3aec4646 100644
--- a/libs/ardour/panner.cc
+++ b/libs/ardour/panner.cc
@@ -17,15 +17,10 @@
*/
-#include "pbd/boost_debug.h"
-
-#include "ardour/audio_buffer.h"
#include "ardour/buffer_set.h"
#include "ardour/debug.h"
#include "ardour/panner.h"
#include "ardour/pannable.h"
-#include "ardour/session.h"
-#include "ardour/utils.h"
#include "i18n.h"
diff --git a/libs/ardour/panner_shell.cc b/libs/ardour/panner_shell.cc
index fc72a27b09..1aeb94eb7e 100644
--- a/libs/ardour/panner_shell.cc
+++ b/libs/ardour/panner_shell.cc
@@ -43,18 +43,13 @@
#include "evoral/Curve.hpp"
#include "ardour/audio_buffer.h"
-#include "ardour/audio_buffer.h"
-#include "ardour/automatable.h"
#include "ardour/buffer_set.h"
#include "ardour/debug.h"
-#include "ardour/pannable.h"
#include "ardour/panner.h"
#include "ardour/panner_manager.h"
#include "ardour/panner_shell.h"
-#include "ardour/runtime_functions.h"
#include "ardour/session.h"
#include "ardour/speakers.h"
-#include "ardour/utils.h"
#include "i18n.h"
diff --git a/libs/ardour/playlist.cc b/libs/ardour/playlist.cc
index 12490d02d7..390f9fdaad 100644
--- a/libs/ardour/playlist.cc
+++ b/libs/ardour/playlist.cc
@@ -19,20 +19,14 @@
#include <stdint.h>
#include <set>
-#include <fstream>
#include <algorithm>
-#include <unistd.h>
-#include <cerrno>
#include <string>
-#include <climits>
#include <boost/lexical_cast.hpp>
#include "pbd/convert.h"
-#include "pbd/failed_constructor.h"
#include "pbd/stateful_diff_command.h"
#include "pbd/xml++.h"
-#include "pbd/stacktrace.h"
#include "ardour/debug.h"
#include "ardour/playlist.h"
diff --git a/libs/ardour/playlist_source.cc b/libs/ardour/playlist_source.cc
index 7583a4e6ea..ed8735b865 100644
--- a/libs/ardour/playlist_source.cc
+++ b/libs/ardour/playlist_source.cc
@@ -33,9 +33,6 @@
#include "ardour/playlist.h"
#include "ardour/playlist_source.h"
#include "ardour/playlist_factory.h"
-#include "ardour/session.h"
-#include "ardour/session_playlists.h"
-#include "ardour/source_factory.h"
#include "i18n.h"
diff --git a/libs/ardour/plugin.cc b/libs/ardour/plugin.cc
index cbcf9f7f7c..4afc39b4ec 100644
--- a/libs/ardour/plugin.cc
+++ b/libs/ardour/plugin.cc
@@ -38,12 +38,16 @@
#include "pbd/error.h"
#include "pbd/xml++.h"
-#include "ardour/ardour.h"
-#include "ardour/session.h"
-#include "ardour/audioengine.h"
+#include "ardour/buffer_set.h"
+#include "ardour/chan_count.h"
+#include "ardour/chan_mapping.h"
+#include "ardour/data_type.h"
+#include "ardour/midi_buffer.h"
+#include "ardour/midi_state_tracker.h"
#include "ardour/plugin.h"
-#include "ardour/ladspa_plugin.h"
#include "ardour/plugin_manager.h"
+#include "ardour/session.h"
+#include "ardour/types.h"
#ifdef AUDIOUNIT_SUPPORT
#include "ardour/audio_unit.h"
@@ -62,6 +66,8 @@ using namespace std;
using namespace ARDOUR;
using namespace PBD;
+namespace ARDOUR { class AudioEngine; }
+
bool
PluginInfo::is_instrument () const
{
diff --git a/libs/ardour/plugin_insert.cc b/libs/ardour/plugin_insert.cc
index 20180b285b..ba61e43e9c 100644
--- a/libs/ardour/plugin_insert.cc
+++ b/libs/ardour/plugin_insert.cc
@@ -35,8 +35,6 @@
#include "ardour/ladspa_plugin.h"
#include "ardour/plugin.h"
#include "ardour/plugin_insert.h"
-#include "ardour/port.h"
-#include "ardour/route.h"
#ifdef LV2_SUPPORT
#include "ardour/lv2_plugin.h"
@@ -54,7 +52,6 @@
#include "ardour/audio_unit.h"
#endif
-#include "ardour/audioengine.h"
#include "ardour/session.h"
#include "ardour/types.h"
diff --git a/libs/ardour/plugin_manager.cc b/libs/ardour/plugin_manager.cc
index 82d5b4748b..a666e7b53e 100644
--- a/libs/ardour/plugin_manager.cc
+++ b/libs/ardour/plugin_manager.cc
@@ -53,7 +53,7 @@
#include "ardour/ladspa_plugin.h"
#include "ardour/plugin.h"
#include "ardour/plugin_manager.h"
-#include "ardour/session.h"
+#include "ardour/rc_configuration.h"
#ifdef LV2_SUPPORT
#include "ardour/lv2_plugin.h"
diff --git a/libs/ardour/port.cc b/libs/ardour/port.cc
index e9a3c09a10..b0c4b43c06 100644
--- a/libs/ardour/port.cc
+++ b/libs/ardour/port.cc
@@ -21,17 +21,15 @@
#include "libardour-config.h"
#endif
-#include <stdexcept>
-
#include <jack/weakjack.h> // so that we can test for new functions at runtime
-#include "pbd/error.h"
#include "pbd/compose.h"
+#include "pbd/error.h"
+#include "pbd/failed_constructor.h"
+#include "ardour/audioengine.h"
#include "ardour/debug.h"
#include "ardour/port.h"
-#include "ardour/audioengine.h"
-#include "pbd/failed_constructor.h"
#include "i18n.h"
diff --git a/libs/ardour/port_insert.cc b/libs/ardour/port_insert.cc
index cc27c6887f..46c4d7e9d5 100644
--- a/libs/ardour/port_insert.cc
+++ b/libs/ardour/port_insert.cc
@@ -19,19 +19,14 @@
#include <string>
-
-#include "pbd/failed_constructor.h"
#include "pbd/xml++.h"
-#include "ardour/audioengine.h"
#include "ardour/audio_port.h"
-#include "ardour/buffer_set.h"
+#include "ardour/audioengine.h"
#include "ardour/delivery.h"
+#include "ardour/io.h"
#include "ardour/mtdm.h"
-#include "ardour/plugin.h"
-#include "ardour/port.h"
#include "ardour/port_insert.h"
-#include "ardour/route.h"
#include "ardour/session.h"
#include "ardour/types.h"
diff --git a/libs/ardour/port_set.cc b/libs/ardour/port_set.cc
index 7e9f0656c5..6096e356f5 100644
--- a/libs/ardour/port_set.cc
+++ b/libs/ardour/port_set.cc
@@ -18,9 +18,10 @@
#include <string>
-#include "ardour/port_set.h"
-#include "ardour/midi_port.h"
#include "ardour/audio_port.h"
+#include "ardour/midi_port.h"
+#include "ardour/port.h"
+#include "ardour/port_set.h"
using std::string;
diff --git a/libs/ardour/process_thread.cc b/libs/ardour/process_thread.cc
index e910db1c78..55aa692001 100644
--- a/libs/ardour/process_thread.cc
+++ b/libs/ardour/process_thread.cc
@@ -18,7 +18,7 @@
*/
#include <iostream>
-#include "ardour/audioengine.h"
+
#include "ardour/buffer.h"
#include "ardour/buffer_manager.h"
#include "ardour/buffer_set.h"
diff --git a/libs/ardour/processor.cc b/libs/ardour/processor.cc
index 79384c701e..3f8fdf509d 100644
--- a/libs/ardour/processor.cc
+++ b/libs/ardour/processor.cc
@@ -23,20 +23,12 @@
#include <string>
-
-#include "pbd/failed_constructor.h"
-#include "pbd/enumwriter.h"
#include "pbd/xml++.h"
+#include "ardour/automatable.h"
+#include "ardour/chan_count.h"
#include "ardour/processor.h"
-#include "ardour/plugin.h"
-#include "ardour/port.h"
-#include "ardour/route.h"
-#include "ardour/ladspa_plugin.h"
-#include "ardour/buffer_set.h"
-#include "ardour/send.h"
-#include "ardour/port_insert.h"
-#include "ardour/plugin_insert.h"
+#include "ardour/types.h"
#ifdef WINDOWS_VST_SUPPORT
#include "ardour/windows_vst_plugin.h"
@@ -56,6 +48,8 @@ using namespace std;
using namespace ARDOUR;
using namespace PBD;
+namespace ARDOUR { class Session; }
+
// Always saved as Processor, but may be IOProcessor or Send in legacy sessions
const string Processor::state_node_name = "Processor";
diff --git a/libs/ardour/quantize.cc b/libs/ardour/quantize.cc
index 563b7bf4e7..a4543d773c 100644
--- a/libs/ardour/quantize.cc
+++ b/libs/ardour/quantize.cc
@@ -20,13 +20,8 @@
#include "pbd/basename.h"
-#include "ardour/types.h"
#include "ardour/quantize.h"
-#include "ardour/session.h"
-#include "ardour/smf_source.h"
#include "ardour/midi_model.h"
-#include "ardour/midi_region.h"
-#include "ardour/tempo.h"
#include "i18n.h"
diff --git a/libs/ardour/rb_effect.cc b/libs/ardour/rb_effect.cc
index d928377e25..7ff60e6912 100644
--- a/libs/ardour/rb_effect.cc
+++ b/libs/ardour/rb_effect.cc
@@ -23,13 +23,13 @@
#include "pbd/error.h"
#include "rubberband/RubberBandStretcher.h"
-#include "ardour/types.h"
-#include "ardour/stretch.h"
-#include "ardour/pitch.h"
-#include "ardour/audiofilesource.h"
-#include "ardour/session.h"
#include "ardour/audioregion.h"
+#include "ardour/audiosource.h"
+#include "ardour/pitch.h"
#include "ardour/progress.h"
+#include "ardour/session.h"
+#include "ardour/stretch.h"
+#include "ardour/types.h"
#include "i18n.h"
diff --git a/libs/ardour/rc_configuration.cc b/libs/ardour/rc_configuration.cc
index 1adde47b2a..d2290c73d5 100644
--- a/libs/ardour/rc_configuration.cc
+++ b/libs/ardour/rc_configuration.cc
@@ -24,18 +24,16 @@
#include <glib/gstdio.h> /* for g_stat() */
#include <glibmm/miscutils.h>
-#include "pbd/failed_constructor.h"
#include "pbd/xml++.h"
#include "pbd/filesystem.h"
#include "pbd/file_utils.h"
#include "midi++/manager.h"
-#include "ardour/ardour.h"
-#include "ardour/rc_configuration.h"
-#include "ardour/audio_diskstream.h"
#include "ardour/control_protocol_manager.h"
+#include "ardour/diskstream.h"
#include "ardour/filesystem_paths.h"
+#include "ardour/rc_configuration.h"
#include "ardour/session_metadata.h"
#include "i18n.h"
diff --git a/libs/ardour/recent_sessions.cc b/libs/ardour/recent_sessions.cc
index 45c30b085b..b1bf49f7ad 100644
--- a/libs/ardour/recent_sessions.cc
+++ b/libs/ardour/recent_sessions.cc
@@ -19,19 +19,14 @@
#include <cstring>
#include <cerrno>
-#include <unistd.h>
#include <fstream>
#include <algorithm>
-#include <glibmm/miscutils.h>
-
#include "pbd/error.h"
-#include "ardour/configuration.h"
#include "ardour/rc_configuration.h"
#include "ardour/filesystem_paths.h"
#include "ardour/recent_sessions.h"
-#include "ardour/utils.h"
#include "i18n.h"
diff --git a/libs/ardour/region.cc b/libs/ardour/region.cc
index a4a1584792..2166741dda 100644
--- a/libs/ardour/region.cc
+++ b/libs/ardour/region.cc
@@ -25,11 +25,8 @@
#include <glibmm/thread.h>
#include "pbd/xml++.h"
-#include "pbd/stacktrace.h"
-#include "pbd/enumwriter.h"
#include "ardour/debug.h"
-#include "ardour/file_source.h"
#include "ardour/filter.h"
#include "ardour/playlist.h"
#include "ardour/playlist_source.h"
@@ -38,9 +35,7 @@
#include "ardour/region_factory.h"
#include "ardour/session.h"
#include "ardour/source.h"
-#include "ardour/source_factory.h"
#include "ardour/tempo.h"
-#include "ardour/utils.h"
#include "i18n.h"
@@ -49,6 +44,7 @@ using namespace ARDOUR;
using namespace PBD;
namespace ARDOUR {
+ class Progress;
namespace Properties {
PBD::PropertyDescriptor<bool> muted;
PBD::PropertyDescriptor<bool> opaque;
diff --git a/libs/ardour/region_factory.cc b/libs/ardour/region_factory.cc
index 6af256f169..01860048f4 100644
--- a/libs/ardour/region_factory.cc
+++ b/libs/ardour/region_factory.cc
@@ -20,17 +20,14 @@
#include <inttypes.h>
#include "pbd/error.h"
-#include "pbd/boost_debug.h"
-#include "ardour/session.h"
-
-#include "ardour/region_factory.h"
-#include "ardour/region.h"
#include "ardour/audioregion.h"
#include "ardour/audiosource.h"
-#include "ardour/midi_source.h"
#include "ardour/midi_region.h"
-#include "ardour/utils.h"
+#include "ardour/midi_source.h"
+#include "ardour/region.h"
+#include "ardour/region_factory.h"
+#include "ardour/session.h"
#include "i18n.h"
diff --git a/libs/ardour/return.cc b/libs/ardour/return.cc
index 0152155338..43a2e1bfd1 100644
--- a/libs/ardour/return.cc
+++ b/libs/ardour/return.cc
@@ -22,16 +22,12 @@
#include "pbd/xml++.h"
#include "ardour/amp.h"
-#include "ardour/audio_port.h"
+#include "ardour/audioengine.h"
#include "ardour/buffer_set.h"
#include "ardour/io.h"
#include "ardour/meter.h"
-#include "ardour/panner.h"
-#include "ardour/port.h"
#include "ardour/return.h"
#include "ardour/session.h"
-#include "ardour/mute_master.h"
-#include "ardour/audioengine.h"
#include "i18n.h"
diff --git a/libs/ardour/reverse.cc b/libs/ardour/reverse.cc
index 45d7c83051..06fafb0ca4 100644
--- a/libs/ardour/reverse.cc
+++ b/libs/ardour/reverse.cc
@@ -19,19 +19,16 @@
#include <algorithm>
-#include "pbd/basename.h"
-
-#include "ardour/types.h"
-#include "ardour/reverse.h"
-#include "ardour/audiofilesource.h"
-#include "ardour/session.h"
#include "ardour/audioregion.h"
-
-#include "i18n.h"
+#include "ardour/audiosource.h"
+#include "ardour/reverse.h"
+#include "ardour/types.h"
using namespace std;
using namespace ARDOUR;
+namespace ARDOUR { class Progress; class Session; }
+
Reverse::Reverse (Session& s)
: Filter (s)
{
diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc
index 3f68e266eb..1948ba14aa 100644
--- a/libs/ardour/route.cc
+++ b/libs/ardour/route.cc
@@ -33,40 +33,30 @@
#include "pbd/convert.h"
#include "pbd/boost_debug.h"
-#include "evoral/Curve.hpp"
-
#include "ardour/amp.h"
-#include "ardour/audio_port.h"
+#include "ardour/audio_buffer.h"
#include "ardour/audioengine.h"
#include "ardour/buffer.h"
#include "ardour/buffer_set.h"
-#include "ardour/configuration.h"
-#include "ardour/cycle_timer.h"
+#include "ardour/capturing_processor.h"
#include "ardour/debug.h"
#include "ardour/delivery.h"
-#include "ardour/dB.h"
-#include "ardour/internal_send.h"
#include "ardour/internal_return.h"
-#include "ardour/ladspa_plugin.h"
+#include "ardour/internal_send.h"
#include "ardour/meter.h"
-#include "ardour/mix.h"
#include "ardour/monitor_processor.h"
#include "ardour/pannable.h"
-#include "ardour/panner.h"
#include "ardour/panner_shell.h"
#include "ardour/plugin_insert.h"
#include "ardour/port.h"
#include "ardour/port_insert.h"
#include "ardour/processor.h"
-#include "ardour/profile.h"
#include "ardour/route.h"
#include "ardour/route_group.h"
#include "ardour/send.h"
#include "ardour/session.h"
-#include "ardour/timestamps.h"
-#include "ardour/utils.h"
#include "ardour/unknown_processor.h"
-#include "ardour/capturing_processor.h"
+#include "ardour/utils.h"
#include "i18n.h"
diff --git a/libs/ardour/route_group.cc b/libs/ardour/route_group.cc
index ef7645e63f..cb00df724a 100644
--- a/libs/ardour/route_group.cc
+++ b/libs/ardour/route_group.cc
@@ -21,17 +21,14 @@
#include <algorithm>
-
#include "pbd/error.h"
#include "pbd/enumwriter.h"
#include "pbd/strsplit.h"
#include "ardour/amp.h"
-#include "ardour/debug.h"
-#include "ardour/route_group.h"
#include "ardour/audio_track.h"
-#include "ardour/audio_diskstream.h"
-#include "ardour/configuration.h"
+#include "ardour/route.h"
+#include "ardour/route_group.h"
#include "ardour/session.h"
#include "i18n.h"
diff --git a/libs/ardour/route_group_member.cc b/libs/ardour/route_group_member.cc
index 9e2682bbb9..85d2f981d7 100644
--- a/libs/ardour/route_group_member.cc
+++ b/libs/ardour/route_group_member.cc
@@ -14,15 +14,14 @@
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 "ardour/route_group.h"
#include "ardour/route_group_member.h"
using namespace ARDOUR;
+namespace ARDOUR { class RouteGroup; }
+
/** Set the route group; it can be set to 0 for `none' */
void
RouteGroupMember::set_route_group (RouteGroup *rg)
diff --git a/libs/ardour/send.cc b/libs/ardour/send.cc
index 819165b352..677b8c2e3b 100644
--- a/libs/ardour/send.cc
+++ b/libs/ardour/send.cc
@@ -26,15 +26,18 @@
#include "ardour/amp.h"
#include "ardour/send.h"
#include "ardour/session.h"
-#include "ardour/port.h"
-#include "ardour/audio_port.h"
#include "ardour/buffer_set.h"
#include "ardour/meter.h"
-#include "ardour/panner.h"
#include "ardour/io.h"
#include "i18n.h"
+namespace ARDOUR {
+class AutomationControl;
+class MuteMaster;
+class Pannable;
+}
+
using namespace ARDOUR;
using namespace PBD;
using namespace std;
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc
index 1192e898f6..b09d67fb35 100644
--- a/libs/ardour/session.cc
+++ b/libs/ardour/session.cc
@@ -56,54 +56,38 @@
#include "ardour/audio_track.h"
#include "ardour/audioengine.h"
#include "ardour/audiofilesource.h"
-#include "ardour/audioplaylist.h"
-#include "ardour/audioregion.h"
#include "ardour/auditioner.h"
#include "ardour/buffer_manager.h"
#include "ardour/buffer_set.h"
#include "ardour/bundle.h"
#include "ardour/butler.h"
#include "ardour/click.h"
-#include "ardour/configuration.h"
#include "ardour/control_protocol_manager.h"
-#include "ardour/cycle_timer.h"
#include "ardour/data_type.h"
#include "ardour/debug.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/graph.h"
#include "ardour/midi_track.h"
#include "ardour/midi_ui.h"
#include "ardour/named_selection.h"
-#include "ardour/process_thread.h"
+#include "ardour/operations.h"
#include "ardour/playlist.h"
#include "ardour/plugin.h"
#include "ardour/plugin_insert.h"
-#include "ardour/port_insert.h"
-#include "ardour/processor.h"
+#include "ardour/process_thread.h"
#include "ardour/rc_configuration.h"
#include "ardour/recent_sessions.h"
+#include "ardour/region.h"
#include "ardour/region_factory.h"
-#include "ardour/return.h"
#include "ardour/route_graph.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_playlists.h"
-#include "ardour/slave.h"
#include "ardour/smf_source.h"
#include "ardour/source_factory.h"
-#include "ardour/tape_file_matcher.h"
-#include "ardour/tempo.h"
#include "ardour/utils.h"
-#include "ardour/graph.h"
-#include "ardour/speakers.h"
-#include "ardour/operations.h"
#include "midi++/port.h"
#include "midi++/jack_midi_port.h"
@@ -112,6 +96,12 @@
#include "i18n.h"
+namespace ARDOUR {
+class MidiSource;
+class Processor;
+class Speakers;
+}
+
using namespace std;
using namespace ARDOUR;
using namespace PBD;
diff --git a/libs/ardour/session_butler.cc b/libs/ardour/session_butler.cc
index 87e3c34fb5..88f61335e0 100644
--- a/libs/ardour/session_butler.cc
+++ b/libs/ardour/session_butler.cc
@@ -31,15 +31,12 @@
#include "pbd/pthread_utils.h"
#include "pbd/stacktrace.h"
-#include "ardour/audio_diskstream.h"
-#include "ardour/audioengine.h"
#include "ardour/butler.h"
-#include "ardour/configuration.h"
-#include "ardour/io.h"
-#include "ardour/midi_diskstream.h"
+#include "ardour/route.h"
#include "ardour/session.h"
-#include "ardour/timestamps.h"
+#include "ardour/session_event.h"
#include "ardour/track.h"
+#include "ardour/types.h"
#include "i18n.h"
diff --git a/libs/ardour/session_click.cc b/libs/ardour/session_click.cc
index e36c871fae..abfbaecfcd 100644
--- a/libs/ardour/session_click.cc
+++ b/libs/ardour/session_click.cc
@@ -21,13 +21,13 @@
#include <cerrno>
#include "ardour/amp.h"
-#include "ardour/ardour.h"
#include "ardour/audio_buffer.h"
#include "ardour/buffer_set.h"
#include "ardour/click.h"
#include "ardour/io.h"
#include "ardour/session.h"
#include "ardour/tempo.h"
+#include "ardour/types.h"
#include <sndfile.h>
diff --git a/libs/ardour/session_command.cc b/libs/ardour/session_command.cc
index 68aba1a689..0246f55479 100644
--- a/libs/ardour/session_command.cc
+++ b/libs/ardour/session_command.cc
@@ -17,29 +17,28 @@
*/
-#include "ardour/session.h"
-#include "ardour/route.h"
-#include "pbd/memento_command.h"
-#include "ardour/diskstream.h"
+#include <string>
+
+#include "ardour/automation_list.h"
+#include "ardour/location.h"
+#include "ardour/midi_automation_list_binder.h"
#include "ardour/playlist.h"
-#include "ardour/audioplaylist.h"
-#include "ardour/audio_track.h"
-#include "ardour/midi_playlist.h"
-#include "ardour/midi_track.h"
-#include "ardour/tempo.h"
-#include "ardour/audiosource.h"
-#include "ardour/audioregion.h"
-#include "ardour/midi_source.h"
-#include "ardour/midi_region.h"
-#include "ardour/session_playlists.h"
+#include "ardour/region.h"
#include "ardour/region_factory.h"
-#include "ardour/midi_automation_list_binder.h"
+#include "ardour/route.h"
+#include "ardour/session.h"
+#include "ardour/session_playlists.h"
+#include "ardour/source.h"
+#include "ardour/tempo.h"
+#include "evoral/Curve.hpp"
#include "pbd/error.h"
-#include "pbd/id.h"
-#include "pbd/statefuldestructible.h"
#include "pbd/failed_constructor.h"
+#include "pbd/id.h"
+#include "pbd/memento_command.h"
#include "pbd/stateful_diff_command.h"
-#include "evoral/Curve.hpp"
+#include "pbd/statefuldestructible.h"
+
+class Command;
using namespace PBD;
using namespace ARDOUR;
@@ -90,7 +89,7 @@ Session::memento_command_factory(XMLNode *n)
}
/* create command */
- string obj_T = n->property ("type-name")->value();
+ std::string obj_T = n->property ("type-name")->value();
if (obj_T == "ARDOUR::AudioRegion" || obj_T == "ARDOUR::MidiRegion" || obj_T == "ARDOUR::Region") {
boost::shared_ptr<Region> r = RegionFactory::region_by_id (id);
@@ -139,7 +138,7 @@ Session::memento_command_factory(XMLNode *n)
);
}
- cerr << "Alist " << id << " not found\n";
+ std::cerr << "Alist " << id << " not found\n";
} else if (registry.count(id)) { // For Editor and AutomationLine which are off-limits herea
return new MementoCommand<PBD::StatefulDestructible>(*registry[id], before, after);
@@ -156,7 +155,7 @@ Session::stateful_diff_command_factory (XMLNode* n)
{
PBD::ID const id (n->property("obj-id")->value ());
- string const obj_T = n->property ("type-name")->value ();
+ std::string const obj_T = n->property ("type-name")->value ();
if ((obj_T == "ARDOUR::AudioRegion" || obj_T == "ARDOUR::MidiRegion")) {
boost::shared_ptr<Region> r = RegionFactory::region_by_id (id);
if (r) {
@@ -164,13 +163,13 @@ Session::stateful_diff_command_factory (XMLNode* n)
}
} else if (obj_T == "ARDOUR::AudioPlaylist" || obj_T == "ARDOUR::MidiPlaylist") {
- boost::shared_ptr<Playlist> p = playlists->by_id (id);
- if (p) {
- return new StatefulDiffCommand (p, *n);
- } else {
- cerr << "Playlist with ID = " << id << " not found\n";
- }
- }
+ boost::shared_ptr<Playlist> p = playlists->by_id (id);
+ if (p) {
+ return new StatefulDiffCommand (p, *n);
+ } else {
+ std::cerr << "Playlist with ID = " << id << " not found\n";
+ }
+ }
/* we failed */
diff --git a/libs/ardour/session_configuration.cc b/libs/ardour/session_configuration.cc
index 899b85e770..cfb6fb8668 100644
--- a/libs/ardour/session_configuration.cc
+++ b/libs/ardour/session_configuration.cc
@@ -20,7 +20,6 @@
#include "ardour/types.h"
#include "ardour/utils.h"
#include "ardour/session_configuration.h"
-#include "ardour/ardour.h"
#include "i18n.h"
using namespace ARDOUR;
diff --git a/libs/ardour/session_events.cc b/libs/ardour/session_events.cc
index 421c81d42c..84b1b75b12 100644
--- a/libs/ardour/session_events.cc
+++ b/libs/ardour/session_events.cc
@@ -20,15 +20,10 @@
#include <cmath>
#include <unistd.h>
-#include "ardour/timestamps.h"
-
#include "pbd/error.h"
#include "pbd/enumwriter.h"
#include "pbd/stacktrace.h"
-#include "ardour/ardour.h"
-#include "ardour/audio_diskstream.h"
-#include "ardour/butler.h"
#include "ardour/debug.h"
#include "ardour/session_event.h"
diff --git a/libs/ardour/session_export.cc b/libs/ardour/session_export.cc
index 4d2944aad5..1d11dccbd0 100644
--- a/libs/ardour/session_export.cc
+++ b/libs/ardour/session_export.cc
@@ -26,12 +26,11 @@
#include "ardour/audioengine.h"
#include "ardour/butler.h"
-#include "ardour/export_failed.h"
#include "ardour/export_handler.h"
#include "ardour/export_status.h"
+#include "ardour/process_thread.h"
#include "ardour/session.h"
#include "ardour/track.h"
-#include "ardour/process_thread.h"
#include "i18n.h"
diff --git a/libs/ardour/session_midi.cc b/libs/ardour/session_midi.cc
index 8b9da721f2..caceebf853 100644
--- a/libs/ardour/session_midi.cc
+++ b/libs/ardour/session_midi.cc
@@ -38,16 +38,13 @@
#include "timecode/time.h"
-#include "ardour/configuration.h"
-#include "ardour/debug.h"
-#include "ardour/audioengine.h"
-#include "ardour/session.h"
#include "ardour/audio_track.h"
+#include "ardour/audioengine.h"
+#include "ardour/debug.h"
#include "ardour/midi_track.h"
#include "ardour/midi_ui.h"
-#include "ardour/audio_diskstream.h"
+#include "ardour/session.h"
#include "ardour/slave.h"
-#include "ardour/cycles.h"
#include "i18n.h"
diff --git a/libs/ardour/session_object.cc b/libs/ardour/session_object.cc
index 5ff28b59d0..39b31550d9 100644
--- a/libs/ardour/session_object.cc
+++ b/libs/ardour/session_object.cc
@@ -18,8 +18,9 @@
*/
#include <iostream>
-#include "ardour/session_object.h"
+
#include "ardour/debug.h"
+#include "ardour/session_object.h"
#include "i18n.h"
diff --git a/libs/ardour/session_playlists.cc b/libs/ardour/session_playlists.cc
index 8e25cbfd9d..b833aea1f2 100644
--- a/libs/ardour/session_playlists.cc
+++ b/libs/ardour/session_playlists.cc
@@ -18,17 +18,14 @@
*/
#include <vector>
-#include "pbd/xml++.h"
-#include "pbd/compose.h"
#include "ardour/debug.h"
-#include "ardour/session_playlists.h"
#include "ardour/playlist.h"
-#include "ardour/region.h"
#include "ardour/playlist_factory.h"
-#include "ardour/session.h"
-#include "ardour/source.h"
+#include "ardour/session_playlists.h"
#include "ardour/track.h"
#include "i18n.h"
+#include "pbd/compose.h"
+#include "pbd/xml++.h"
using namespace std;
using namespace PBD;
diff --git a/libs/ardour/session_process.cc b/libs/ardour/session_process.cc
index c002cc9008..29ce370d7f 100644
--- a/libs/ardour/session_process.cc
+++ b/libs/ardour/session_process.cc
@@ -27,20 +27,18 @@
#include <glibmm/thread.h>
-#include "ardour/ardour.h"
#include "ardour/audioengine.h"
#include "ardour/auditioner.h"
#include "ardour/butler.h"
+#include "ardour/cycle_timer.h"
#include "ardour/debug.h"
+#include "ardour/graph.h"
+#include "ardour/port.h"
#include "ardour/process_thread.h"
#include "ardour/session.h"
#include "ardour/slave.h"
-#include "ardour/timestamps.h"
-#include "ardour/graph.h"
-#include "ardour/audio_port.h"
-#include "ardour/tempo.h"
#include "ardour/ticker.h"
-#include "ardour/cycle_timer.h"
+#include "ardour/types.h"
#include "midi++/manager.h"
#include "midi++/mmc.h"
diff --git a/libs/ardour/session_state.cc b/libs/ardour/session_state.cc
index c21b492c8f..4b40a80d80 100644
--- a/libs/ardour/session_state.cc
+++ b/libs/ardour/session_state.cc
@@ -57,6 +57,8 @@
#include "midi++/port.h"
#include "midi++/manager.h"
+#include "evoral/SMF.hpp"
+
#include "pbd/boost_debug.h"
#include "pbd/basename.h"
#include "pbd/controllable_descriptor.h"
@@ -71,34 +73,26 @@
#include "ardour/amp.h"
#include "ardour/audio_diskstream.h"
-#include "ardour/audio_playlist_source.h"
#include "ardour/audio_track.h"
#include "ardour/audioengine.h"
#include "ardour/audiofilesource.h"
-#include "ardour/audioplaylist.h"
#include "ardour/audioregion.h"
-#include "ardour/auditioner.h"
#include "ardour/automation_control.h"
-#include "ardour/buffer.h"
#include "ardour/butler.h"
-#include "ardour/configuration.h"
#include "ardour/control_protocol_manager.h"
-#include "ardour/cycle_timer.h"
#include "ardour/directory_names.h"
#include "ardour/filename_extensions.h"
-#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"
#include "ardour/midi_source.h"
#include "ardour/midi_track.h"
#include "ardour/named_selection.h"
#include "ardour/pannable.h"
-#include "ardour/processor.h"
+#include "ardour/playlist_factory.h"
#include "ardour/port.h"
+#include "ardour/processor.h"
#include "ardour/proxy_controllable.h"
#include "ardour/recent_sessions.h"
#include "ardour/region_factory.h"
@@ -107,13 +101,10 @@
#include "ardour/session.h"
#include "ardour/session_directory.h"
#include "ardour/session_metadata.h"
-#include "ardour/session_state_utils.h"
#include "ardour/session_playlists.h"
+#include "ardour/session_state_utils.h"
#include "ardour/session_utils.h"
#include "ardour/silentfilesource.h"
-#include "ardour/slave.h"
-#include "ardour/smf_source.h"
-#include "ardour/sndfile_helpers.h"
#include "ardour/sndfilesource.h"
#include "ardour/source_factory.h"
#include "ardour/speakers.h"
@@ -121,10 +112,6 @@
#include "ardour/tempo.h"
#include "ardour/ticker.h"
#include "ardour/user_bundle.h"
-#include "ardour/utils.h"
-#include "ardour/utils.h"
-#include "ardour/version.h"
-#include "ardour/playlist_factory.h"
#include "control_protocol/control_protocol.h"
@@ -782,7 +769,7 @@ Session::save_state (string snapshot_name, bool pending, bool switch_to_snapshot
} catch (Evoral::SMF::FileError& e) {
error << string_compose ("Could not write to MIDI file %1; MIDI data not saved.", e.file_name ()) << endmsg;
}
- }
+ }
tree.set_root (&get_state());
diff --git a/libs/ardour/session_time.cc b/libs/ardour/session_time.cc
index eef05e879a..42ae315597 100644
--- a/libs/ardour/session_time.cc
+++ b/libs/ardour/session_time.cc
@@ -32,9 +32,6 @@
#include "pbd/enumwriter.h"
#include "pbd/stacktrace.h"
-#include "ardour/ardour.h"
-#include "ardour/configuration.h"
-#include "ardour/audioengine.h"
#include "ardour/session.h"
#include "ardour/tempo.h"
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc
index ffcb7e8d24..5fef402d9f 100644
--- a/libs/ardour/session_transport.cc
+++ b/libs/ardour/session_transport.cc
@@ -17,14 +17,13 @@
*/
-#include <cmath>
-#include <cerrno>
-#include <unistd.h>
-
#ifdef WAF_BUILD
#include "libardour-config.h"
#endif
+#include <cmath>
+#include <cerrno>
+#include <unistd.h>
#include "pbd/undo.h"
#include "pbd/error.h"
@@ -36,7 +35,6 @@
#include "midi++/port.h"
#include "midi++/manager.h"
-#include "ardour/ardour.h"
#include "ardour/audioengine.h"
#include "ardour/auditioner.h"
#include "ardour/butler.h"
diff --git a/libs/ardour/smf_source.cc b/libs/ardour/smf_source.cc
index 52377ee915..1fd058dbd8 100644
--- a/libs/ardour/smf_source.cc
+++ b/libs/ardour/smf_source.cc
@@ -34,7 +34,6 @@
#include "evoral/Control.hpp"
-#include "ardour/audioengine.h"
#include "ardour/event_type_map.h"
#include "ardour/midi_model.h"
#include "ardour/midi_ring_buffer.h"
diff --git a/libs/ardour/sndfile_helpers.cc b/libs/ardour/sndfile_helpers.cc
index 07281e6901..459890e829 100644
--- a/libs/ardour/sndfile_helpers.cc
+++ b/libs/ardour/sndfile_helpers.cc
@@ -19,9 +19,6 @@
#include <strings.h>
#include <map>
-#include <vector>
-
-#include "pbd/convert.h"
#include <sndfile.h>
#include "ardour/sndfile_helpers.h"
diff --git a/libs/ardour/sndfilesource.cc b/libs/ardour/sndfilesource.cc
index f3f37fa2a1..0ec318a0ac 100644
--- a/libs/ardour/sndfilesource.cc
+++ b/libs/ardour/sndfilesource.cc
@@ -35,8 +35,6 @@
#include "ardour/sndfilesource.h"
#include "ardour/sndfile_helpers.h"
#include "ardour/utils.h"
-#include "ardour/version.h"
-#include "ardour/rc_configuration.h"
#include "ardour/session.h"
#include "i18n.h"
diff --git a/libs/ardour/strip_silence.cc b/libs/ardour/strip_silence.cc
index a5b115205a..3839b984bd 100644
--- a/libs/ardour/strip_silence.cc
+++ b/libs/ardour/strip_silence.cc
@@ -22,8 +22,6 @@
#include "ardour/strip_silence.h"
#include "ardour/audioregion.h"
#include "ardour/region_factory.h"
-#include "ardour/session.h"
-#include "ardour/dB.h"
#include "ardour/progress.h"
using namespace ARDOUR;
diff --git a/libs/ardour/tempo.cc b/libs/ardour/tempo.cc
index 798ced17b4..e64a116933 100644
--- a/libs/ardour/tempo.cc
+++ b/libs/ardour/tempo.cc
@@ -28,7 +28,6 @@
#include "evoral/types.hpp"
#include "ardour/debug.h"
#include "ardour/tempo.h"
-#include "ardour/utils.h"
#include "i18n.h"
#include <locale.h>
diff --git a/libs/ardour/tempo_map_importer.cc b/libs/ardour/tempo_map_importer.cc
index b170aea8ea..f0447b2f82 100644
--- a/libs/ardour/tempo_map_importer.cc
+++ b/libs/ardour/tempo_map_importer.cc
@@ -23,9 +23,8 @@
#include <sstream>
#include "ardour/session.h"
+#include "ardour/tempo.h"
#include "pbd/failed_constructor.h"
-#include "pbd/compose.h"
-#include "pbd/error.h"
#include "i18n.h"
diff --git a/libs/ardour/track.cc b/libs/ardour/track.cc
index c2750ccf98..9699558ff1 100644
--- a/libs/ardour/track.cc
+++ b/libs/ardour/track.cc
@@ -18,14 +18,12 @@
#include "pbd/error.h"
#include "ardour/amp.h"
-#include "ardour/audioplaylist.h"
-#include "ardour/audioregion.h"
-#include "ardour/audiosource.h"
#include "ardour/debug.h"
#include "ardour/delivery.h"
#include "ardour/diskstream.h"
#include "ardour/io_processor.h"
#include "ardour/meter.h"
+#include "ardour/playlist.h"
#include "ardour/port.h"
#include "ardour/processor.h"
#include "ardour/route_group_specialized.h"
diff --git a/libs/ardour/user_bundle.cc b/libs/ardour/user_bundle.cc
index b6c38e0eed..de71a87d86 100644
--- a/libs/ardour/user_bundle.cc
+++ b/libs/ardour/user_bundle.cc
@@ -1,13 +1,9 @@
-#include <cassert>
-#include "pbd/failed_constructor.h"
-#include "pbd/compose.h"
-#include "pbd/xml++.h"
#include "ardour/user_bundle.h"
-#include "ardour/port_set.h"
-#include "ardour/io.h"
-#include "ardour/session.h"
-#include "ardour/audioengine.h"
#include "i18n.h"
+#include "pbd/compose.h"
+#include "pbd/error.h"
+#include "pbd/failed_constructor.h"
+#include "pbd/xml++.h"
ARDOUR::UserBundle::UserBundle (std::string const & n)
: Bundle (n)