summaryrefslogtreecommitdiffstats
path: root/src/client
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-10-12 06:47:11 +0000
committerDavid Robillard <d@drobilla.net>2008-10-12 06:47:11 +0000
commitd154ae5b114a6a04acd17a83f6d59caa9ec1005a (patch)
tree5803f386ddfc608ec565226ad658c9562157ada7 /src/client
parent57698964f1e88b2b74a0ce31ffaba3044d884dac (diff)
downloadingen-d154ae5b114a6a04acd17a83f6d59caa9ec1005a.tar.gz
ingen-d154ae5b114a6a04acd17a83f6d59caa9ec1005a.tar.bz2
ingen-d154ae5b114a6a04acd17a83f6d59caa9ec1005a.zip
Split OSC/HTTP/JACK dependencies from ingen into separate libraries so engine library doesn't have a link time dependence on liblo/soap/libjack.
Preliminary Ingen LV2 code wrapper (not functional yet). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@1653 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/client')
-rw-r--r--src/client/OSCEngineSender.hpp5
-rw-r--r--src/client/client.cpp12
-rw-r--r--src/client/wscript2
3 files changed, 11 insertions, 8 deletions
diff --git a/src/client/OSCEngineSender.hpp b/src/client/OSCEngineSender.hpp
index ef4a2fa3..ea156c34 100644
--- a/src/client/OSCEngineSender.hpp
+++ b/src/client/OSCEngineSender.hpp
@@ -41,9 +41,12 @@ namespace Client {
class OSCEngineSender : public EngineInterface, public Shared::OSCSender {
public:
OSCEngineSender(const string& engine_url);
-
~OSCEngineSender();
+ static OSCEngineSender* create(const std::string& engine_url) {
+ return new OSCEngineSender(engine_url);
+ }
+
std::string uri() const { return _engine_url; }
inline int32_t next_id()
diff --git a/src/client/client.cpp b/src/client/client.cpp
index 8e51fb23..88ff07aa 100644
--- a/src/client/client.cpp
+++ b/src/client/client.cpp
@@ -6,7 +6,7 @@
* 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
+ * Ingen is distributed in the hope that it will be useful, but HAVEOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
*
@@ -19,10 +19,10 @@
#include <iostream>
#include "client.hpp"
-#ifdef WITH_LIBLO
+#ifdef HAVE_LIBLO
#include "OSCEngineSender.hpp"
#endif
-#ifdef WITH_SOUP
+#ifdef HAVE_SOUP
#include "HTTPEngineSender.hpp"
#endif
@@ -37,15 +37,15 @@ new_remote_interface(const std::string& url)
{
const string scheme = url.substr(0, url.find(":"));
-#ifdef WITH_LIBLO
+#ifdef HAVE_LIBLO
if (scheme == "osc.udp" || scheme == "osc.tcp") {
- OSCEngineSender* oes = new OSCEngineSender(url);
+ OSCEngineSender* oes = OSCEngineSender::create(url);
oes->attach(rand(), true);
return SharedPtr<Shared::EngineInterface>(oes);
}
#endif
-#ifdef WITH_SOUP
+#ifdef HAVE_SOUP
if (scheme == "http") {
HTTPEngineSender* hes = new HTTPEngineSender(url);
hes->attach(rand(), true);
diff --git a/src/client/wscript b/src/client/wscript
index b351e3c2..65597d0f 100644
--- a/src/client/wscript
+++ b/src/client/wscript
@@ -32,5 +32,5 @@ def build(bld):
obj.name = 'libingen_client'
obj.target = 'ingen_client'
obj.inst_dir = 'lib/ingen'
- autowaf.use_lib(bld, obj, 'GLIBMM LV2CORE SLV2 RAUL REDLANDMM SOUP XML2 SIGCPP')
+ autowaf.use_lib(bld, obj, 'GLIBMM LV2CORE SLV2 RAUL REDLANDMM SOUP XML2 SIGCPP LIBLO SOUP')