From a399920f6db9d8309aee2af056651592495a1345 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Mon, 14 Dec 2020 22:29:57 +0100 Subject: Clean up includes in client library --- include/ingen/client/ArcModel.hpp | 4 ++-- include/ingen/client/BlockModel.hpp | 4 ++-- include/ingen/client/ClientStore.hpp | 5 +---- include/ingen/client/GraphModel.hpp | 10 +++++++++- include/ingen/client/PluginModel.hpp | 8 +++++--- include/ingen/client/PortModel.hpp | 14 +++++++++----- include/ingen/client/SigClientInterface.hpp | 6 ++---- include/ingen/client/signal.hpp | 5 ++++- src/client/BlockModel.cpp | 10 +++++++++- src/client/ClientStore.cpp | 9 +++++++++ src/client/GraphModel.cpp | 6 +++++- src/client/ObjectModel.cpp | 5 +++++ src/client/PluginModel.cpp | 4 +--- src/client/PluginUI.cpp | 9 ++++++++- src/client/PortModel.cpp | 8 +++++++- src/client/ingen_client.cpp | 14 +++++++++++--- 16 files changed, 89 insertions(+), 32 deletions(-) diff --git a/include/ingen/client/ArcModel.hpp b/include/ingen/client/ArcModel.hpp index 05f104e4..635c2d41 100644 --- a/include/ingen/client/ArcModel.hpp +++ b/include/ingen/client/ArcModel.hpp @@ -24,12 +24,12 @@ #include #include +#include +#include namespace ingen { namespace client { -class ClientStore; - /** Class to represent a port->port connections in the engine. * * @ingroup IngenClient diff --git a/include/ingen/client/BlockModel.hpp b/include/ingen/client/BlockModel.hpp index 0a0cded9..ee2c88d8 100644 --- a/include/ingen/client/BlockModel.hpp +++ b/include/ingen/client/BlockModel.hpp @@ -18,10 +18,9 @@ #define INGEN_CLIENT_BLOCKMODEL_HPP #include "ingen/Node.hpp" -#include "ingen/Resource.hpp" #include "ingen/URI.hpp" #include "ingen/client/ObjectModel.hpp" -#include "ingen/client/PluginModel.hpp" +#include "ingen/client/PluginModel.hpp" // IWYU pragma: keep #include "ingen/client/signal.hpp" #include "ingen/ingen.h" @@ -37,6 +36,7 @@ class Symbol; namespace ingen { +class Resource; class URIs; namespace client { diff --git a/include/ingen/client/ClientStore.hpp b/include/ingen/client/ClientStore.hpp index 6fa040b2..b1d40881 100644 --- a/include/ingen/client/ClientStore.hpp +++ b/include/ingen/client/ClientStore.hpp @@ -23,10 +23,10 @@ #include "ingen/URI.hpp" #include "ingen/client/signal.hpp" #include "ingen/ingen.h" -#include "raul/Path.hpp" #include #include +#include namespace Raul { class Path; @@ -36,17 +36,14 @@ namespace ingen { class Atom; class Log; -class Node; class Resource; class URIs; namespace client { -class BlockModel; class GraphModel; class ObjectModel; class PluginModel; -class PortModel; class SigClientInterface; /** Automatically manages models of objects in the engine. diff --git a/include/ingen/client/GraphModel.hpp b/include/ingen/client/GraphModel.hpp index 3ddf2342..fb95b716 100644 --- a/include/ingen/client/GraphModel.hpp +++ b/include/ingen/client/GraphModel.hpp @@ -26,11 +26,19 @@ #include #include +namespace Raul { +class Path; +} // namespace Raul + namespace ingen { + +class URI; + namespace client { class ArcModel; -class ClientStore; +class ObjectModel; +class PortModel; /** Client's model of a graph. * diff --git a/include/ingen/client/PluginModel.hpp b/include/ingen/client/PluginModel.hpp index 5acb1707..07905ebb 100644 --- a/include/ingen/client/PluginModel.hpp +++ b/include/ingen/client/PluginModel.hpp @@ -17,9 +17,12 @@ #ifndef INGEN_CLIENT_PLUGINMODEL_HPP #define INGEN_CLIENT_PLUGINMODEL_HPP +#include "ingen/Atom.hpp" #include "ingen/Forge.hpp" +#include "ingen/Properties.hpp" #include "ingen/Resource.hpp" -#include "ingen/World.hpp" +#include "ingen/URI.hpp" +#include "ingen/URIs.hpp" #include "ingen/client/signal.hpp" #include "ingen/ingen.h" #include "lilv/lilv.h" @@ -36,11 +39,10 @@ class World; namespace ingen { -class URIs; +class World; namespace client { -class GraphModel; class BlockModel; class PluginUI; diff --git a/include/ingen/client/PortModel.hpp b/include/ingen/client/PortModel.hpp index 61b223df..b081a74d 100644 --- a/include/ingen/client/PortModel.hpp +++ b/include/ingen/client/PortModel.hpp @@ -17,18 +17,22 @@ #ifndef INGEN_CLIENT_PORTMODEL_HPP #define INGEN_CLIENT_PORTMODEL_HPP +#include "ingen/Node.hpp" +#include "ingen/URI.hpp" +#include "ingen/URIs.hpp" #include "ingen/client/ObjectModel.hpp" +#include "ingen/client/signal.hpp" #include "ingen/ingen.h" -#include "lv2/core/lv2.h" -#include "lv2/port-props/port-props.h" +#include "raul/Path.hpp" -#include +#include #include #include -namespace Raul { class Path; } - namespace ingen { + +class Atom; + namespace client { /** Model of a port. diff --git a/include/ingen/client/SigClientInterface.hpp b/include/ingen/client/SigClientInterface.hpp index 674714a3..51e05b50 100644 --- a/include/ingen/client/SigClientInterface.hpp +++ b/include/ingen/client/SigClientInterface.hpp @@ -18,12 +18,10 @@ #define INGEN_CLIENT_SIGCLIENTINTERFACE_HPP #include "ingen/Interface.hpp" +#include "ingen/Message.hpp" +#include "ingen/URI.hpp" #include "ingen/client/signal.hpp" #include "ingen/ingen.h" -#include "raul/Path.hpp" - -#include -#include namespace ingen { namespace client { diff --git a/include/ingen/client/signal.hpp b/include/ingen/client/signal.hpp index ba5b017b..ea382549 100644 --- a/include/ingen/client/signal.hpp +++ b/include/ingen/client/signal.hpp @@ -17,7 +17,10 @@ #ifndef INGEN_CLIENT_SIGNAL_HPP #define INGEN_CLIENT_SIGNAL_HPP -#include +// IWYU pragma: begin_exports +#include +#include +// IWYU pragma: end_exports #define INGEN_SIGNAL(name, ...) \ protected: \ diff --git a/src/client/BlockModel.cpp b/src/client/BlockModel.cpp index 898a1799..a6e4a0a6 100644 --- a/src/client/BlockModel.cpp +++ b/src/client/BlockModel.cpp @@ -16,16 +16,24 @@ #include "ingen/client/BlockModel.hpp" +#include "ingen/Atom.hpp" +#include "ingen/Forge.hpp" #include "ingen/URIs.hpp" -#include "ingen/World.hpp" +#include "ingen/client/PluginModel.hpp" #include "ingen/client/PortModel.hpp" +#include "lilv/lilv.h" +#include "lv2/core/lv2.h" +#include "raul/Path.hpp" +#include "raul/Symbol.hpp" +#include #include #include #include #include #include #include +#include namespace ingen { namespace client { diff --git a/src/client/ClientStore.cpp b/src/client/ClientStore.cpp index 1a7963f3..9c577673 100644 --- a/src/client/ClientStore.cpp +++ b/src/client/ClientStore.cpp @@ -16,7 +16,13 @@ #include "ingen/client/ClientStore.hpp" +#include "ingen/Atom.hpp" +#include "ingen/Forge.hpp" #include "ingen/Log.hpp" +#include "ingen/Node.hpp" +#include "ingen/Properties.hpp" +#include "ingen/Resource.hpp" +#include "ingen/URIs.hpp" #include "ingen/client/ArcModel.hpp" #include "ingen/client/BlockModel.hpp" #include "ingen/client/GraphModel.hpp" @@ -24,8 +30,11 @@ #include "ingen/client/PluginModel.hpp" #include "ingen/client/PortModel.hpp" #include "ingen/client/SigClientInterface.hpp" +#include "ingen/paths.hpp" +#include "raul/Path.hpp" #include +#include #include #include diff --git a/src/client/GraphModel.cpp b/src/client/GraphModel.cpp index 3bc08dfd..d4104742 100644 --- a/src/client/GraphModel.cpp +++ b/src/client/GraphModel.cpp @@ -16,12 +16,16 @@ #include "ingen/client/GraphModel.hpp" +#include "ingen/Atom.hpp" #include "ingen/URIs.hpp" #include "ingen/client/ArcModel.hpp" #include "ingen/client/BlockModel.hpp" -#include "ingen/client/ClientStore.hpp" +#include "ingen/client/ObjectModel.hpp" +#include "ingen/client/PortModel.hpp" +#include "raul/Path.hpp" #include +#include #include #include #include diff --git a/src/client/ObjectModel.cpp b/src/client/ObjectModel.cpp index 00da2c62..b769d5f1 100644 --- a/src/client/ObjectModel.cpp +++ b/src/client/ObjectModel.cpp @@ -16,11 +16,16 @@ #include "ingen/client/ObjectModel.hpp" +#include "ingen/Atom.hpp" #include "ingen/Node.hpp" +#include "ingen/Properties.hpp" +#include "ingen/Resource.hpp" #include "ingen/URIs.hpp" +#include "ingen/paths.hpp" #include #include +#include #include #include diff --git a/src/client/PluginModel.cpp b/src/client/PluginModel.cpp index d2347027..ca044114 100644 --- a/src/client/PluginModel.cpp +++ b/src/client/PluginModel.cpp @@ -17,10 +17,8 @@ #include "ingen/client/PluginModel.hpp" #include "ingen/Atom.hpp" -#include "ingen/client/GraphModel.hpp" #include "ingen/client/PluginUI.hpp" -#include "ingen_config.h" -#include "raul/Path.hpp" +#include "lv2/core/lv2.h" #include diff --git a/src/client/PluginUI.cpp b/src/client/PluginUI.cpp index 122c2af6..7292d8b2 100644 --- a/src/client/PluginUI.cpp +++ b/src/client/PluginUI.cpp @@ -16,13 +16,20 @@ #include "ingen/client/PluginUI.hpp" -#include "ingen/Interface.hpp" +#include "ingen/Atom.hpp" +#include "ingen/Forge.hpp" #include "ingen/Log.hpp" +#include "ingen/URI.hpp" #include "ingen/URIs.hpp" +#include "ingen/World.hpp" #include "ingen/client/BlockModel.hpp" #include "ingen/client/PortModel.hpp" #include "lv2/atom/atom.h" +#include "lv2/core/lv2.h" #include "lv2/ui/ui.h" +#include "raul/Symbol.hpp" + +#include #include #include diff --git a/src/client/PortModel.cpp b/src/client/PortModel.cpp index d58a2b49..0d695a54 100644 --- a/src/client/PortModel.cpp +++ b/src/client/PortModel.cpp @@ -14,10 +14,16 @@ along with Ingen. If not, see . */ -#include "ingen/client/BlockModel.hpp" #include "ingen/client/PortModel.hpp" +#include "ingen/Properties.hpp" +#include "ingen/URI.hpp" +#include "ingen/URIs.hpp" +#include "ingen/client/ObjectModel.hpp" +#include "lv2/urid/urid.h" + #include +#include #include #include diff --git a/src/client/ingen_client.cpp b/src/client/ingen_client.cpp index c6c49080..f4d6bbc7 100644 --- a/src/client/ingen_client.cpp +++ b/src/client/ingen_client.cpp @@ -15,18 +15,26 @@ */ #include "ingen/Module.hpp" -#include "ingen/World.hpp" -struct IngenClientModule : public ingen::Module { +namespace ingen { + +class World; + +namespace client { + +struct ClientModule : public ingen::Module { void load(ingen::World& world) override {} }; +} // namespace client +} // namespace ingen + extern "C" { ingen::Module* ingen_module_load() { - return new IngenClientModule(); + return new ingen::client::ClientModule(); } } // extern "C" -- cgit v1.2.1