summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2020-08-03 12:34:15 +0200
committerDavid Robillard <d@drobilla.net>2020-08-03 12:34:15 +0200
commit5e3d6fd5cf29ce89741fdd5c61dfa62877d276d2 (patch)
tree8efa2c487c555850e61833b771cfc36056858975 /src
parent7f711e938900cc7ab714ebb5279d2312964a41b1 (diff)
downloadingen-5e3d6fd5cf29ce89741fdd5c61dfa62877d276d2.tar.gz
ingen-5e3d6fd5cf29ce89741fdd5c61dfa62877d276d2.tar.bz2
ingen-5e3d6fd5cf29ce89741fdd5c61dfa62877d276d2.zip
Clean up includes
As directed by include-what-you-use. Unfortunately, it is still confused by quite a few things, but this gets a lot closer to a clean report, and at least makes the output more tolerable to manually check.
Diffstat (limited to 'src')
-rw-r--r--src/AtomReader.cpp1
-rw-r--r--src/Parser.cpp2
-rw-r--r--src/SocketReader.cpp1
-rw-r--r--src/TurtleWriter.cpp2
-rw-r--r--src/client/ingen_client.cpp1
-rw-r--r--src/gui/ConnectWindow.cpp27
-rw-r--r--src/gui/ConnectWindow.hpp21
-rw-r--r--src/ingen/ingen.cpp7
-rw-r--r--src/server/BlockFactory.cpp1
-rw-r--r--src/server/BlockImpl.hpp4
-rw-r--r--src/server/Buffer.cpp2
-rw-r--r--src/server/ClientUpdate.cpp1
-rw-r--r--src/server/CompiledGraph.cpp2
-rw-r--r--src/server/ControlBindings.cpp1
-rw-r--r--src/server/ControlBindings.hpp2
-rw-r--r--src/server/DuplexPort.cpp1
-rw-r--r--src/server/DuplexPort.hpp1
-rw-r--r--src/server/Engine.cpp12
-rw-r--r--src/server/GraphImpl.cpp6
-rw-r--r--src/server/GraphImpl.hpp9
-rw-r--r--src/server/InputPort.cpp1
-rw-r--r--src/server/InternalBlock.hpp5
-rw-r--r--src/server/InternalPlugin.cpp1
-rw-r--r--src/server/InternalPlugin.hpp4
-rw-r--r--src/server/JackDriver.cpp15
-rw-r--r--src/server/JackDriver.hpp15
-rw-r--r--src/server/LV2Block.cpp9
-rw-r--r--src/server/LV2Block.hpp16
-rw-r--r--src/server/NodeImpl.cpp2
-rw-r--r--src/server/PortAudioDriver.hpp2
-rw-r--r--src/server/PortImpl.cpp3
-rw-r--r--src/server/PortImpl.hpp13
-rw-r--r--src/server/RunContext.cpp4
-rw-r--r--src/server/SocketListener.cpp2
-rw-r--r--src/server/UndoStack.cpp1
-rw-r--r--src/server/Worker.cpp2
-rw-r--r--src/server/Worker.hpp3
-rw-r--r--src/server/events/Connect.cpp5
-rw-r--r--src/server/events/Connect.hpp8
-rw-r--r--src/server/events/Copy.cpp5
-rw-r--r--src/server/events/Copy.hpp7
-rw-r--r--src/server/events/CreateBlock.cpp14
-rw-r--r--src/server/events/CreateBlock.hpp9
-rw-r--r--src/server/events/CreateGraph.cpp9
-rw-r--r--src/server/events/CreateGraph.hpp9
-rw-r--r--src/server/events/CreatePort.cpp6
-rw-r--r--src/server/events/CreatePort.hpp8
-rw-r--r--src/server/events/Delete.cpp12
-rw-r--r--src/server/events/Delete.hpp10
-rw-r--r--src/server/events/Delta.cpp11
-rw-r--r--src/server/events/Delta.hpp14
-rw-r--r--src/server/events/Disconnect.cpp15
-rw-r--r--src/server/events/Disconnect.hpp8
-rw-r--r--src/server/events/DisconnectAll.cpp8
-rw-r--r--src/server/events/DisconnectAll.hpp14
-rw-r--r--src/server/events/Get.cpp7
-rw-r--r--src/server/events/Get.hpp12
-rw-r--r--src/server/events/Mark.cpp6
-rw-r--r--src/server/events/Mark.hpp8
-rw-r--r--src/server/events/Move.cpp14
-rw-r--r--src/server/events/Move.hpp12
-rw-r--r--src/server/events/SetPortValue.cpp6
-rw-r--r--src/server/events/SetPortValue.hpp6
-rw-r--r--src/server/events/Undo.cpp4
-rw-r--r--src/server/events/Undo.hpp10
-rw-r--r--src/server/ingen_engine.cpp1
-rw-r--r--src/server/ingen_jack.cpp9
-rw-r--r--src/server/internals/BlockDelay.cpp5
-rw-r--r--src/server/internals/BlockDelay.hpp13
-rw-r--r--src/server/internals/Controller.cpp16
-rw-r--r--src/server/internals/Controller.hpp13
-rw-r--r--src/server/internals/Note.cpp11
-rw-r--r--src/server/internals/Note.hpp13
-rw-r--r--src/server/internals/Time.cpp16
-rw-r--r--src/server/internals/Time.hpp14
-rw-r--r--src/server/internals/Trigger.cpp16
-rw-r--r--src/server/internals/Trigger.hpp13
-rw-r--r--src/server/mix.cpp2
78 files changed, 519 insertions, 82 deletions
diff --git a/src/AtomReader.cpp b/src/AtomReader.cpp
index 77b4740d..f42b2973 100644
--- a/src/AtomReader.cpp
+++ b/src/AtomReader.cpp
@@ -28,7 +28,6 @@
#include "ingen/paths.hpp"
#include "lv2/atom/atom.h"
#include "lv2/atom/util.h"
-#include "lv2/urid/urid.h"
#include "raul/Path.hpp"
#include <boost/optional/optional.hpp>
diff --git a/src/Parser.cpp b/src/Parser.cpp
index 1b86285a..7a3f594c 100644
--- a/src/Parser.cpp
+++ b/src/Parser.cpp
@@ -30,9 +30,7 @@
#include "ingen/filesystem.hpp"
#include "ingen/paths.hpp"
#include "lv2/atom/atom.h"
-#include "lv2/atom/forge.h"
#include "lv2/core/lv2.h"
-#include "lv2/urid/urid.h"
#include "raul/Path.hpp"
#include "raul/Symbol.hpp"
#include "serd/serd.h"
diff --git a/src/SocketReader.cpp b/src/SocketReader.cpp
index 28ad9bbf..11bc0b0c 100644
--- a/src/SocketReader.cpp
+++ b/src/SocketReader.cpp
@@ -27,7 +27,6 @@
#include <cerrno>
#include <cstdint>
-#include <cstdio>
#include <memory>
#include <mutex>
#include <poll.h>
diff --git a/src/TurtleWriter.cpp b/src/TurtleWriter.cpp
index 53af79f0..07e06afe 100644
--- a/src/TurtleWriter.cpp
+++ b/src/TurtleWriter.cpp
@@ -19,6 +19,8 @@
#include "ingen/URIMap.hpp"
#include "lv2/atom/atom.h"
+#include <utility>
+
#define USTR(s) reinterpret_cast<const uint8_t*>(s)
namespace ingen {
diff --git a/src/client/ingen_client.cpp b/src/client/ingen_client.cpp
index f76fae0b..c6c49080 100644
--- a/src/client/ingen_client.cpp
+++ b/src/client/ingen_client.cpp
@@ -16,7 +16,6 @@
#include "ingen/Module.hpp"
#include "ingen/World.hpp"
-#include "ingen_config.h"
struct IngenClientModule : public ingen::Module {
void load(ingen::World& world) override {}
diff --git a/src/gui/ConnectWindow.cpp b/src/gui/ConnectWindow.cpp
index 1afc8c6c..ea6c80d6 100644
--- a/src/gui/ConnectWindow.cpp
+++ b/src/gui/ConnectWindow.cpp
@@ -17,29 +17,56 @@
#include "ConnectWindow.hpp"
#include "App.hpp"
+#include "Window.hpp"
#include "WindowFactory.hpp"
+#include "ingen/Atom.hpp"
#include "ingen/Configuration.hpp"
#include "ingen/EngineBase.hpp"
+#include "ingen/Forge.hpp"
#include "ingen/Interface.hpp"
#include "ingen/Log.hpp"
#include "ingen/Module.hpp"
#include "ingen/QueuedInterface.hpp"
+#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
#include "ingen/client/ClientStore.hpp"
#include "ingen/client/GraphModel.hpp"
#include "ingen/client/SigClientInterface.hpp"
#include "ingen/client/SocketClient.hpp"
+#include "ingen/fmt.hpp"
+#include "ingen/paths.hpp"
#include "ingen_config.h"
+#include "raul/Path.hpp"
#include "raul/Process.hpp"
+#include <boost/format/alt_sstream.hpp>
+#include <boost/optional/optional.hpp>
#include <boost/variant/get.hpp>
#include <glib.h>
+#include <glibmm/main.h>
+#include <glibmm/signalproxy.h>
+#include <glibmm/ustring.h>
+#include <gtkmm/builder.h>
+#include <gtkmm/button.h>
+#include <gtkmm/entry.h>
+#include <gtkmm/enums.h>
+#include <gtkmm/image.h>
+#include <gtkmm/label.h>
+#include <gtkmm/main.h>
+#include <gtkmm/progressbar.h>
+#include <gtkmm/radiobutton.h>
+#include <gtkmm/spinbutton.h>
#include <gtkmm/stock.h>
+#include <sigc++/adaptors/bind.h>
+#include <sigc++/functors/mem_fun.h>
+#include <sigc++/signal.h>
#include <limits>
#include <memory>
+#include <ostream>
#include <string>
+#include <sys/time.h>
#include <utility>
using namespace ingen::client;
diff --git a/src/gui/ConnectWindow.hpp b/src/gui/ConnectWindow.hpp
index 6d0b6f5a..0eaf7bb3 100644
--- a/src/gui/ConnectWindow.hpp
+++ b/src/gui/ConnectWindow.hpp
@@ -20,21 +20,24 @@
#include "Window.hpp"
#include "ingen/Message.hpp"
-#include "lilv/lilv.h"
-#include <gtkmm/builder.h>
-#include <gtkmm/button.h>
-#include <gtkmm/entry.h>
-#include <gtkmm/image.h>
-#include <gtkmm/label.h>
-#include <gtkmm/progressbar.h>
-#include <gtkmm/radiobutton.h>
-#include <gtkmm/spinbutton.h>
+#include <glibmm/refptr.h>
#include <cstdint>
#include <memory>
#include <string>
+namespace Gtk {
+class Builder;
+class Button;
+class Entry;
+class Image;
+class Label;
+class ProgressBar;
+class RadioButton;
+class SpinButton;
+} // namespace Gtk
+
namespace ingen {
class Interface;
diff --git a/src/ingen/ingen.cpp b/src/ingen/ingen.cpp
index bdba2389..29aad4ce 100644
--- a/src/ingen/ingen.cpp
+++ b/src/ingen/ingen.cpp
@@ -14,17 +14,22 @@
along with Ingen. If not, see <http://www.gnu.org/licenses/>.
*/
+#include "ingen/Atom.hpp"
#include "ingen/Configuration.hpp"
#include "ingen/EngineBase.hpp"
+#include "ingen/FilePath.hpp"
#include "ingen/Interface.hpp"
-#include "ingen/Log.hpp"
+#include "ingen/Message.hpp"
#include "ingen/Parser.hpp"
+#include "ingen/URI.hpp"
#include "ingen/World.hpp"
+#include "ingen/fmt.hpp"
#include "ingen/paths.hpp"
#include "ingen/runtime_paths.hpp"
#include "ingen_config.h"
#include "raul/Path.hpp"
#include "raul/Symbol.hpp"
+#include "serd/serd.h"
#ifdef HAVE_SOCKET
#include "ingen/client/SocketClient.hpp"
diff --git a/src/server/BlockFactory.cpp b/src/server/BlockFactory.cpp
index e9c218d9..bcb26971 100644
--- a/src/server/BlockFactory.cpp
+++ b/src/server/BlockFactory.cpp
@@ -33,7 +33,6 @@
#include "internals/Trigger.hpp"
#include "lilv/lilv.h"
-#include <algorithm>
#include <cstdint>
#include <memory>
#include <utility>
diff --git a/src/server/BlockImpl.hpp b/src/server/BlockImpl.hpp
index 674675a5..a5f5963a 100644
--- a/src/server/BlockImpl.hpp
+++ b/src/server/BlockImpl.hpp
@@ -24,7 +24,6 @@
#include "ingen/Node.hpp"
#include "ingen/Properties.hpp"
-#include "ingen/Resource.hpp"
#include "ingen/URI.hpp"
#include "lilv/lilv.h"
#include "lv2/urid/urid.h"
@@ -43,6 +42,9 @@ class Symbol;
} // namespace Raul
namespace ingen {
+
+class Resource;
+
namespace server {
class BufferFactory;
diff --git a/src/server/Buffer.cpp b/src/server/Buffer.cpp
index 4823753b..36dfaf19 100644
--- a/src/server/Buffer.cpp
+++ b/src/server/Buffer.cpp
@@ -26,10 +26,10 @@
#include "ingen_config.h"
#include "lv2/atom/atom.h"
#include "lv2/atom/util.h"
+#include "lv2/urid/urid.h"
#include <algorithm>
#include <cstdint>
-#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <new>
diff --git a/src/server/ClientUpdate.cpp b/src/server/ClientUpdate.cpp
index 8af3407a..41a4cd2e 100644
--- a/src/server/ClientUpdate.cpp
+++ b/src/server/ClientUpdate.cpp
@@ -24,7 +24,6 @@
#include "PortType.hpp"
#include "ingen/Arc.hpp"
-#include "ingen/Atom.hpp"
#include "ingen/Forge.hpp"
#include "ingen/Interface.hpp"
#include "ingen/Node.hpp"
diff --git a/src/server/CompiledGraph.cpp b/src/server/CompiledGraph.cpp
index 75cdf0a8..c353859e 100644
--- a/src/server/CompiledGraph.cpp
+++ b/src/server/CompiledGraph.cpp
@@ -21,11 +21,13 @@
#include "GraphImpl.hpp"
#include "ThreadManager.hpp"
+#include "ingen/Atom.hpp"
#include "ingen/ColorContext.hpp"
#include "ingen/Configuration.hpp"
#include "ingen/Log.hpp"
#include "ingen/World.hpp"
#include "raul/Maid.hpp"
+#include "raul/Path.hpp"
#include <algorithm>
#include <cassert>
diff --git a/src/server/ControlBindings.cpp b/src/server/ControlBindings.cpp
index 24d8ad54..d3425534 100644
--- a/src/server/ControlBindings.cpp
+++ b/src/server/ControlBindings.cpp
@@ -36,6 +36,7 @@
#include "lv2/urid/urid.h"
#include "raul/Path.hpp"
+#include <algorithm>
#include <cmath>
#include <cstring>
#include <string>
diff --git a/src/server/ControlBindings.hpp b/src/server/ControlBindings.hpp
index 0f67bcb3..26563749 100644
--- a/src/server/ControlBindings.hpp
+++ b/src/server/ControlBindings.hpp
@@ -28,7 +28,7 @@
#include <atomic>
#include <cstdint>
-#include <utility>
+#include <memory>
#include <vector>
namespace Raul { class Path; }
diff --git a/src/server/DuplexPort.cpp b/src/server/DuplexPort.cpp
index f7dd321b..8c6c72c8 100644
--- a/src/server/DuplexPort.cpp
+++ b/src/server/DuplexPort.cpp
@@ -29,6 +29,7 @@
#include "ingen/Node.hpp"
#include "ingen/Properties.hpp"
#include "ingen/URIs.hpp"
+#include "lv2/urid/urid.h"
#include "raul/Array.hpp"
#include "raul/Maid.hpp"
diff --git a/src/server/DuplexPort.hpp b/src/server/DuplexPort.hpp
index c7099d0f..9bd88c1e 100644
--- a/src/server/DuplexPort.hpp
+++ b/src/server/DuplexPort.hpp
@@ -23,6 +23,7 @@
#include "types.hpp"
#include "ingen/URI.hpp"
+#include "ingen/ingen.h"
#include "lv2/urid/urid.h"
#include "raul/Maid.hpp"
diff --git a/src/server/Engine.cpp b/src/server/Engine.cpp
index 2c7c001f..2d0c2198 100644
--- a/src/server/Engine.cpp
+++ b/src/server/Engine.cpp
@@ -34,24 +34,36 @@
#include "Worker.hpp"
#include "events/CreateGraph.hpp"
#include "ingen_config.h"
+#include "BufferRef.hpp"
+#include "NodeImpl.hpp"
+#include "PortImpl.hpp"
+#include "Task.hpp"
#ifdef HAVE_SOCKET
#include "SocketListener.hpp"
#endif
+#include "ingen/Atom.hpp"
#include "ingen/AtomReader.hpp"
+#include "ingen/ColorContext.hpp"
#include "ingen/Configuration.hpp"
#include "ingen/Forge.hpp"
+#include "ingen/Interface.hpp"
+#include "ingen/LV2Features.hpp"
#include "ingen/Log.hpp"
+#include "ingen/Resource.hpp"
#include "ingen/Store.hpp"
#include "ingen/StreamWriter.hpp"
#include "ingen/Tee.hpp"
+#include "ingen/URI.hpp"
#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
#include "ingen/memory.hpp"
#include "lv2/buf-size/buf-size.h"
#include "lv2/state/state.h"
#include "raul/Maid.hpp"
+#include "raul/Path.hpp"
+#include "raul/RingBuffer.hpp"
#include <algorithm>
#include <cmath>
diff --git a/src/server/GraphImpl.cpp b/src/server/GraphImpl.cpp
index 728337cd..6281681f 100644
--- a/src/server/GraphImpl.cpp
+++ b/src/server/GraphImpl.cpp
@@ -23,13 +23,19 @@
#include "DuplexPort.hpp"
#include "Engine.hpp"
#include "GraphPlugin.hpp"
+#include "InputPort.hpp"
+#include "PluginImpl.hpp"
#include "PortImpl.hpp"
#include "ThreadManager.hpp"
#include "ingen/Forge.hpp"
+#include "ingen/Properties.hpp"
#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
+#include "lv2/urid/urid.h"
+#include "raul/Array.hpp"
#include "raul/Maid.hpp"
+#include "raul/Symbol.hpp"
#include <cassert>
#include <cstddef>
diff --git a/src/server/GraphImpl.hpp b/src/server/GraphImpl.hpp
index 468cc865..48357f97 100644
--- a/src/server/GraphImpl.hpp
+++ b/src/server/GraphImpl.hpp
@@ -20,7 +20,9 @@
#include "BlockImpl.hpp"
#include "DuplexPort.hpp"
#include "ThreadManager.hpp"
+#include "types.hpp"
+#include "ingen/Node.hpp"
#include "lv2/urid/urid.h"
#include "raul/Maid.hpp"
@@ -29,14 +31,19 @@
#include <memory>
#include <utility>
-namespace Raul { class Maid; }
+namespace Raul {
+class Maid;
+class Symbol;
+} // namespace Raul
namespace ingen {
namespace server {
class ArcImpl;
+class BufferFactory;
class CompiledGraph;
class Engine;
+class PortImpl;
class RunContext;
/** A group of blocks in a graph, possibly polyphonic.
diff --git a/src/server/InputPort.cpp b/src/server/InputPort.cpp
index b66bc61d..10cc9dd4 100644
--- a/src/server/InputPort.cpp
+++ b/src/server/InputPort.cpp
@@ -29,6 +29,7 @@
#include "ingen/Atom.hpp"
#include "ingen/Node.hpp"
#include "ingen/URIs.hpp"
+#include "lv2/urid/urid.h"
#include "raul/Array.hpp"
#include "raul/Maid.hpp"
diff --git a/src/server/InternalBlock.hpp b/src/server/InternalBlock.hpp
index 7e2e3fed..a7243707 100644
--- a/src/server/InternalBlock.hpp
+++ b/src/server/InternalBlock.hpp
@@ -18,6 +18,11 @@
#define INGEN_ENGINE_INTERNALBLOCK_HPP
#include "BlockImpl.hpp"
+#include "types.hpp"
+
+namespace Raul {
+class Symbol;
+} // namespace Raul
namespace ingen {
namespace server {
diff --git a/src/server/InternalPlugin.cpp b/src/server/InternalPlugin.cpp
index be63fa70..47129c99 100644
--- a/src/server/InternalPlugin.cpp
+++ b/src/server/InternalPlugin.cpp
@@ -22,6 +22,7 @@
#include "internals/Note.hpp"
#include "internals/Time.hpp"
#include "internals/Trigger.hpp"
+#include "types.hpp"
#include "ingen/URIs.hpp"
diff --git a/src/server/InternalPlugin.hpp b/src/server/InternalPlugin.hpp
index d96ea86a..6d3fcca6 100644
--- a/src/server/InternalPlugin.hpp
+++ b/src/server/InternalPlugin.hpp
@@ -17,12 +17,12 @@
#ifndef INGEN_ENGINE_INTERNALPLUGIN_HPP
#define INGEN_ENGINE_INTERNALPLUGIN_HPP
+#include "PluginImpl.hpp"
+
#include "ingen/URI.hpp"
#include "lilv/lilv.h"
#include "raul/Symbol.hpp"
-#include "PluginImpl.hpp"
-
#define NS_INTERNALS "http://drobilla.net/ns/ingen-internals#"
namespace ingen {
diff --git a/src/server/JackDriver.cpp b/src/server/JackDriver.cpp
index 969961cd..e554c4e2 100644
--- a/src/server/JackDriver.cpp
+++ b/src/server/JackDriver.cpp
@@ -17,23 +17,31 @@
#include "JackDriver.hpp"
#include "Buffer.hpp"
+#include "BufferFactory.hpp"
+#include "BufferRef.hpp"
#include "DuplexPort.hpp"
#include "Engine.hpp"
#include "GraphImpl.hpp"
-#include "PortImpl.hpp"
+#include "PortType.hpp"
+#include "RunContext.hpp"
#include "ThreadManager.hpp"
#include "ingen_config.h"
#include "util.hpp"
+#include "ingen/Atom.hpp"
#include "ingen/Configuration.hpp"
-#include "ingen/LV2Features.hpp"
#include "ingen/Log.hpp"
+#include "ingen/Properties.hpp"
#include "ingen/URI.hpp"
#include "ingen/URIMap.hpp"
+#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
#include "ingen/fmt.hpp"
#include "ingen/memory.hpp"
+#include "lv2/atom/atom.h"
+#include "lv2/atom/forge.h"
#include "lv2/atom/util.h"
+#include "raul/Path.hpp"
#include <jack/midiport.h>
@@ -58,6 +66,9 @@
using jack_sample_t = jack_default_audio_sample_t;
namespace ingen {
+
+class Node;
+
namespace server {
JackDriver::JackDriver(Engine& engine)
diff --git a/src/server/JackDriver.hpp b/src/server/JackDriver.hpp
index 8f5cead5..d80463be 100644
--- a/src/server/JackDriver.hpp
+++ b/src/server/JackDriver.hpp
@@ -20,7 +20,9 @@
#include "Driver.hpp"
#include "EnginePort.hpp"
#include "ingen_config.h"
+#include "types.hpp"
+#include "ingen/URI.hpp"
#include "ingen/memory.hpp"
#include "lv2/atom/forge.h"
#include "raul/Semaphore.hpp"
@@ -28,6 +30,7 @@
#include <jack/jack.h>
#include <jack/thread.h>
#include <jack/transport.h>
+#include <jack/types.h>
#ifdef INGEN_JACK_SESSION
#include <jack/session.h>
#endif
@@ -38,16 +41,20 @@
#include <memory>
#include <string>
-namespace Raul { class Path; }
+namespace Raul {
+class Path;
+} // namespace Raul
namespace ingen {
+
+class Atom;
+
namespace server {
+class Buffer;
class DuplexPort;
class Engine;
-class GraphImpl;
-class JackDriver;
-class PortImpl;
+class RunContext;
/** The Jack Driver.
*
diff --git a/src/server/LV2Block.cpp b/src/server/LV2Block.cpp
index fb1e3192..3d180360 100644
--- a/src/server/LV2Block.cpp
+++ b/src/server/LV2Block.cpp
@@ -15,6 +15,7 @@
*/
#include "Buffer.hpp"
+#include "BufferFactory.hpp"
#include "Engine.hpp"
#include "GraphImpl.hpp"
#include "InputPort.hpp"
@@ -22,20 +23,28 @@
#include "LV2Plugin.hpp"
#include "OutputPort.hpp"
#include "PortImpl.hpp"
+#include "PortType.hpp"
#include "RunContext.hpp"
#include "Worker.hpp"
+#include "ingen/Atom.hpp"
#include "ingen/FilePath.hpp"
#include "ingen/Forge.hpp"
#include "ingen/Log.hpp"
+#include "ingen/Resource.hpp"
#include "ingen/URI.hpp"
#include "ingen/URIMap.hpp"
#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
+#include "lv2/core/lv2.h"
#include "lv2/options/options.h"
#include "lv2/state/state.h"
+#include "lv2/urid/urid.h"
+#include "lv2/worker/worker.h"
#include "raul/Array.hpp"
#include "raul/Maid.hpp"
+#include "raul/Path.hpp"
+#include "raul/Symbol.hpp"
#include <algorithm>
#include <cassert>
diff --git a/src/server/LV2Block.hpp b/src/server/LV2Block.hpp
index 3cd6b056..7a0a86ac 100644
--- a/src/server/LV2Block.hpp
+++ b/src/server/LV2Block.hpp
@@ -22,6 +22,8 @@
#include "types.hpp"
#include "ingen/LV2Features.hpp"
+#include "ingen/Properties.hpp"
+#include "ingen/URI.hpp"
#include "lilv/lilv.h"
#include "lv2/worker/worker.h"
#include "raul/Array.hpp"
@@ -29,6 +31,8 @@
#include "raul/Noncopyable.hpp"
#include <boost/intrusive/slist.hpp>
+#include <boost/intrusive/slist_hook.hpp>
+#include <boost/optional/optional.hpp>
#include <cstdint>
#include <cstdlib>
@@ -36,13 +40,25 @@
#include <memory>
#include <mutex>
+namespace Raul {
+class Symbol;
+} // namespace Raul
+
namespace ingen {
class FilePath;
+class Resource;
+class URIs;
+class World;
namespace server {
+class BufferFactory;
+class Engine;
+class GraphImpl;
class LV2Plugin;
+class RunContext;
+class Worker;
/** An instance of a LV2 plugin.
*
diff --git a/src/server/NodeImpl.cpp b/src/server/NodeImpl.cpp
index 7d13f07f..e72aa50a 100644
--- a/src/server/NodeImpl.cpp
+++ b/src/server/NodeImpl.cpp
@@ -27,8 +27,6 @@
#include <map>
#include <utility>
-namespace Raul { class Symbol; }
-
namespace ingen {
namespace server {
diff --git a/src/server/PortAudioDriver.hpp b/src/server/PortAudioDriver.hpp
index eb56240d..6b259703 100644
--- a/src/server/PortAudioDriver.hpp
+++ b/src/server/PortAudioDriver.hpp
@@ -19,11 +19,9 @@
#include "Driver.hpp"
#include "EnginePort.hpp"
-#include "ingen_config.h"
#include "types.hpp"
#include "ingen/URI.hpp"
-#include "lv2/atom/forge.h"
#include "raul/Semaphore.hpp"
#include <portaudio.h>
diff --git a/src/server/PortImpl.cpp b/src/server/PortImpl.cpp
index a7c7ae02..6ca7b88f 100644
--- a/src/server/PortImpl.cpp
+++ b/src/server/PortImpl.cpp
@@ -26,9 +26,12 @@
#include "ingen/Forge.hpp"
#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
+#include "lv2/atom/atom.h"
#include "lv2/atom/util.h"
+#include "lv2/urid/urid.h"
#include "raul/Array.hpp"
#include "raul/Maid.hpp"
+#include "raul/Path.hpp"
#include <algorithm>
#include <cassert>
diff --git a/src/server/PortImpl.hpp b/src/server/PortImpl.hpp
index 0c21cd21..b5e81c5c 100644
--- a/src/server/PortImpl.hpp
+++ b/src/server/PortImpl.hpp
@@ -24,6 +24,10 @@
#include "types.hpp"
#include "ingen/Atom.hpp"
+#include "ingen/Node.hpp"
+#include "ingen/URIs.hpp"
+#include "ingen/ingen.h"
+#include "lv2/urid/urid.h"
#include "raul/Array.hpp"
#include "raul/Maid.hpp"
@@ -31,11 +35,20 @@
#include <cstdint>
#include <cstdlib>
#include <memory>
+#include <utility>
+
+namespace Raul {
+class Symbol;
+} // namespace Raul
namespace ingen {
+
+class Properties;
+
namespace server {
class BlockImpl;
+class BufferFactory;
/** A port (input or output) on a Block.
*
diff --git a/src/server/RunContext.cpp b/src/server/RunContext.cpp
index 41d383cc..c5cd5f3f 100644
--- a/src/server/RunContext.cpp
+++ b/src/server/RunContext.cpp
@@ -22,10 +22,14 @@
#include "PortImpl.hpp"
#include "Task.hpp"
+#include "ingen/Atom.hpp"
#include "ingen/Forge.hpp"
#include "ingen/Log.hpp"
+#include "ingen/URI.hpp"
#include "ingen/URIMap.hpp"
+#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
+#include "lv2/urid/urid.h"
#include "raul/RingBuffer.hpp"
#include <cerrno>
diff --git a/src/server/SocketListener.cpp b/src/server/SocketListener.cpp
index 9d8d461d..8492bf8a 100644
--- a/src/server/SocketListener.cpp
+++ b/src/server/SocketListener.cpp
@@ -19,8 +19,10 @@
#include "Engine.hpp"
#include "SocketServer.hpp"
+#include "ingen/Atom.hpp"
#include "ingen/Configuration.hpp"
#include "ingen/Log.hpp"
+#include "ingen/URI.hpp"
#include "ingen/World.hpp"
#include "raul/Socket.hpp"
diff --git a/src/server/UndoStack.cpp b/src/server/UndoStack.cpp
index 82527d12..97539823 100644
--- a/src/server/UndoStack.cpp
+++ b/src/server/UndoStack.cpp
@@ -21,7 +21,6 @@
#include "lv2/atom/atom.h"
#include "lv2/atom/util.h"
#include "lv2/patch/patch.h"
-#include "lv2/urid/urid.h"
#include "serd/serd.h"
#include "sratom/sratom.h"
diff --git a/src/server/Worker.cpp b/src/server/Worker.cpp
index a0747ae8..8e8f3e5e 100644
--- a/src/server/Worker.cpp
+++ b/src/server/Worker.cpp
@@ -21,7 +21,9 @@
#include "LV2Block.hpp"
#include "ingen/Log.hpp"
+#include "ingen/Node.hpp"
#include "ingen/memory.hpp"
+#include "lv2/core/lv2.h"
#include "lv2/worker/worker.h"
#include <cstdlib>
diff --git a/src/server/Worker.hpp b/src/server/Worker.hpp
index 7d5c1f02..02533298 100644
--- a/src/server/Worker.hpp
+++ b/src/server/Worker.hpp
@@ -18,6 +18,7 @@
#define INGEN_ENGINE_WORKER_HPP
#include "ingen/LV2Features.hpp"
+#include "lv2/core/lv2.h"
#include "lv2/worker/worker.h"
#include "raul/RingBuffer.hpp"
#include "raul/Semaphore.hpp"
@@ -29,6 +30,8 @@
namespace ingen {
class Log;
+class Node;
+class World;
namespace server {
diff --git a/src/server/events/Connect.cpp b/src/server/events/Connect.cpp
index 444bd4b7..60c1ce24 100644
--- a/src/server/events/Connect.cpp
+++ b/src/server/events/Connect.cpp
@@ -17,6 +17,7 @@
#include "Connect.hpp"
#include "ArcImpl.hpp"
+#include "BlockImpl.hpp"
#include "Broadcaster.hpp"
#include "BufferFactory.hpp"
#include "Engine.hpp"
@@ -27,7 +28,11 @@
#include "internals/BlockDelay.hpp"
#include "types.hpp"
+#include "ingen/Interface.hpp"
+#include "ingen/Node.hpp"
+#include "ingen/Status.hpp"
#include "ingen/Store.hpp"
+#include "ingen/paths.hpp"
#include "raul/Maid.hpp"
#include <cassert>
diff --git a/src/server/events/Connect.hpp b/src/server/events/Connect.hpp
index 80b8563c..ba53b8d3 100644
--- a/src/server/events/Connect.hpp
+++ b/src/server/events/Connect.hpp
@@ -22,16 +22,24 @@
#include "PortImpl.hpp"
#include "types.hpp"
+#include "ingen/Message.hpp"
+#include "ingen/Properties.hpp"
#include "raul/Maid.hpp"
#include <memory>
namespace ingen {
+
+class Interface;
+
namespace server {
class ArcImpl;
+class Engine;
class GraphImpl;
class InputPort;
+class PreProcessContext;
+class RunContext;
namespace events {
diff --git a/src/server/events/Copy.cpp b/src/server/events/Copy.cpp
index d57849b2..37211ee8 100644
--- a/src/server/events/Copy.cpp
+++ b/src/server/events/Copy.cpp
@@ -22,11 +22,16 @@
#include "GraphImpl.hpp"
#include "PreProcessContext.hpp"
+#include "ingen/Interface.hpp"
#include "ingen/Parser.hpp"
#include "ingen/Serialiser.hpp"
+#include "ingen/Status.hpp"
#include "ingen/Store.hpp"
+#include "ingen/URI.hpp"
#include "ingen/World.hpp"
+#include "ingen/paths.hpp"
#include "raul/Path.hpp"
+#include "raul/Symbol.hpp"
#include <memory>
#include <mutex>
diff --git a/src/server/events/Copy.hpp b/src/server/events/Copy.hpp
index dbe6a29b..5cff71c3 100644
--- a/src/server/events/Copy.hpp
+++ b/src/server/events/Copy.hpp
@@ -19,17 +19,24 @@
#include "CompiledGraph.hpp"
#include "Event.hpp"
+#include "types.hpp"
+#include "ingen/Message.hpp"
#include "raul/Maid.hpp"
#include <memory>
namespace ingen {
+
+class Interface;
+
namespace server {
class BlockImpl;
class Engine;
class GraphImpl;
+class PreProcessContext;
+class RunContext;
namespace events {
diff --git a/src/server/events/CreateBlock.cpp b/src/server/events/CreateBlock.cpp
index c443645a..712a9966 100644
--- a/src/server/events/CreateBlock.cpp
+++ b/src/server/events/CreateBlock.cpp
@@ -24,19 +24,33 @@
#include "LV2Block.hpp"
#include "PluginImpl.hpp"
#include "PreProcessContext.hpp"
+#include "types.hpp"
+#include "ingen/FilePath.hpp"
#include "ingen/Forge.hpp"
+#include "ingen/Interface.hpp"
+#include "ingen/Node.hpp"
+#include "ingen/Properties.hpp"
+#include "ingen/Resource.hpp"
+#include "ingen/Status.hpp"
#include "ingen/Store.hpp"
+#include "ingen/URI.hpp"
#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
+#include "ingen/paths.hpp"
+#include "lilv/lilv.h"
#include "raul/Maid.hpp"
#include "raul/Path.hpp"
+#include "raul/Symbol.hpp"
#include <memory>
#include <utility>
namespace ingen {
namespace server {
+
+class RunContext;
+
namespace events {
CreateBlock::CreateBlock(Engine& engine,
diff --git a/src/server/events/CreateBlock.hpp b/src/server/events/CreateBlock.hpp
index 91ccee1b..872e4612 100644
--- a/src/server/events/CreateBlock.hpp
+++ b/src/server/events/CreateBlock.hpp
@@ -20,17 +20,26 @@
#include "ClientUpdate.hpp"
#include "CompiledGraph.hpp"
#include "Event.hpp"
+#include "types.hpp"
#include "raul/Maid.hpp"
+#include "raul/Path.hpp"
#include <cstdint>
#include <memory>
namespace ingen {
+
+class Interface;
+class Properties;
+
namespace server {
class BlockImpl;
+class Engine;
class GraphImpl;
+class PreProcessContext;
+class RunContext;
namespace events {
diff --git a/src/server/events/CreateGraph.cpp b/src/server/events/CreateGraph.cpp
index 1b04482f..db90c433 100644
--- a/src/server/events/CreateGraph.cpp
+++ b/src/server/events/CreateGraph.cpp
@@ -16,19 +16,28 @@
#include "events/CreateGraph.hpp"
+#include "BlockImpl.hpp"
#include "Broadcaster.hpp"
#include "Engine.hpp"
#include "GraphImpl.hpp"
#include "PreProcessContext.hpp"
#include "events/CreatePort.hpp"
+#include "types.hpp"
#include "ingen/Forge.hpp"
+#include "ingen/Interface.hpp"
+#include "ingen/Node.hpp"
+#include "ingen/Resource.hpp"
+#include "ingen/Status.hpp"
#include "ingen/Store.hpp"
+#include "ingen/URI.hpp"
#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
#include "ingen/memory.hpp"
+#include "ingen/paths.hpp"
#include "raul/Maid.hpp"
#include "raul/Path.hpp"
+#include "raul/Symbol.hpp"
#include <memory>
#include <utility>
diff --git a/src/server/events/CreateGraph.hpp b/src/server/events/CreateGraph.hpp
index 0643d8be..2523e4b8 100644
--- a/src/server/events/CreateGraph.hpp
+++ b/src/server/events/CreateGraph.hpp
@@ -20,17 +20,26 @@
#include "ClientUpdate.hpp"
#include "CompiledGraph.hpp"
#include "Event.hpp"
+#include "types.hpp"
+#include "ingen/Properties.hpp"
#include "raul/Maid.hpp"
+#include "raul/Path.hpp"
#include <cstdint>
#include <list>
#include <memory>
namespace ingen {
+
+class Interface;
+
namespace server {
+class Engine;
class GraphImpl;
+class PreProcessContext;
+class RunContext;
namespace events {
diff --git a/src/server/events/CreatePort.cpp b/src/server/events/CreatePort.cpp
index d164b541..7c3b08f3 100644
--- a/src/server/events/CreatePort.cpp
+++ b/src/server/events/CreatePort.cpp
@@ -26,13 +26,19 @@
#include "ingen/Atom.hpp"
#include "ingen/Forge.hpp"
+#include "ingen/Interface.hpp"
+#include "ingen/Node.hpp"
+#include "ingen/Status.hpp"
#include "ingen/Store.hpp"
+#include "ingen/URI.hpp"
#include "ingen/URIMap.hpp"
#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
+#include "ingen/paths.hpp"
#include "raul/Array.hpp"
#include "raul/Maid.hpp"
#include "raul/Path.hpp"
+#include "raul/Symbol.hpp"
#include <cassert>
#include <memory>
diff --git a/src/server/events/CreatePort.hpp b/src/server/events/CreatePort.hpp
index f1b278d5..196ca5b9 100644
--- a/src/server/events/CreatePort.hpp
+++ b/src/server/events/CreatePort.hpp
@@ -20,7 +20,9 @@
#include "BlockImpl.hpp"
#include "Event.hpp"
#include "PortType.hpp"
+#include "types.hpp"
+#include "ingen/Properties.hpp"
#include "lv2/urid/urid.h"
#include "raul/Maid.hpp"
#include "raul/Path.hpp"
@@ -31,11 +33,17 @@
#include <memory>
namespace ingen {
+
+class Interface;
+
namespace server {
class DuplexPort;
+class Engine;
class EnginePort;
class GraphImpl;
+class PreProcessContext;
+class RunContext;
namespace events {
diff --git a/src/server/events/Delete.cpp b/src/server/events/Delete.cpp
index fb5035ec..cd045820 100644
--- a/src/server/events/Delete.cpp
+++ b/src/server/events/Delete.cpp
@@ -19,9 +19,11 @@
#include "BlockImpl.hpp"
#include "Broadcaster.hpp"
#include "BufferFactory.hpp"
+#include "CompiledGraph.hpp"
#include "ControlBindings.hpp"
#include "DisconnectAll.hpp"
#include "Driver.hpp"
+#include "DuplexPort.hpp"
#include "Engine.hpp"
#include "EnginePort.hpp"
#include "GraphImpl.hpp"
@@ -29,9 +31,16 @@
#include "PreProcessContext.hpp"
#include "ingen/Forge.hpp"
+#include "ingen/Interface.hpp"
+#include "ingen/Node.hpp"
+#include "ingen/Status.hpp"
#include "ingen/Store.hpp"
+#include "ingen/URI.hpp"
+#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
#include "ingen/memory.hpp"
+#include "ingen/paths.hpp"
+#include "raul/Array.hpp"
#include "raul/Maid.hpp"
#include "raul/Path.hpp"
@@ -43,6 +52,9 @@
namespace ingen {
namespace server {
+
+class RunContext;
+
namespace events {
Delete::Delete(Engine& engine,
diff --git a/src/server/events/Delete.hpp b/src/server/events/Delete.hpp
index 40972d42..cac28750 100644
--- a/src/server/events/Delete.hpp
+++ b/src/server/events/Delete.hpp
@@ -17,12 +17,16 @@
#ifndef INGEN_EVENTS_DELETE_HPP
#define INGEN_EVENTS_DELETE_HPP
+#include "BlockImpl.hpp"
#include "ControlBindings.hpp"
#include "Event.hpp"
#include "GraphImpl.hpp"
+#include "types.hpp"
+#include "ingen/Message.hpp"
#include "ingen/Store.hpp"
#include "raul/Maid.hpp"
+#include "raul/Path.hpp"
#include <cstdint>
#include <map>
@@ -31,11 +35,17 @@
#include <vector>
namespace ingen {
+
+class Interface;
+
namespace server {
class CompiledGraph;
class DuplexPort;
+class Engine;
class EnginePort;
+class PreProcessContext;
+class RunContext;
namespace events {
diff --git a/src/server/events/Delta.cpp b/src/server/events/Delta.cpp
index 04b30630..33611b7a 100644
--- a/src/server/events/Delta.cpp
+++ b/src/server/events/Delta.cpp
@@ -16,6 +16,8 @@
#include "Delta.hpp"
+#include "BlockFactory.hpp"
+#include "BlockImpl.hpp"
#include "Broadcaster.hpp"
#include "ControlBindings.hpp"
#include "CreateBlock.hpp"
@@ -23,18 +25,27 @@
#include "CreatePort.hpp"
#include "Engine.hpp"
#include "GraphImpl.hpp"
+#include "NodeImpl.hpp"
#include "PluginImpl.hpp"
#include "PortImpl.hpp"
#include "PortType.hpp"
#include "SetPortValue.hpp"
+#include "ingen/Atom.hpp"
+#include "ingen/FilePath.hpp"
#include "ingen/Forge.hpp"
+#include "ingen/Interface.hpp"
#include "ingen/Log.hpp"
+#include "ingen/Message.hpp"
+#include "ingen/Node.hpp"
+#include "ingen/Status.hpp"
#include "ingen/Store.hpp"
#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
#include "ingen/memory.hpp"
+#include "ingen/paths.hpp"
#include "raul/Maid.hpp"
+#include "raul/Path.hpp"
#include <memory>
#include <mutex>
diff --git a/src/server/events/Delta.hpp b/src/server/events/Delta.hpp
index 1a7c2005..4d749f02 100644
--- a/src/server/events/Delta.hpp
+++ b/src/server/events/Delta.hpp
@@ -18,25 +18,35 @@
#define INGEN_EVENTS_DELTA_HPP
#include "ClientUpdate.hpp"
+#include "CompiledGraph.hpp"
#include "ControlBindings.hpp"
#include "Event.hpp"
+#include "types.hpp"
+#include "ingen/Properties.hpp"
+#include "ingen/Resource.hpp"
+#include "ingen/URI.hpp"
#include "lilv/lilv.h"
#include "raul/Maid.hpp"
#include <boost/optional/optional.hpp>
-#include <algorithm>
#include <cstdint>
#include <memory>
#include <vector>
namespace ingen {
+
+class Interface;
+struct Delta;
+struct Put;
+struct SetProperty;
+
namespace server {
-class CompiledGraph;
class Engine;
class GraphImpl;
+class PreProcessContext;
class RunContext;
namespace events {
diff --git a/src/server/events/Disconnect.cpp b/src/server/events/Disconnect.cpp
index 4918e5bf..57a20628 100644
--- a/src/server/events/Disconnect.cpp
+++ b/src/server/events/Disconnect.cpp
@@ -16,20 +16,26 @@
#include "events/Disconnect.hpp"
-#include "ArcImpl.hpp"
+#include "BlockImpl.hpp"
#include "Broadcaster.hpp"
#include "Buffer.hpp"
-#include "DuplexPort.hpp"
+#include "BufferFactory.hpp"
+#include "BufferRef.hpp"
#include "Engine.hpp"
#include "GraphImpl.hpp"
#include "InputPort.hpp"
#include "PortImpl.hpp"
+#include "PortType.hpp"
#include "PreProcessContext.hpp"
-#include "RunContext.hpp"
#include "ThreadManager.hpp"
+#include "ingen/Atom.hpp"
+#include "ingen/Interface.hpp"
+#include "ingen/Node.hpp"
+#include "ingen/Status.hpp"
#include "ingen/Store.hpp"
#include "ingen/memory.hpp"
+#include "raul/Array.hpp"
#include "raul/Maid.hpp"
#include "raul/Path.hpp"
@@ -42,6 +48,9 @@
namespace ingen {
namespace server {
+
+class RunContext;
+
namespace events {
Disconnect::Disconnect(Engine& engine,
diff --git a/src/server/events/Disconnect.hpp b/src/server/events/Disconnect.hpp
index c4cd32c4..681f1df0 100644
--- a/src/server/events/Disconnect.hpp
+++ b/src/server/events/Disconnect.hpp
@@ -22,15 +22,23 @@
#include "PortImpl.hpp"
#include "types.hpp"
+#include "ingen/Message.hpp"
#include "raul/Maid.hpp"
#include <memory>
namespace ingen {
+
+class Interface;
+
namespace server {
class ArcImpl;
+class Engine;
+class GraphImpl;
class InputPort;
+class PreProcessContext;
+class RunContext;
namespace events {
diff --git a/src/server/events/DisconnectAll.cpp b/src/server/events/DisconnectAll.cpp
index 47f8092a..43836611 100644
--- a/src/server/events/DisconnectAll.cpp
+++ b/src/server/events/DisconnectAll.cpp
@@ -19,18 +19,20 @@
#include "ArcImpl.hpp"
#include "BlockImpl.hpp"
#include "Broadcaster.hpp"
+#include "CompiledGraph.hpp"
#include "Engine.hpp"
#include "GraphImpl.hpp"
#include "InputPort.hpp"
+#include "NodeImpl.hpp"
#include "PortImpl.hpp"
#include "PreProcessContext.hpp"
#include "events/Disconnect.hpp"
-#include "util.hpp"
+#include "ingen/Interface.hpp"
+#include "ingen/Node.hpp"
+#include "ingen/Status.hpp"
#include "ingen/Store.hpp"
-#include "raul/Array.hpp"
#include "raul/Maid.hpp"
-#include "raul/Path.hpp"
#include <memory>
#include <mutex>
diff --git a/src/server/events/DisconnectAll.hpp b/src/server/events/DisconnectAll.hpp
index 2b5bc589..4560fe85 100644
--- a/src/server/events/DisconnectAll.hpp
+++ b/src/server/events/DisconnectAll.hpp
@@ -17,27 +17,33 @@
#ifndef INGEN_EVENTS_DISCONNECTALL_HPP
#define INGEN_EVENTS_DISCONNECTALL_HPP
-#include "CompiledGraph.hpp"
#include "Disconnect.hpp"
#include "Event.hpp"
+#include "types.hpp"
+#include "ingen/Message.hpp"
#include "raul/Maid.hpp"
-#include "raul/Path.hpp"
#include <list>
#include <memory>
namespace ingen {
+
+class Interface;
+class Node;
+
namespace server {
class BlockImpl;
+class CompiledGraph;
+class Engine;
class GraphImpl;
class PortImpl;
+class PreProcessContext;
+class RunContext;
namespace events {
-class Disconnect;
-
/** An event to disconnect all connections to a Block.
*
* \ingroup engine
diff --git a/src/server/events/Get.cpp b/src/server/events/Get.cpp
index 1399fd6d..219af6fe 100644
--- a/src/server/events/Get.cpp
+++ b/src/server/events/Get.cpp
@@ -18,17 +18,20 @@
#include "BlockImpl.hpp"
#include "Broadcaster.hpp"
-#include "BufferFactory.hpp"
#include "Engine.hpp"
#include "GraphImpl.hpp"
-#include "PluginImpl.hpp"
#include "PortImpl.hpp"
#include "ingen/Forge.hpp"
#include "ingen/Interface.hpp"
#include "ingen/Node.hpp"
+#include "ingen/Properties.hpp"
+#include "ingen/Status.hpp"
#include "ingen/Store.hpp"
+#include "ingen/URI.hpp"
+#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
+#include "ingen/paths.hpp"
#include <cstdint>
#include <memory>
diff --git a/src/server/events/Get.hpp b/src/server/events/Get.hpp
index 2ccb88e3..fd3f8569 100644
--- a/src/server/events/Get.hpp
+++ b/src/server/events/Get.hpp
@@ -17,6 +17,8 @@
#ifndef INGEN_EVENTS_GET_HPP
#define INGEN_EVENTS_GET_HPP
+#include "ingen/Message.hpp"
+
#include "BlockFactory.hpp"
#include "ClientUpdate.hpp"
#include "Event.hpp"
@@ -25,12 +27,16 @@
#include <memory>
namespace ingen {
+
+class Interface;
+class Node;
+
namespace server {
-class BlockImpl;
-class GraphImpl;
+class Engine;
class PluginImpl;
-class PortImpl;
+class PreProcessContext;
+class RunContext;
namespace events {
diff --git a/src/server/events/Mark.cpp b/src/server/events/Mark.cpp
index 5006c035..520f57e9 100644
--- a/src/server/events/Mark.cpp
+++ b/src/server/events/Mark.cpp
@@ -16,10 +16,16 @@
#include "events/Mark.hpp"
+#include "ingen/Message.hpp"
+#include "ingen/Status.hpp"
+
+#include "CompiledGraph.hpp"
#include "Engine.hpp"
+#include "GraphImpl.hpp"
#include "PreProcessContext.hpp"
#include "UndoStack.hpp"
+#include <cassert>
#include <memory>
#include <utility>
diff --git a/src/server/events/Mark.hpp b/src/server/events/Mark.hpp
index 46587b76..ffbf9062 100644
--- a/src/server/events/Mark.hpp
+++ b/src/server/events/Mark.hpp
@@ -18,6 +18,7 @@
#define INGEN_EVENTS_MARK_HPP
#include "Event.hpp"
+#include "types.hpp"
#include "raul/Maid.hpp"
@@ -25,11 +26,18 @@
#include <memory>
namespace ingen {
+
+class Interface;
+struct BundleBegin;
+struct BundleEnd;
+
namespace server {
class CompiledGraph;
class Engine;
class GraphImpl;
+class PreProcessContext;
+class RunContext;
namespace events {
diff --git a/src/server/events/Move.cpp b/src/server/events/Move.cpp
index 13d92ef2..b79dde2a 100644
--- a/src/server/events/Move.cpp
+++ b/src/server/events/Move.cpp
@@ -14,22 +14,24 @@
along with Ingen. If not, see <http://www.gnu.org/licenses/>.
*/
-#include "ingen/Store.hpp"
-#include "raul/Path.hpp"
-
-#include "BlockImpl.hpp"
#include "Broadcaster.hpp"
#include "Driver.hpp"
#include "Engine.hpp"
-#include "EnginePort.hpp"
-#include "GraphImpl.hpp"
#include "events/Move.hpp"
+#include "ingen/Interface.hpp"
+#include "ingen/Status.hpp"
+#include "ingen/Store.hpp"
+#include "raul/Path.hpp"
+
#include <memory>
#include <mutex>
namespace ingen {
namespace server {
+
+class EnginePort;
+
namespace events {
Move::Move(Engine& engine,
diff --git a/src/server/events/Move.hpp b/src/server/events/Move.hpp
index 7037388f..3940e825 100644
--- a/src/server/events/Move.hpp
+++ b/src/server/events/Move.hpp
@@ -18,17 +18,21 @@
#define INGEN_EVENTS_MOVE_HPP
#include "Event.hpp"
+#include "types.hpp"
-#include "ingen/Store.hpp"
-#include "raul/Path.hpp"
+#include "ingen/Message.hpp"
#include <memory>
namespace ingen {
+
+class Interface;
+
namespace server {
-class GraphImpl;
-class PortImpl;
+class Engine;
+class PreProcessContext;
+class RunContext;
namespace events {
diff --git a/src/server/events/SetPortValue.cpp b/src/server/events/SetPortValue.cpp
index c8c60e04..a1b5bafa 100644
--- a/src/server/events/SetPortValue.cpp
+++ b/src/server/events/SetPortValue.cpp
@@ -16,19 +16,19 @@
#include "SetPortValue.hpp"
-#include "BlockImpl.hpp"
#include "Broadcaster.hpp"
#include "Buffer.hpp"
+#include "BufferFactory.hpp"
#include "ControlBindings.hpp"
#include "Engine.hpp"
#include "PortImpl.hpp"
#include "RunContext.hpp"
#include "ingen/Forge.hpp"
-#include "ingen/LV2Features.hpp"
-#include "ingen/Store.hpp"
+#include "ingen/Status.hpp"
#include "ingen/URIs.hpp"
#include "ingen/World.hpp"
+#include "lv2/atom/atom.h"
#include <cassert>
#include <memory>
diff --git a/src/server/events/SetPortValue.hpp b/src/server/events/SetPortValue.hpp
index 576b01a0..69d742b8 100644
--- a/src/server/events/SetPortValue.hpp
+++ b/src/server/events/SetPortValue.hpp
@@ -28,9 +28,15 @@
#include <memory>
namespace ingen {
+
+class Interface;
+
namespace server {
+class Engine;
class PortImpl;
+class PreProcessContext;
+class RunContext;
namespace events {
diff --git a/src/server/events/Undo.cpp b/src/server/events/Undo.cpp
index 22695415..3c91235d 100644
--- a/src/server/events/Undo.cpp
+++ b/src/server/events/Undo.cpp
@@ -20,6 +20,10 @@
#include "EventWriter.hpp"
#include "ingen/AtomReader.hpp"
+#include "ingen/Interface.hpp"
+#include "ingen/Message.hpp"
+#include "ingen/Status.hpp"
+#include "lv2/atom/atom.h"
#include <deque>
#include <memory>
diff --git a/src/server/events/Undo.hpp b/src/server/events/Undo.hpp
index 7be79a39..eb9cb70a 100644
--- a/src/server/events/Undo.hpp
+++ b/src/server/events/Undo.hpp
@@ -24,7 +24,17 @@
#include <memory>
namespace ingen {
+
+class Interface;
+struct Redo;
+struct Undo;
+
namespace server {
+
+class Engine;
+class PreProcessContext;
+class RunContext;
+
namespace events {
/** A request to undo the last change to the engine.
diff --git a/src/server/ingen_engine.cpp b/src/server/ingen_engine.cpp
index 429ac8e1..8f709967 100644
--- a/src/server/ingen_engine.cpp
+++ b/src/server/ingen_engine.cpp
@@ -15,7 +15,6 @@
*/
#include "Engine.hpp"
-#include "EventWriter.hpp"
#include "util.hpp"
#include "ingen/Module.hpp"
diff --git a/src/server/ingen_jack.cpp b/src/server/ingen_jack.cpp
index 0bbf2640..4ea2d179 100644
--- a/src/server/ingen_jack.cpp
+++ b/src/server/ingen_jack.cpp
@@ -14,8 +14,9 @@
along with Ingen. If not, see <http://www.gnu.org/licenses/>.
*/
-#include "JackDriver.hpp"
+#include "BufferRef.hpp"
#include "Engine.hpp"
+#include "JackDriver.hpp"
#include "ingen/Atom.hpp"
#include "ingen/Configuration.hpp"
@@ -28,6 +29,12 @@
using namespace ingen;
+namespace ingen {
+namespace server {
+class Driver;
+} // namespace server
+} // namespace ingen
+
struct IngenJackModule : public ingen::Module {
void load(ingen::World& world) override {
server::Engine* const engine =
diff --git a/src/server/internals/BlockDelay.cpp b/src/server/internals/BlockDelay.cpp
index cd9dbf9b..682438cc 100644
--- a/src/server/internals/BlockDelay.cpp
+++ b/src/server/internals/BlockDelay.cpp
@@ -16,15 +16,20 @@
#include "internals/BlockDelay.hpp"
+#include "BlockImpl.hpp"
#include "Buffer.hpp"
+#include "BufferFactory.hpp"
#include "InputPort.hpp"
#include "InternalPlugin.hpp"
#include "OutputPort.hpp"
+#include "PortType.hpp"
#include "ingen/Forge.hpp"
+#include "ingen/URI.hpp"
#include "ingen/URIs.hpp"
#include "raul/Array.hpp"
#include "raul/Maid.hpp"
+#include "raul/Symbol.hpp"
#include <memory>
diff --git a/src/server/internals/BlockDelay.hpp b/src/server/internals/BlockDelay.hpp
index ed8073c8..2b523e37 100644
--- a/src/server/internals/BlockDelay.hpp
+++ b/src/server/internals/BlockDelay.hpp
@@ -21,13 +21,22 @@
#include "InternalBlock.hpp"
#include "types.hpp"
+namespace Raul {
+class Symbol;
+} // namespace Raul
+
namespace ingen {
+
+class URIs;
+
namespace server {
+class BufferFactory;
+class GraphImpl;
class InputPort;
-class OutputPort;
class InternalPlugin;
-class BufferFactory;
+class OutputPort;
+class RunContext;
namespace internals {
diff --git a/src/server/internals/Controller.cpp b/src/server/internals/Controller.cpp
index 22549ae4..12786dac 100644
--- a/src/server/internals/Controller.cpp
+++ b/src/server/internals/Controller.cpp
@@ -14,20 +14,27 @@
along with Ingen. If not, see <http://www.gnu.org/licenses/>.
*/
+#include "BlockImpl.hpp"
#include "Buffer.hpp"
-#include "Engine.hpp"
+#include "BufferFactory.hpp"
+#include "BufferRef.hpp"
#include "InputPort.hpp"
#include "InternalPlugin.hpp"
#include "OutputPort.hpp"
-#include "PostProcessor.hpp"
+#include "PortType.hpp"
#include "RunContext.hpp"
-#include "util.hpp"
+#include "ingen/Atom.hpp"
#include "ingen/Forge.hpp"
+#include "ingen/URI.hpp"
#include "ingen/URIs.hpp"
#include "internals/Controller.hpp"
+#include "lv2/atom/atom.h"
#include "lv2/atom/util.h"
#include "lv2/midi/midi.h"
+#include "raul/Array.hpp"
+#include "raul/Maid.hpp"
+#include "raul/Symbol.hpp"
#include <cassert>
#include <cmath>
@@ -36,6 +43,9 @@
namespace ingen {
namespace server {
+
+class GraphImpl;
+
namespace internals {
InternalPlugin* ControllerNode::internal_plugin(URIs& uris) {
diff --git a/src/server/internals/Controller.hpp b/src/server/internals/Controller.hpp
index bb3c8369..383ce152 100644
--- a/src/server/internals/Controller.hpp
+++ b/src/server/internals/Controller.hpp
@@ -18,15 +18,26 @@
#define INGEN_INTERNALS_CONTROLLER_HPP
#include "InternalBlock.hpp"
+#include "types.hpp"
#include <cstdint>
+namespace Raul {
+class Symbol;
+} // namespace Raul
+
namespace ingen {
+
+class URIs;
+
namespace server {
+class BufferFactory;
+class GraphImpl;
class InputPort;
-class OutputPort;
class InternalPlugin;
+class OutputPort;
+class RunContext;
namespace internals {
diff --git a/src/server/internals/Note.cpp b/src/server/internals/Note.cpp
index 76dde8af..d2e03a56 100644
--- a/src/server/internals/Note.cpp
+++ b/src/server/internals/Note.cpp
@@ -16,18 +16,26 @@
#include "internals/Note.hpp"
+#include "BlockImpl.hpp"
#include "Buffer.hpp"
+#include "BufferFactory.hpp"
+#include "BufferRef.hpp"
#include "InputPort.hpp"
#include "InternalPlugin.hpp"
#include "OutputPort.hpp"
+#include "PortType.hpp"
#include "RunContext.hpp"
+#include "ingen/Atom.hpp"
#include "ingen/Forge.hpp"
+#include "ingen/URI.hpp"
#include "ingen/URIs.hpp"
+#include "lv2/atom/atom.h"
#include "lv2/atom/util.h"
#include "lv2/midi/midi.h"
#include "raul/Array.hpp"
#include "raul/Maid.hpp"
+#include "raul/Symbol.hpp"
#include <cassert>
#include <cmath>
@@ -37,6 +45,9 @@
namespace ingen {
namespace server {
+
+class GraphImpl;
+
namespace internals {
InternalPlugin* NoteNode::internal_plugin(URIs& uris) {
diff --git a/src/server/internals/Note.hpp b/src/server/internals/Note.hpp
index cb41c37c..945ae99c 100644
--- a/src/server/internals/Note.hpp
+++ b/src/server/internals/Note.hpp
@@ -20,17 +20,28 @@
#include "InternalBlock.hpp"
#include "types.hpp"
+#include "raul/Array.hpp"
#include "raul/Maid.hpp"
#include <cstdint>
#include <memory>
+namespace Raul {
+class Symbol;
+} // namespace Raul
+
namespace ingen {
+
+class URIs;
+
namespace server {
+class BufferFactory;
+class GraphImpl;
class InputPort;
-class OutputPort;
class InternalPlugin;
+class OutputPort;
+class RunContext;
namespace internals {
diff --git a/src/server/internals/Time.cpp b/src/server/internals/Time.cpp
index d81ca04d..47f85867 100644
--- a/src/server/internals/Time.cpp
+++ b/src/server/internals/Time.cpp
@@ -16,23 +16,33 @@
#include "internals/Time.hpp"
+#include "BlockImpl.hpp"
#include "Buffer.hpp"
+#include "BufferFactory.hpp"
+#include "BufferRef.hpp"
#include "Driver.hpp"
#include "Engine.hpp"
#include "InternalPlugin.hpp"
#include "OutputPort.hpp"
+#include "PortType.hpp"
#include "RunContext.hpp"
-#include "util.hpp"
+#include "ingen/Atom.hpp"
#include "ingen/Forge.hpp"
+#include "ingen/URI.hpp"
#include "ingen/URIs.hpp"
-#include "lv2/atom/util.h"
-#include "lv2/midi/midi.h"
+#include "lv2/atom/atom.h"
+#include "raul/Array.hpp"
+#include "raul/Maid.hpp"
+#include "raul/Symbol.hpp"
#include <memory>
namespace ingen {
namespace server {
+
+class GraphImpl;
+
namespace internals {
InternalPlugin* TimeNode::internal_plugin(URIs& uris) {
diff --git a/src/server/internals/Time.hpp b/src/server/internals/Time.hpp
index 85d5199e..ec0f5528 100644
--- a/src/server/internals/Time.hpp
+++ b/src/server/internals/Time.hpp
@@ -18,13 +18,23 @@
#define INGEN_INTERNALS_TIME_HPP
#include "InternalBlock.hpp"
+#include "types.hpp"
+
+namespace Raul {
+class Symbol;
+} // namespace Raul
namespace ingen {
+
+class URIs;
+
namespace server {
-class InputPort;
-class OutputPort;
+class BufferFactory;
+class GraphImpl;
class InternalPlugin;
+class OutputPort;
+class RunContext;
namespace internals {
diff --git a/src/server/internals/Trigger.cpp b/src/server/internals/Trigger.cpp
index cc966eb3..450a7040 100644
--- a/src/server/internals/Trigger.cpp
+++ b/src/server/internals/Trigger.cpp
@@ -16,19 +16,26 @@
#include "internals/Trigger.hpp"
+#include "BlockImpl.hpp"
#include "Buffer.hpp"
-#include "Engine.hpp"
+#include "BufferFactory.hpp"
+#include "BufferRef.hpp"
#include "InputPort.hpp"
#include "InternalPlugin.hpp"
#include "OutputPort.hpp"
+#include "PortType.hpp"
#include "RunContext.hpp"
-#include "ingen_config.h"
-#include "util.hpp"
+#include "ingen/Atom.hpp"
#include "ingen/Forge.hpp"
+#include "ingen/URI.hpp"
#include "ingen/URIs.hpp"
+#include "lv2/atom/atom.h"
#include "lv2/atom/util.h"
#include "lv2/midi/midi.h"
+#include "raul/Array.hpp"
+#include "raul/Maid.hpp"
+#include "raul/Symbol.hpp"
#include <cassert>
#include <cmath>
@@ -36,6 +43,9 @@
namespace ingen {
namespace server {
+
+class GraphImpl;
+
namespace internals {
InternalPlugin* TriggerNode::internal_plugin(URIs& uris) {
diff --git a/src/server/internals/Trigger.hpp b/src/server/internals/Trigger.hpp
index 17671098..ba14db68 100644
--- a/src/server/internals/Trigger.hpp
+++ b/src/server/internals/Trigger.hpp
@@ -18,15 +18,26 @@
#define INGEN_INTERNALS_TRIGGER_HPP
#include "InternalBlock.hpp"
+#include "types.hpp"
#include <cstdint>
+namespace Raul {
+class Symbol;
+} // namespace Raul
+
namespace ingen {
+
+class URIs;
+
namespace server {
+class BufferFactory;
+class GraphImpl;
class InputPort;
-class OutputPort;
class InternalPlugin;
+class OutputPort;
+class RunContext;
namespace internals {
diff --git a/src/server/mix.cpp b/src/server/mix.cpp
index aa9d5a1d..a1e0c276 100644
--- a/src/server/mix.cpp
+++ b/src/server/mix.cpp
@@ -18,7 +18,9 @@
#include "Buffer.hpp"
#include "RunContext.hpp"
+#include "types.hpp"
+#include "lv2/atom/atom.h"
#include "lv2/atom/util.h"
namespace ingen {