summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/libs/client/Makefile.am16
-rw-r--r--src/libs/client/PluginModel.h2
-rw-r--r--src/libs/engine/DSSINode.h2
-rw-r--r--src/libs/engine/Engine.cpp16
-rw-r--r--src/libs/engine/JackAudioDriver.cpp11
-rw-r--r--src/libs/engine/JackMidiDriver.cpp8
-rw-r--r--src/libs/engine/LashDriver.cpp8
-rw-r--r--src/libs/engine/Makefile.am22
-rw-r--r--src/libs/engine/OSCDriver.h83
-rw-r--r--src/libs/engine/OmInProcess.cpp4
-rw-r--r--src/libs/engine/events.h4
-rw-r--r--src/libs/engine/events/LashRestoreDoneEvent.h55
-rw-r--r--src/libs/engine/tests/Makefile.am4
-rw-r--r--src/libs/gui/App.cpp6
-rw-r--r--src/libs/gui/ConnectWindow.cpp2
-rw-r--r--src/libs/gui/Makefile.am13
-rw-r--r--src/libs/module/Makefile.am2
-rw-r--r--src/libs/serialisation/Makefile.am4
-rw-r--r--src/progs/ingen/Makefile.am5
19 files changed, 151 insertions, 116 deletions
diff --git a/src/libs/client/Makefile.am b/src/libs/client/Makefile.am
index 7250de36..1c009868 100644
--- a/src/libs/client/Makefile.am
+++ b/src/libs/client/Makefile.am
@@ -6,14 +6,16 @@ moduledir = $(libdir)/ingen
module_LTLIBRARIES = libingen_client.la
libingen_client_la_CXXFLAGS = \
- @RAUL_CFLAGS@ @SLV2_CFLAGS@ @LOSC_CFLAGS@ \
+ -I$(top_srcdir)/slv2 \
+ -I$(top_srcdir)/raul \
+ -I$(top_srcdir)/ingen/src/common \
+ -DPKGDATADIR=\"$(pkgdatadir)\" \
+ @LIBLO_CFLAGS@ \
@LXML2_CFLAGS@ @RASQAL_CFLAGS@ @RAPTOR_CFLAGS@ \
- @LSIGCPP_CFLAGS@ @GLIBMM_CFLAGS@ \
- -I$(top_srcdir)/src/common \
- -DPKGDATADIR=\"$(pkgdatadir)\"
+ @LSIGCPP_CFLAGS@ @GLIBMM_CFLAGS@
libingen_client_la_LIBADD = \
- @RAUL_LIBS@ @SLV2_LIBS@ @LOSC_LIBS@ \
+ @RAUL_LIBS@ @SLV2_LIBS@ @LIBLO_LIBS@ \
@LXML2_LIBS@ @RASQAL_LIBS@ @RAPTOR_LIBS@ \
@LSIGCPP_LIBS@ @GLIBMM_LIBS@
@@ -48,8 +50,8 @@ libingen_client_la_SOURCES = \
ConnectionModel.cpp \
Store.h \
Store.cpp \
- $(top_srcdir)/src/common/interface/ClientInterface.h \
- $(top_srcdir)/src/common/interface/EngineInterface.h
+ $(top_srcdir)/ingen/src/common/interface/ClientInterface.h \
+ $(top_srcdir)/ingen/src/common/interface/EngineInterface.h
endif # BUILD_CLIENT_LIB
diff --git a/src/libs/client/PluginModel.h b/src/libs/client/PluginModel.h
index b7de3101..6da388d6 100644
--- a/src/libs/client/PluginModel.h
+++ b/src/libs/client/PluginModel.h
@@ -18,7 +18,7 @@
#ifndef PLUGINMODEL_H
#define PLUGINMODEL_H
-#include "../../../config.h"
+#include "../../../../config/config.h"
#include <string>
#include <iostream>
#include <raul/Path.h>
diff --git a/src/libs/engine/DSSINode.h b/src/libs/engine/DSSINode.h
index ffe1a641..d569e720 100644
--- a/src/libs/engine/DSSINode.h
+++ b/src/libs/engine/DSSINode.h
@@ -18,7 +18,7 @@
#ifndef DSSINODE_H
#define DSSINODE_H
-#include <asoundlib.h>
+#include <alsa/asoundlib.h>
#include <dssi.h>
#include <lo/lo.h>
#include "LADSPANode.h"
diff --git a/src/libs/engine/Engine.cpp b/src/libs/engine/Engine.cpp
index e80bcafe..a2bfc757 100644
--- a/src/libs/engine/Engine.cpp
+++ b/src/libs/engine/Engine.cpp
@@ -40,10 +40,10 @@
#ifdef HAVE_JACK_MIDI
#include "JackMidiDriver.h"
#endif
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
#include "LashDriver.h"
-#endif
-using std::cout; using std::cerr; using std::endl;
+#endif*/
+using namespace std;
namespace Ingen {
@@ -56,11 +56,11 @@ Engine::Engine()
_broadcaster(new ClientBroadcaster()),
_object_store(new ObjectStore()),
_node_factory(new NodeFactory()),
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
_lash_driver(new LashDriver()),
-#else
+#else */
_lash_driver(NULL),
-#endif
+//#endif
_quit_flag(false),
_activated(false)
{
@@ -129,11 +129,11 @@ Engine::main()
bool
Engine::main_iteration()
{
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
// Process any pending LASH events
if (lash_driver->enabled())
lash_driver->process_events();
-#endif
+#endif*/
// Run the maid (garbage collector)
_maid->cleanup();
diff --git a/src/libs/engine/JackAudioDriver.cpp b/src/libs/engine/JackAudioDriver.cpp
index 45f8616d..3f6f58c0 100644
--- a/src/libs/engine/JackAudioDriver.cpp
+++ b/src/libs/engine/JackAudioDriver.cpp
@@ -35,12 +35,11 @@
#include "DuplexPort.h"
#include "EventSource.h"
#include "AudioBuffer.h"
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
#include "LashDriver.h"
-#endif
-
-using std::cout; using std::cerr; using std::endl;
+#endif*/
+using namespace std;
namespace Ingen {
@@ -183,9 +182,9 @@ JackAudioDriver::activate()
exit(EXIT_FAILURE);
} else {
cout << "[JackAudioDriver] Activated Jack client." << endl;
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
_engine.lash_driver()->set_jack_client_name(jack_client_get_name(_client));
-#endif
+#endif*/
}
}
diff --git a/src/libs/engine/JackMidiDriver.cpp b/src/libs/engine/JackMidiDriver.cpp
index 0ec2170b..f8ed3064 100644
--- a/src/libs/engine/JackMidiDriver.cpp
+++ b/src/libs/engine/JackMidiDriver.cpp
@@ -15,22 +15,22 @@
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
-#include "JackMidiDriver.h"
#include <iostream>
#include <cstdlib>
#include <pthread.h>
#include <raul/Maid.h>
#include <raul/midi_events.h>
#include "types.h"
+#include "JackMidiDriver.h"
#include "ThreadManager.h"
#include "AudioDriver.h"
#include "MidiBuffer.h"
#include "DuplexPort.h"
#include "jack_compat.h"
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
#include "LashDriver.h"
-#endif
-using std::cout; using std::cerr; using std::endl;
+#endif*/
+using namespace std;
namespace Ingen {
diff --git a/src/libs/engine/LashDriver.cpp b/src/libs/engine/LashDriver.cpp
index 72090e70..452af1f0 100644
--- a/src/libs/engine/LashDriver.cpp
+++ b/src/libs/engine/LashDriver.cpp
@@ -15,14 +15,14 @@
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
-#include "LashDriver.h"
-#include "config.h"
#include <iostream>
#include <string>
#include <cassert>
+#include "config/config.h"
+#include "LashDriver.h"
+#include "App.h"
-using std::cerr; using std::cout; using std::endl;
-using std::string;
+using namespace std;
namespace Ingen {
diff --git a/src/libs/engine/Makefile.am b/src/libs/engine/Makefile.am
index 7b873c93..7ef0bdaf 100644
--- a/src/libs/engine/Makefile.am
+++ b/src/libs/engine/Makefile.am
@@ -5,9 +5,16 @@ MAINTAINERCLEANFILES = Makefile.in
moduledir = $(libdir)/ingen
module_LTLIBRARIES = libingen_engine.la
-libingen_engine_la_CXXFLAGS = @RAUL_CFLAGS@ @JACK_CFLAGS@ @LOSC_CFLAGS@ @ALSA_CFLAGS@ @LASH_CFLAGS@ @SLV2_CFLAGS@ -I$(top_srcdir)/src/common -I$(top_srcdir)/src/libs/engine/events
+libingen_engine_la_CXXFLAGS = \
+ -I$(top_srcdir)/slv2 \
+ -I$(top_srcdir)/raul \
+ -I$(top_srcdir)/ingen/src/common \
+ -I$(top_srcdir)/ingen/src/libs \
+ -I$(top_srcdir)/ingen/src/libs/engine/events \
+ @JACK_CFLAGS@ @LIBLO_CFLAGS@ @ALSA_CFLAGS@ @LASH_CFLAGS@ @GLIBMM_CFLAGS@
+
libingen_engine_la_LDFLAGS = -no-undefined -module -avoid-version
-libingen_engine_la_LIBADD = @RAUL_LIBS@ @JACK_LIBS@ @LOSC_LIBS@ @ALSA_LIBS@ @LASH_LIBS@ @SLV2_LIBS@
+libingen_engine_la_LIBADD = @RAUL_LIBS@ @JACK_LIBS@ @LIBLO_LIBS@ @ALSA_LIBS@ @LASH_LIBS@ @SLV2_LIBS@ @GLIBMM_LIBS@
AM_CFLAGS=-std=c99
@@ -91,6 +98,7 @@ libingen_engine_la_SOURCES = \
Driver.h \
AudioDriver.h \
MidiDriver.h \
+ OSCDriver.h \
instantiations.cpp \
events/RegisterClientEvent.h \
events/RegisterClientEvent.cpp \
@@ -200,9 +208,9 @@ libingen_engine_la_SOURCES += \
LV2Node.cpp
endif
-if WITH_LASH
-libingen_engine_la_SOURCES += \
- LashDriver.h \
- LashDriver.cpp
-endif
+#if WITH_LASH
+#libingen_engine_la_SOURCES += \
+# LashDriver.h \
+# LashDriver.cpp
+#endif
diff --git a/src/libs/engine/OSCDriver.h b/src/libs/engine/OSCDriver.h
new file mode 100644
index 00000000..08294783
--- /dev/null
+++ b/src/libs/engine/OSCDriver.h
@@ -0,0 +1,83 @@
+/* This file is part of Ingen.
+ * Copyright (C) 2007 Dave Robillard <http://drobilla.net>
+ *
+ * Ingen is free software; you can redistribute it and/or modify it under the
+ * terms of the GNU General Public License as published by the Free Software
+ * Foundation; either version 2 of the License, or (at your option) any later
+ * version.
+ *
+ * Ingen is distributed in the hope that it will be useful, but WITHOUT ANY
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
+ *
+ * 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.,
+ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#ifndef OSCDRIVER_H
+#define OSCDRIVER_H
+
+#include "types.h"
+#include "Driver.h"
+#include <iostream>
+#include "OSCBuffer.h"
+
+namespace Ingen {
+
+
+/** OSC driver abstract base class.
+ *
+ * \ingroup engine
+ */
+class OSCDriver : public Driver
+{
+public:
+ OSCDriver() : Driver(DataType::OSC) {}
+
+ /** Prepare events (however neccessary) for the specified block (realtime safe) */
+ virtual void prepare_block(const SampleCount block_start, const SampleCount block_end) = 0;
+};
+
+
+
+/** Dummy OSCDriver.
+ *
+ * Not abstract, all functions are dummies. One of these will be allocated and
+ * "used" if no working OSC driver is loaded. (Doing it this way as opposed to
+ * just making OSCDriver have dummy functions makes sure any existing OSCDriver
+ * derived class actually implements the required functions).
+ *
+ * \ingroup engine
+ */
+class DummyOSCDriver : public OSCDriver
+{
+public:
+ DummyOSCDriver() {
+ std::cout << "[DummyOSCDriver] Started Dummy OSC driver." << std::endl;
+ }
+
+ ~DummyOSCDriver() {}
+
+ void activate() {}
+ void deactivate() {}
+
+ bool is_activated() const { return false; }
+ bool is_enabled() const { return false; }
+
+ void enable() {}
+ void disable() {}
+
+ DriverPort* create_port(DuplexPort* patch_port) { return NULL; }
+
+ void add_port(DriverPort* port) {}
+ DriverPort* remove_port(const Raul::Path& path) { return NULL; }
+
+ void prepare_block(const SampleCount block_start, const SampleCount block_end) {}
+};
+
+
+
+} // namespace Ingen
+
+#endif // OSCDRIVER_H
diff --git a/src/libs/engine/OmInProcess.cpp b/src/libs/engine/OmInProcess.cpp
index 2096204e..6893ebe2 100644
--- a/src/libs/engine/OmInProcess.cpp
+++ b/src/libs/engine/OmInProcess.cpp
@@ -22,9 +22,9 @@
#include "Engine.h"
#include "OSCReceiver.h"
#include "JackAudioDriver.h"
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
#include "LashDriver.h"
-#endif
+#endif*/
extern "C"
{
diff --git a/src/libs/engine/events.h b/src/libs/engine/events.h
index f1f4e78b..05b1a148 100644
--- a/src/libs/engine/events.h
+++ b/src/libs/engine/events.h
@@ -50,10 +50,6 @@
#include "PingQueuedEvent.h"
#include "MidiLearnEvent.h"
-#ifdef HAVE_LASH
-#include "LashRestoreDoneEvent.h"
-#endif
-
#ifdef HAVE_DSSI
#include "DSSIUpdateEvent.h"
#include "DSSIControlEvent.h"
diff --git a/src/libs/engine/events/LashRestoreDoneEvent.h b/src/libs/engine/events/LashRestoreDoneEvent.h
deleted file mode 100644
index fd33d813..00000000
--- a/src/libs/engine/events/LashRestoreDoneEvent.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* This file is part of Ingen.
- * Copyright (C) 2007 Dave Robillard <http://drobilla.net>
- *
- * Ingen is free software; you can redistribute it and/or modify it under the
- * terms of the GNU General Public License as published by the Free Software
- * Foundation; either version 2 of the License, or (at your option) any later
- * version.
- *
- * Ingen is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
- *
- * 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.,
- * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef LASHRESTOREDONEEVENT_H
-#define LASHRESTOREDONEEVENT_H
-
-#include "QueuedEvent.h"
-#include "LashDriver.h"
-#include "types.h"
-
-#include <iostream>
-using std::cerr;
-
-namespace Ingen {
-
-class Port;
-
-
-/** Notification from a client that the LASH session is finished restoring.
- *
- * This is a bit of a hack, but needed to defer notifying LASH of our
- * existance until all ports are created.
- *
- * \ingroup engine
- */
-class LashRestoreDoneEvent : public QueuedEvent
-{
-public:
- LashRestoreDoneEvent(Engine& engine, SharedPtr<Shared::Responder> responder, SampleCount timestamp) : QueuedEvent(engine, responder, timestamp) {}
-
- void post_process()
- {
- _responder->respond_ok();
- lash_driver->restore_finished();
- }
-};
-
-
-} // namespace Ingen
-
-#endif // LASHRESTOREDONEEVENT_H
diff --git a/src/libs/engine/tests/Makefile.am b/src/libs/engine/tests/Makefile.am
index 6faed130..9363f51f 100644
--- a/src/libs/engine/tests/Makefile.am
+++ b/src/libs/engine/tests/Makefile.am
@@ -1,7 +1,7 @@
if BUILD_UNIT_TESTS
-AM_CXXFLAGS = @JACK_CFLAGS@ @RAUL_CFLAGS@ @LOSC_CFLAGS@ @ALSA_CFLAGS@ -I../../common
-common_ldadd = @JACK_LIBS@ @RAUL_LIBS@ @LOSC_LIBS@ @ALSA_LIBS@ -lrt
+AM_CXXFLAGS = @JACK_CFLAGS@ @RAUL_CFLAGS@ @LIBLO_CFLAGS@ @ALSA_CFLAGS@ -I../../common
+common_ldadd = @JACK_LIBS@ @RAUL_LIBS@ @LIBLO_LIBS@ @ALSA_LIBS@ -lrt
node_tree_test_LDADD = $(common_ldadd)
noinst_PROGRAMS = node_tree_test
diff --git a/src/libs/gui/App.cpp b/src/libs/gui/App.cpp
index 7697ca11..7b815db2 100644
--- a/src/libs/gui/App.cpp
+++ b/src/libs/gui/App.cpp
@@ -15,7 +15,7 @@
* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
-#include "config.h"
+#include "../../../config/config.h"
#include "App.h"
#include <cassert>
#include <string>
@@ -41,9 +41,9 @@
#include "ConnectWindow.h"
#include "ThreadedLoader.h"
#include "WindowFactory.h"
-#ifdef HAVE_LASH
+/*#ifdef HAVE_LASH
#include "LashController.h"
-#endif
+#endif*/
using std::cerr; using std::cout; using std::endl;
using std::string;
namespace Ingen { namespace Client { class PluginModel; } }
diff --git a/src/libs/gui/ConnectWindow.cpp b/src/libs/gui/ConnectWindow.cpp
index 0bc24452..ae787c99 100644
--- a/src/libs/gui/ConnectWindow.cpp
+++ b/src/libs/gui/ConnectWindow.cpp
@@ -22,7 +22,7 @@
#include <sys/time.h>
#include <sys/resource.h>
#include <raul/Process.h>
-#include "config.h"
+#include "../../../../config/config.h"
#include "interface/ClientKey.h"
#include "interface/EngineInterface.h"
#include "engine/tuning.h"
diff --git a/src/libs/gui/Makefile.am b/src/libs/gui/Makefile.am
index c94ebbb5..13e082b1 100644
--- a/src/libs/gui/Makefile.am
+++ b/src/libs/gui/Makefile.am
@@ -12,18 +12,21 @@ moduledir = $(libdir)/ingen
module_LTLIBRARIES = libingen_gui.la
libingen_gui_la_CXXFLAGS = \
+ -I$(top_srcdir)/slv2 \
+ -I$(top_srcdir)/raul \
+ -I$(top_srcdir)/flowcanvas \
+ -I$(top_srcdir)/ingen/src/common \
+ -I$(top_srcdir)/ingen/src/libs \
-DPKGDATADIR=\"$(pkgdatadir)\" \
-DINGEN_MODULE_DIR=\"$(libdir)/ingen\" \
-DGTK_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED \
- @RAUL_CFLAGS@ @LOSC_CFLAGS@ @SLV2_CFLAGS@ @CURL_CFLAGS@ \
- @GTKMM_CFLAGS@ @LIBGLADEMM_CFLAGS@ @FLOWCANVAS_CFLAGS@ @GNOMECANVASMM_CFLAGS@ \
- -I$(top_srcdir)/src/common \
- -I$(top_srcdir)/src/libs
+ @LIBLO_CFLAGS@ @CURL_CFLAGS@ \
+ @GTKMM_CFLAGS@ @LIBGLADEMM_CFLAGS@ @GNOMECANVASMM_CFLAGS@
libingen_gui_la_LDFLAGS = -no-undefined -module -avoid-version
libingen_gui_la_LIBADD = \
- @RAUL_LIBS@ @LOSC_LIBS@ @SLV2_LIBS@ @CURL_LIBS@ \
+ @RAUL_LIBS@ @LIBLO_LIBS@ @SLV2_LIBS@ @CURL_LIBS@ \
@GTKMM_LIBS@ @LIBGLADEMM_LIBS@ @FLOWCANVAS_LIBS@ @GNOMECANVASMM_LIBS@ \
../module/libingen_module.la \
../client/libingen_client.la
diff --git a/src/libs/module/Makefile.am b/src/libs/module/Makefile.am
index 28cd2822..4d296f44 100644
--- a/src/libs/module/Makefile.am
+++ b/src/libs/module/Makefile.am
@@ -1,6 +1,6 @@
noinst_LTLIBRARIES = libingen_module.la
-libingen_module_la_CXXFLAGS = @RAUL_CFLAGS@ @GLIBMM_CFLAGS@ -DINGEN_MODULE_DIR=\"$(libdir)/ingen\"
+libingen_module_la_CXXFLAGS = -I$(top_srcdir)/raul -DINGEN_MODULE_DIR=\"$(libdir)/ingen\" @GLIBMM_CFLAGS@
libingen_module_la_LIBADD = @RAUL_LIBS@ @GLIBMM_LIBS@
diff --git a/src/libs/serialisation/Makefile.am b/src/libs/serialisation/Makefile.am
index f1343463..4dbacc5f 100644
--- a/src/libs/serialisation/Makefile.am
+++ b/src/libs/serialisation/Makefile.am
@@ -4,9 +4,9 @@ moduledir = $(libdir)/ingen
module_LTLIBRARIES = libingen_serialisation.la
-libingen_serialisation_la_CXXFLAGS = @RAUL_CFLAGS@ -I$(top_srcdir)/src/common
+libingen_serialisation_la_CXXFLAGS = -I$(top_srcdir)/ingen/src/common -I$(top_srcdir)/raul @GLIBMM_CFLAGS@
libingen_serialisation_la_LDFLAGS = -no-undefined -module -avoid-version
-libingen_serialisation_la_LIBADD = @RAUL_LIBS@
+libingen_serialisation_la_LIBADD = @RAUL_LIBS@ @GLIBMM_LIBS@
libingen_serialisation_la_SOURCES = \
serialisation.h \
diff --git a/src/progs/ingen/Makefile.am b/src/progs/ingen/Makefile.am
index 7a500868..7f84191e 100644
--- a/src/progs/ingen/Makefile.am
+++ b/src/progs/ingen/Makefile.am
@@ -1,13 +1,12 @@
-AM_CXXFLAGS = @RAUL_CFLAGS@ @GTHREAD_CFLAGS@ -I$(top_srcdir)/src/common -I$(top_srcdir)/src/libs -DINGEN_MODULE_DIR=\"$(libdir)/ingen\"
+AM_CXXFLAGS = -I$(top_srcdir)/raul -I$(top_srcdir)/ingen/src/common -I$(top_srcdir)/ingen/src/libs -DINGEN_MODULE_DIR=\"$(libdir)/ingen\" @GTHREAD_CFLAGS@ @GLIBMM_CFLAGS@
MAINTAINERCLEANFILES = Makefile.in
-EXTRA_DIST = ingen_dev
desktopfilesdir = $(datadir)/applications
dist_desktopfiles_DATA = ingen.desktop
bin_PROGRAMS = ingen
-ingen_LDADD = @RAUL_LIBS@ @GTHREAD_LIBS@../../libs/module/libingen_module.la
+ingen_LDADD = @RAUL_LIBS@ @GTHREAD_LIBS@ @GLIBMM_LIBS@ ../../libs/module/libingen_module.la
ingen_DEPENDENCIES = ../../libs/module/libingen_module.la
ingen_SOURCES = \