diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/clients/new/PatchLibrarian.cpp | 824 | ||||
-rw-r--r-- | src/clients/new/PatchLibrarian.h | 66 | ||||
-rw-r--r-- | src/clients/new/patch_loader/Makefile.am | 13 | ||||
-rw-r--r-- | src/clients/new/patch_loader/patch_loader.cpp | 76 | ||||
-rw-r--r-- | src/clients/patch_loader/README | 5 | ||||
-rw-r--r-- | src/clients/patch_loader/cmdline.c | 163 | ||||
-rw-r--r-- | src/clients/patch_loader/cmdline.ggo | 7 | ||||
-rw-r--r-- | src/clients/patch_loader/cmdline.h | 47 | ||||
-rw-r--r-- | src/libs/client/ConnectionModel.cpp (renamed from src/clients/ConnectionModel.cpp) | 0 | ||||
-rw-r--r-- | src/libs/client/ConnectionModel.h (renamed from src/clients/ConnectionModel.h) | 0 | ||||
-rw-r--r-- | src/libs/client/ControlModel.h (renamed from src/clients/ControlModel.h) | 0 | ||||
-rw-r--r-- | src/libs/client/DirectSigClientInterface.h (renamed from src/clients/DirectSigClientInterface.h) | 0 | ||||
-rw-r--r-- | src/libs/client/Makefile.am (renamed from src/clients/Makefile.am) | 0 | ||||
-rw-r--r-- | src/libs/client/ModelClientInterface.cpp (renamed from src/clients/ModelClientInterface.cpp) | 0 | ||||
-rw-r--r-- | src/libs/client/ModelClientInterface.h (renamed from src/clients/ModelClientInterface.h) | 0 | ||||
-rw-r--r-- | src/libs/client/ModelEngineInterface.h (renamed from src/clients/ModelEngineInterface.h) | 0 | ||||
-rw-r--r-- | src/libs/client/NodeModel.cpp (renamed from src/clients/NodeModel.cpp) | 0 | ||||
-rw-r--r-- | src/libs/client/NodeModel.h (renamed from src/clients/NodeModel.h) | 0 | ||||
-rw-r--r-- | src/libs/client/OSCEngineInterface.cpp (renamed from src/clients/OSCEngineInterface.cpp) | 0 | ||||
-rw-r--r-- | src/libs/client/OSCEngineInterface.h (renamed from src/clients/OSCEngineInterface.h) | 0 | ||||
-rw-r--r-- | src/libs/client/OSCListener.cpp (renamed from src/clients/OSCListener.cpp) | 0 | ||||
-rw-r--r-- | src/libs/client/OSCListener.h (renamed from src/clients/OSCListener.h) | 0 | ||||
-rw-r--r-- | src/libs/client/OSCModelEngineInterface.cpp (renamed from src/clients/OSCModelEngineInterface.cpp) | 0 | ||||
-rw-r--r-- | src/libs/client/OSCModelEngineInterface.h (renamed from src/clients/OSCModelEngineInterface.h) | 0 | ||||
-rw-r--r-- | src/libs/client/ObjectController.h (renamed from src/clients/ObjectController.h) | 0 | ||||
-rw-r--r-- | src/libs/client/ObjectModel.cpp (renamed from src/clients/ObjectModel.cpp) | 0 | ||||
-rw-r--r-- | src/libs/client/ObjectModel.h (renamed from src/clients/ObjectModel.h) | 0 | ||||
-rw-r--r-- | src/libs/client/PatchLibrarian.cpp (renamed from src/clients/PatchLibrarian.cpp) | 0 | ||||
-rw-r--r-- | src/libs/client/PatchLibrarian.cpp.new (renamed from src/clients/PatchLibrarian.cpp.new) | 0 | ||||
-rw-r--r-- | src/libs/client/PatchLibrarian.h (renamed from src/clients/PatchLibrarian.h) | 0 | ||||
-rw-r--r-- | src/libs/client/PatchModel.cpp (renamed from src/clients/PatchModel.cpp) | 0 | ||||
-rw-r--r-- | src/libs/client/PatchModel.h (renamed from src/clients/PatchModel.h) | 0 | ||||
-rw-r--r-- | src/libs/client/PluginModel.h (renamed from src/clients/PluginModel.h) | 0 | ||||
-rw-r--r-- | src/libs/client/PortModel.h (renamed from src/clients/PortModel.h) | 0 | ||||
-rw-r--r-- | src/libs/client/PresetModel.h (renamed from src/clients/PresetModel.h) | 0 | ||||
-rw-r--r-- | src/libs/client/SigClientInterface.h (renamed from src/clients/SigClientInterface.h) | 0 | ||||
-rw-r--r-- | src/libs/client/ThreadedSigClientInterface.cpp (renamed from src/clients/ThreadedSigClientInterface.cpp) | 0 | ||||
-rw-r--r-- | src/libs/client/ThreadedSigClientInterface.h (renamed from src/clients/ThreadedSigClientInterface.h) | 0 | ||||
-rw-r--r-- | src/libs/engine/Makefile.am | 83 | ||||
-rw-r--r-- | src/progs/console/ConsoleClientHooks.cpp (renamed from src/clients/console/ConsoleClientHooks.cpp) | 0 | ||||
-rw-r--r-- | src/progs/console/ConsoleClientHooks.h (renamed from src/clients/console/ConsoleClientHooks.h) | 0 | ||||
-rw-r--r-- | src/progs/console/Makefile.am (renamed from src/clients/console/Makefile.am) | 0 | ||||
-rw-r--r-- | src/progs/console/README (renamed from src/clients/console/README) | 0 | ||||
-rw-r--r-- | src/progs/console/console_client.cpp (renamed from src/clients/console/console_client.cpp) | 0 | ||||
-rw-r--r-- | src/progs/console/patches/COPYING (renamed from src/clients/console/patches/COPYING) | 0 | ||||
-rw-r--r-- | src/progs/console/patches/dssi_test.omp (renamed from src/clients/console/patches/dssi_test.omp) | 0 | ||||
-rw-r--r-- | src/progs/console/patches/filter_patch.omp (renamed from src/clients/console/patches/filter_patch.omp) | 0 | ||||
-rw-r--r-- | src/progs/console/patches/old_super_simple_patch.omp (renamed from src/clients/console/patches/old_super_simple_patch.omp) | 0 | ||||
-rw-r--r-- | src/progs/console/patches/send_test.omp (renamed from src/clients/console/patches/send_test.omp) | 0 | ||||
-rw-r--r-- | src/progs/console/patches/simple_patch.omp (renamed from src/clients/console/patches/simple_patch.omp) | 0 | ||||
-rw-r--r-- | src/progs/console/patches/super_simple_patch.omp (renamed from src/clients/console/patches/super_simple_patch.omp) | 0 | ||||
-rw-r--r-- | src/progs/console/patches/test_patch.omp (renamed from src/clients/console/patches/test_patch.omp) | 0 | ||||
-rw-r--r-- | src/progs/demolition/DemolitionClientInterface.cpp (renamed from src/clients/demolition/DemolitionClientInterface.cpp) | 0 | ||||
-rw-r--r-- | src/progs/demolition/DemolitionClientInterface.h (renamed from src/clients/demolition/DemolitionClientInterface.h) | 0 | ||||
-rw-r--r-- | src/progs/demolition/DemolitionModel.cpp (renamed from src/clients/demolition/DemolitionModel.cpp) | 0 | ||||
-rw-r--r-- | src/progs/demolition/DemolitionModel.h (renamed from src/clients/demolition/DemolitionModel.h) | 0 | ||||
-rw-r--r-- | src/progs/demolition/Makefile.am (renamed from src/clients/demolition/Makefile.am) | 0 | ||||
-rw-r--r-- | src/progs/demolition/README (renamed from src/clients/demolition/README) | 0 | ||||
-rw-r--r-- | src/progs/demolition/cmdline.c (renamed from src/clients/demolition/cmdline.c) | 0 | ||||
-rw-r--r-- | src/progs/demolition/cmdline.ggo (renamed from src/clients/demolition/cmdline.ggo) | 0 | ||||
-rw-r--r-- | src/progs/demolition/cmdline.h (renamed from src/clients/demolition/cmdline.h) | 0 | ||||
-rw-r--r-- | src/progs/demolition/demolition.cpp (renamed from src/clients/demolition/demolition.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/App.cpp (renamed from src/clients/gtk/App.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/App.h (renamed from src/clients/gtk/App.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/BreadCrumb.h (renamed from src/clients/gtk/BreadCrumb.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/ConfigWindow.cpp (renamed from src/clients/gtk/ConfigWindow.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/ConfigWindow.h (renamed from src/clients/gtk/ConfigWindow.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/Configuration.cpp (renamed from src/clients/gtk/Configuration.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/Configuration.h (renamed from src/clients/gtk/Configuration.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/ConnectWindow.cpp (renamed from src/clients/gtk/ConnectWindow.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/ConnectWindow.h (renamed from src/clients/gtk/ConnectWindow.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/ControlGroups.cpp (renamed from src/clients/gtk/ControlGroups.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/ControlGroups.h (renamed from src/clients/gtk/ControlGroups.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/ControlInterface.cpp (renamed from src/clients/gtk/ControlInterface.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/ControlInterface.h (renamed from src/clients/gtk/ControlInterface.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/ControlPanel.cpp (renamed from src/clients/gtk/ControlPanel.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/ControlPanel.h (renamed from src/clients/gtk/ControlPanel.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/Controller.cpp (renamed from src/clients/gtk/Controller.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/Controller.h (renamed from src/clients/gtk/Controller.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/DSSIController.cpp (renamed from src/clients/gtk/DSSIController.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/DSSIController.h (renamed from src/clients/gtk/DSSIController.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/DSSIModule.cpp (renamed from src/clients/gtk/DSSIModule.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/DSSIModule.h (renamed from src/clients/gtk/DSSIModule.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/GladeFactory.cpp (renamed from src/clients/gtk/GladeFactory.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/GladeFactory.h (renamed from src/clients/gtk/GladeFactory.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/GtkClientInterface.cpp (renamed from src/clients/gtk/GtkClientInterface.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/GtkClientInterface.h (renamed from src/clients/gtk/GtkClientInterface.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/GtkObjectController.cpp (renamed from src/clients/gtk/GtkObjectController.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/GtkObjectController.h (renamed from src/clients/gtk/GtkObjectController.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/LashController.cpp (renamed from src/clients/gtk/LashController.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/LashController.h (renamed from src/clients/gtk/LashController.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/LoadPatchWindow.cpp (renamed from src/clients/gtk/LoadPatchWindow.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/LoadPatchWindow.h (renamed from src/clients/gtk/LoadPatchWindow.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/LoadPluginWindow.cpp (renamed from src/clients/gtk/LoadPluginWindow.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/LoadPluginWindow.h (renamed from src/clients/gtk/LoadPluginWindow.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/LoadSubpatchWindow.cpp (renamed from src/clients/gtk/LoadSubpatchWindow.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/LoadSubpatchWindow.h (renamed from src/clients/gtk/LoadSubpatchWindow.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/Loader.cpp (renamed from src/clients/gtk/Loader.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/Loader.h (renamed from src/clients/gtk/Loader.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/Makefile.am (renamed from src/clients/gtk/Makefile.am) | 0 | ||||
-rw-r--r-- | src/progs/gtk/MessagesWindow.cpp (renamed from src/clients/gtk/MessagesWindow.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/MessagesWindow.h (renamed from src/clients/gtk/MessagesWindow.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/NewSubpatchWindow.cpp (renamed from src/clients/gtk/NewSubpatchWindow.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/NewSubpatchWindow.h (renamed from src/clients/gtk/NewSubpatchWindow.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/NodeControlWindow.cpp (renamed from src/clients/gtk/NodeControlWindow.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/NodeControlWindow.h (renamed from src/clients/gtk/NodeControlWindow.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/NodeController.cpp (renamed from src/clients/gtk/NodeController.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/NodeController.h (renamed from src/clients/gtk/NodeController.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/NodePropertiesWindow.cpp (renamed from src/clients/gtk/NodePropertiesWindow.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/NodePropertiesWindow.h (renamed from src/clients/gtk/NodePropertiesWindow.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/OmFlowCanvas.cpp (renamed from src/clients/gtk/OmFlowCanvas.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/OmFlowCanvas.h (renamed from src/clients/gtk/OmFlowCanvas.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/OmModule.cpp (renamed from src/clients/gtk/OmModule.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/OmModule.h (renamed from src/clients/gtk/OmModule.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/OmPort.cpp (renamed from src/clients/gtk/OmPort.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/OmPort.h (renamed from src/clients/gtk/OmPort.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/PatchController.cpp (renamed from src/clients/gtk/PatchController.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/PatchController.h (renamed from src/clients/gtk/PatchController.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/PatchDescriptionWindow.cpp (renamed from src/clients/gtk/PatchDescriptionWindow.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/PatchDescriptionWindow.h (renamed from src/clients/gtk/PatchDescriptionWindow.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/PatchTreeWindow.cpp (renamed from src/clients/gtk/PatchTreeWindow.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/PatchTreeWindow.h (renamed from src/clients/gtk/PatchTreeWindow.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/PatchView.cpp (renamed from src/clients/gtk/PatchView.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/PatchView.h (renamed from src/clients/gtk/PatchView.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/PatchWindow.cpp (renamed from src/clients/gtk/PatchWindow.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/PatchWindow.h (renamed from src/clients/gtk/PatchWindow.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/PortController.cpp (renamed from src/clients/gtk/PortController.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/PortController.h (renamed from src/clients/gtk/PortController.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/RenameWindow.cpp (renamed from src/clients/gtk/RenameWindow.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/RenameWindow.h (renamed from src/clients/gtk/RenameWindow.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/Store.cpp (renamed from src/clients/gtk/Store.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/Store.h (renamed from src/clients/gtk/Store.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/SubpatchModule.cpp (renamed from src/clients/gtk/SubpatchModule.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/SubpatchModule.h (renamed from src/clients/gtk/SubpatchModule.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/cmdline.c (renamed from src/clients/gtk/cmdline.c) | 0 | ||||
-rw-r--r-- | src/progs/gtk/cmdline.ggo (renamed from src/clients/gtk/cmdline.ggo) | 0 | ||||
-rw-r--r-- | src/progs/gtk/cmdline.h (renamed from src/clients/gtk/cmdline.h) | 0 | ||||
-rw-r--r-- | src/progs/gtk/main.cpp (renamed from src/clients/gtk/main.cpp) | 0 | ||||
-rw-r--r-- | src/progs/gtk/om-icon.png (renamed from src/clients/gtk/om-icon.png) | bin | 1189 -> 1189 bytes | |||
-rw-r--r-- | src/progs/gtk/om_gtk.glade (renamed from src/clients/gtk/om_gtk.glade) | 0 | ||||
-rw-r--r-- | src/progs/gtk/om_gtk.glade.bak (renamed from src/clients/gtk/om_gtk.glade.bak) | 0 | ||||
-rw-r--r-- | src/progs/gtk/om_gtk.gladep (renamed from src/clients/gtk/om_gtk.gladep) | 0 | ||||
-rw-r--r-- | src/progs/gtk/om_gtk.gladep.bak (renamed from src/clients/gtk/om_gtk.gladep.bak) | 0 | ||||
-rw-r--r-- | src/progs/gtk/singletons.cpp (renamed from src/clients/gtk/singletons.cpp) | 0 | ||||
-rw-r--r-- | src/progs/om/Makefile.am | 254 | ||||
-rw-r--r-- | src/progs/om/cmdline.c (renamed from src/libs/engine/cmdline.c) | 0 | ||||
-rw-r--r-- | src/progs/om/cmdline.ggo (renamed from src/libs/engine/cmdline.ggo) | 0 | ||||
-rw-r--r-- | src/progs/om/cmdline.h (renamed from src/libs/engine/cmdline.h) | 0 | ||||
-rw-r--r-- | src/progs/om/main.cpp (renamed from src/libs/engine/main.cpp) | 0 | ||||
-rw-r--r-- | src/progs/patch_loader/Makefile.am (renamed from src/clients/patch_loader/Makefile.am) | 0 | ||||
-rw-r--r-- | src/progs/patch_loader/README (renamed from src/clients/new/patch_loader/README) | 0 | ||||
-rw-r--r-- | src/progs/patch_loader/cmdline.c (renamed from src/clients/new/patch_loader/cmdline.c) | 0 | ||||
-rw-r--r-- | src/progs/patch_loader/cmdline.ggo (renamed from src/clients/new/patch_loader/cmdline.ggo) | 0 | ||||
-rw-r--r-- | src/progs/patch_loader/cmdline.h (renamed from src/clients/new/patch_loader/cmdline.h) | 0 | ||||
-rw-r--r-- | src/progs/patch_loader/new_patch_loader.cpp (renamed from src/clients/patch_loader/new_patch_loader.cpp) | 0 | ||||
-rw-r--r-- | src/progs/patch_loader/patch_loader.cpp (renamed from src/clients/patch_loader/patch_loader.cpp) | 0 | ||||
-rw-r--r-- | src/progs/python/Makefile.am (renamed from src/clients/python/Makefile.am) | 0 | ||||
-rwxr-xr-x | src/progs/python/OSC.py (renamed from src/clients/python/OSC.py) | 0 | ||||
-rw-r--r-- | src/progs/python/omecho.py (renamed from src/clients/python/omecho.py) | 0 | ||||
-rw-r--r-- | src/progs/python/omsynth.py (renamed from src/clients/python/omsynth.py) | 0 | ||||
-rw-r--r-- | src/progs/python/scripts/Makefile.am (renamed from src/clients/python/scripts/Makefile.am) | 0 | ||||
-rwxr-xr-x | src/progs/python/scripts/flatten.py (renamed from src/clients/python/scripts/flatten.py) | 0 | ||||
-rw-r--r-- | src/progs/python/scripts/sillysinepatch.py (renamed from src/clients/python/scripts/sillysinepatch.py) | 0 | ||||
-rw-r--r-- | src/progs/supercollider/Makefile.am (renamed from src/clients/supercollider/Makefile.am) | 0 | ||||
-rw-r--r-- | src/progs/supercollider/Om.sc (renamed from src/clients/supercollider/Om.sc) | 0 | ||||
-rw-r--r-- | src/progs/supercollider/README (renamed from src/clients/supercollider/README) | 0 | ||||
-rw-r--r-- | src/progs/supercollider/example.sc (renamed from src/clients/supercollider/example.sc) | 0 |
167 files changed, 36 insertions, 1502 deletions
diff --git a/src/clients/new/PatchLibrarian.cpp b/src/clients/new/PatchLibrarian.cpp deleted file mode 100644 index 66c013e5..00000000 --- a/src/clients/new/PatchLibrarian.cpp +++ /dev/null @@ -1,824 +0,0 @@ -/* This file is part of Om. Copyright (C) 2005 Dave Robillard. - * - * Om 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. - * - * Om 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., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#include "PatchLibrarian.h" -#include <libxml/parser.h> -#include <libxml/tree.h> -#include <libxml/xpath.h> -#include "PatchModel.h" -#include "NodeModel.h" -#include "ConnectionModel.h" -#include "PortModel.h" -#include "PresetModel.h" -#include "OSCModelEngineInterface.h" -#include "PluginModel.h" -#include "util/Path.h" -#include <iostream> -#include <fstream> -#include <vector> -#include <utility> // for pair, make_pair -#include <cassert> -#include <cstring> -#include <string> -#include <unistd.h> // for usleep -#include <cstdlib> // for atof -#include <cmath> - -using std::string; using std::vector; using std::pair; -using std::cerr; using std::cout; using std::endl; -using Om::Path; - -namespace LibOmClient { - - -/** Load a patch in to the engine (and client) from a patch file. - * - * The name and poly from the passed PatchModel are used. If the name is - * the empty string, the name will be loaded from the file. If the poly - * is 0, it will be loaded from file. Otherwise the given values will - * be used. - * - * @param parent_path Path of the patch to create the new patch under. - * - * @param name Name to give the new Patch. If @a name is the empty string, - * the name stored in the patch file will be used. - * - * @param poly The polyphony of the new patch if nonzero, otherwise the - * polyphony value stored in the patch file will be used. - * - * @return true on success. - */ -bool -PatchLibrarian::load_patch(EngineInterface* engine, - const string& filename, - const Path& parent_path, - string name, - uint32_t poly) -{ - cerr << "Loading patch " << filename << "" << endl; - - //const size_t temp_buf_length = 255; - //char temp_buf[temp_buf_length]; - - xmlDocPtr doc = xmlParseFile(filename.c_str()); - - if (doc == NULL ) { - cerr << "Unable to parse patch file." << endl; - return false; - } - - xmlNodePtr cur = xmlDocGetRootElement(doc); - - if (cur == NULL) { - cerr << "Document has no root element." << endl; - xmlFreeDoc(doc); - return false; - } - - if (xmlStrcmp(cur->name, (const xmlChar*) "patch")) { - cerr << "File is not an Om patch file (root node != patch)." << endl; - xmlFreeDoc(doc); - return false; - } - - cur = cur->xmlChildrenNode; - string path; - - map<string, string> metadata; - - // Load Patch attributes - while (cur != NULL) { - xmlChar* const key = xmlNodeListGetString(doc, cur->xmlChildrenNode, 1); - - if ((!xmlStrcmp(cur->name, (const xmlChar*)"name"))) { - if (name == "") { - assert(key); - name = (char*)key; - } - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"polyphony"))) { - if (poly == 0) { - assert(key); - poly = atoi((char*)key); // FIXME: error checking - } - /* Don't know what this tag is, add it as metadata without overwriting - * (so caller can set arbitrary metadata which will be preserved) - * FIXME: this is just plain filthy. XML is not RDF. */ - } else if (key - && xmlStrcmp(cur->name, (const xmlChar*)"connection") - && xmlStrcmp(cur->name, (const xmlChar*)"node") - && xmlStrcmp(cur->name, (const xmlChar*)"subpatch") - && xmlStrcmp(cur->name, (const xmlChar*)"filename") - && xmlStrcmp(cur->name, (const xmlChar*)"preset")) { - - metadata[(char*)cur->name] == (char*)key; - } - - xmlFree(key); - - cur = cur->next; - } - - - // Didn't find a polyphony value, set monophonic by default - if (poly == 0) poly = 1; - - - /* FIXME: This functionality needs to be implemented (elsewhere) - if (!existing) { - // Wait until the patch is created or the node creations may fail - if (wait) { - int id = m_osc_controller->get_next_request_id(); - m_osc_controller->set_wait_response_id(id); - m_osc_controller->create_patch(pm, id); - bool succeeded = m_osc_controller->wait_for_response(); - - // If creating the patch failed, bail out so we don't load all these nodes - // into an already existing patch - if (!succeeded) { - cerr << "[PatchLibrarian] Patch load failed (patch already exists)" << endl; - return ""; - } - } else { - m_osc_controller->create_patch(pm); - } - } - */ - engine->create_patch(path, poly, -1); - - - /* Set the filename metadata. (FIXME) - * This isn't so good, considering multiple clients on multiple machines, and - * absolute filesystem paths obviously aren't going to be correct. But for now - * this is all I can figure out to have Save/Save As work properly for subpatches */ - engine->set_metadata(path, "filename", filename); - -#if 0 - // Load nodes - NodeModel* nm = NULL; - cur = xmlDocGetRootElement(doc)->xmlChildrenNode; - - while (cur != NULL) { - if ((!xmlStrcmp(cur->name, (const xmlChar*)"node"))) { - nm = parse_node(pm, doc, cur); - if (nm != NULL) { - m_osc_controller->add_node(nm); - m_osc_controller->set_all_metadata(nm); - for (list<PortModel*>::const_iterator j = nm->ports().begin(); - j != nm->ports().end(); ++j) { - // FIXME: ew - snprintf(temp_buf, temp_buf_length, "%f", (*j)->user_min()); - m_osc_controller->set_metadata((*j)->path(), "user-min", temp_buf); - snprintf(temp_buf, temp_buf_length, "%f", (*j)->user_max()); - m_osc_controller->set_metadata((*j)->path(), "user-max", temp_buf); - } - nm = NULL; - usleep(10000); - } - } - cur = cur->next; - } - - // Load subpatches - cur = xmlDocGetRootElement(doc)->xmlChildrenNode; - while (cur != NULL) { - if ((!xmlStrcmp(cur->name, (const xmlChar*)"subpatch"))) { - load_subpatch(pm, doc, cur); - } - cur = cur->next; - } - - // Load connections - ConnectionModel* cm = NULL; - cur = xmlDocGetRootElement(doc)->xmlChildrenNode; - while (cur != NULL) { - if ((!xmlStrcmp(cur->name, (const xmlChar*)"connection"))) { - cm = parse_connection(pm, doc, cur); - if (cm != NULL) { - m_osc_controller->connect(cm->src_port_path(), cm->dst_port_path()); - usleep(1000); - } - } - cur = cur->next; - } - - - // Load presets (control values) - PresetModel* preset_model = NULL; - cur = xmlDocGetRootElement(doc)->xmlChildrenNode; - while (cur != NULL) { - if ((!xmlStrcmp(cur->name, (const xmlChar*)"preset"))) { - preset_model = parse_preset(pm, doc, cur); - assert(preset_model != NULL); - if (preset_model->name() == "default") - m_osc_controller->set_preset(pm->path(), preset_model); - } - cur = cur->next; - } -#endif - xmlFreeDoc(doc); - xmlCleanupParser(); - - //m_osc_controller->set_all_metadata(pm); - - //if (!existing) - // m_osc_controller->enable_patch(pm->path()); - - return true; -} - - -#if 0 -/** Searches for the filename passed in the path, returning the full - * path of the file, or the empty string if not found. - * - * This function tries to be as friendly a black box as possible - if the path - * passed is an absolute path and the file is found there, it will return - * that path, etc. - * - * additional_path is a list (colon delimeted as usual) of additional - * directories to look in. ie the directory the parent patch resides in would - * be a good idea to pass as additional_path, in the case of a subpatch. - */ -string -PatchLibrarian::find_file(const string& filename, const string& additional_path) -{ - string search_path = additional_path + ":" + m_patch_path; - - // Try to open the raw filename first - std::ifstream is(filename.c_str(), std::ios::in); - if (is.good()) { - is.close(); - return filename; - } - - string directory; - string full_patch_path = ""; - - while (search_path != "") { - directory = search_path.substr(0, search_path.find(':')); - if (search_path.find(':') != string::npos) - search_path = search_path.substr(search_path.find(':')+1); - else - search_path = ""; - - full_patch_path = directory +"/"+ filename; - - std::ifstream is; - is.open(full_patch_path.c_str(), std::ios::in); - - if (is.good()) { - is.close(); - return full_patch_path; - } else { - cerr << "[PatchLibrarian] Could not find patch file " << full_patch_path << endl; - } - } - - return ""; -} - - -/** Save a patch from a PatchModel to a filename. - * - * The filename passed is the true filename the patch will be saved to (with no prefixing or anything - * like that), and the patch_model's filename member will be set accordingly. - * - * This will break if: - * - The filename does not have an extension (ie contain a ".") - * - The patch_model has no (Om) path - */ -void -PatchLibrarian::save_patch(PatchModel* patch_model, const string& filename, bool recursive) -{ - assert(filename != ""); - assert(patch_model->path() != ""); - - cout << "Saving patch " << patch_model->path() << " to " << filename << endl; - - patch_model->filename(filename); - - string dir = filename.substr(0, filename.find_last_of("/")); - - NodeModel* nm = NULL; - PatchModel* spm = NULL; // subpatch model - - xmlDocPtr xml_doc = NULL; - xmlNodePtr xml_root_node = NULL; - xmlNodePtr xml_node = NULL; - xmlNodePtr xml_child_node = NULL; - xmlNodePtr xml_grandchild_node = NULL; - - xml_doc = xmlNewDoc((xmlChar*)"1.0"); - xml_root_node = xmlNewNode(NULL, (xmlChar*)"patch"); - xmlDocSetRootElement(xml_doc, xml_root_node); - - const size_t temp_buf_length = 255; - char temp_buf[temp_buf_length]; - - string patch_name; - if (patch_model->path() != "/") { - patch_name = patch_model->name(); - } else { - patch_name = filename; - if (patch_name.find("/") != string::npos) - patch_name = patch_name.substr(patch_name.find_last_of("/") + 1); - if (patch_name.find(".") != string::npos) - patch_name = patch_name.substr(0, patch_name.find_last_of(".")); - } - - assert(patch_name.length() > 0); - xml_node = xmlNewChild(xml_root_node, NULL, (xmlChar*)"name", - (xmlChar*)patch_name.c_str()); - - snprintf(temp_buf, temp_buf_length, "%zd", patch_model->poly()); - xml_node = xmlNewChild(xml_root_node, NULL, (xmlChar*)"polyphony", (xmlChar*)temp_buf); - - // Write metadata - for (map<string, string>::const_iterator i = patch_model->metadata().begin(); - i != patch_model->metadata().end(); ++i) { - // Dirty hack, don't save coordinates in patch file - if ((*i).first != "module-x" && (*i).first != "module-y" - && (*i).first != "filename") - xml_node = xmlNewChild(xml_root_node, NULL, - (xmlChar*)(*i).first.c_str(), (xmlChar*)(*i).second.c_str()); - - assert((*i).first != "node"); - assert((*i).first != "subpatch"); - assert((*i).first != "name"); - assert((*i).first != "polyphony"); - assert((*i).first != "preset"); - } - - // Save nodes and subpatches - for (NodeModelMap::const_iterator i = patch_model->nodes().begin(); i != patch_model->nodes().end(); ++i) { - nm = i->second; - - if (nm->plugin()->type() == PluginModel::Patch) { // Subpatch - spm = (PatchModel*)i->second; - xml_node = xmlNewChild(xml_root_node, NULL, (xmlChar*)"subpatch", NULL); - - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"name", (xmlChar*)spm->name().c_str()); - - string ref_filename; - // No path - if (spm->filename() == "") { - ref_filename = spm->name() + ".om"; - spm->filename(dir +"/"+ ref_filename); - // Absolute path - } else if (spm->filename().substr(0, 1) == "/") { - // Attempt to make it a relative path, if it's undernath this patch's dir - if (dir.substr(0, 1) == "/" && spm->filename().substr(0, dir.length()) == dir) { - ref_filename = spm->filename().substr(dir.length()+1); - } else { // FIXME: not good - ref_filename = spm->filename().substr(spm->filename().find_last_of("/")+1); - spm->filename(dir +"/"+ ref_filename); - } - } else { - ref_filename = spm->filename(); - } - - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"filename", (xmlChar*)ref_filename.c_str()); - - snprintf(temp_buf, temp_buf_length, "%zd", spm->poly()); - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"polyphony", (xmlChar*)temp_buf); - - // Write metadata - for (map<string, string>::const_iterator i = nm->metadata().begin(); - i != nm->metadata().end(); ++i) { - // Dirty hack, don't save metadata that would be in patch file - if ((*i).first != "polyphony" && (*i).first != "filename" - && (*i).first != "author" && (*i).first != "description") - xml_child_node = xmlNewChild(xml_node, NULL, - (xmlChar*)(*i).first.c_str(), (xmlChar*)(*i).second.c_str()); - } - - if (recursive) - save_patch(spm, spm->filename(), true); - - } else { // Normal node - xml_node = xmlNewChild(xml_root_node, NULL, (xmlChar*)"node", NULL); - - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"name", (xmlChar*)nm->name().c_str()); - - if (nm->plugin() == NULL) break; - - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"polyphonic", - (xmlChar*)((nm->polyphonic()) ? "true" : "false")); - - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"type", - (xmlChar*)nm->plugin()->type_string()); - /* - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"plugin-label", - (xmlChar*)(nm->plugin()->plug_label().c_str())); - - if (nm->plugin()->type() != PluginModel::Internal) { - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"library-name", - (xmlChar*)(nm->plugin()->lib_name().c_str())); - }*/ - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"plugin-uri", - (xmlChar*)(nm->plugin()->uri().c_str())); - - // Write metadata - for (map<string, string>::const_iterator i = nm->metadata().begin(); i != nm->metadata().end(); ++i) { - // DSSI _hack_ (FIXME: fix OSC to be more like this and not smash DSSI into metadata?) - if ((*i).first.substr(0, 16) == "dssi-configure--") { - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"dssi-configure", NULL); - xml_grandchild_node = xmlNewChild(xml_child_node, NULL, - (xmlChar*)"key", (xmlChar*)(*i).first.substr(16).c_str()); - xml_grandchild_node = xmlNewChild(xml_child_node, NULL, - (xmlChar*)"value", (xmlChar*)(*i).second.c_str()); - } else if ((*i).first == "dssi-program") { - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"dssi-program", NULL); - xml_grandchild_node = xmlNewChild(xml_child_node, NULL, - (xmlChar*)"bank", (xmlChar*)(*i).second.substr(0, (*i).second.find("/")).c_str()); - xml_grandchild_node = xmlNewChild(xml_child_node, NULL, - (xmlChar*)"program", (xmlChar*)(*i).second.substr((*i).second.find("/")+1).c_str()); - } else { - xml_child_node = xmlNewChild(xml_node, NULL, - (xmlChar*)(*i).first.c_str(), (xmlChar*)(*i).second.c_str()); - } - } - - PortModel* pm = NULL; - // Write port metadata, if necessary - for (list<PortModel*>::const_iterator i = nm->ports().begin(); i != nm->ports().end(); ++i) { - pm = (*i); - if (pm->is_input() && pm->user_min() != pm->min_val() || pm->user_max() != pm->max_val()) { - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"port", NULL); - xml_grandchild_node = xmlNewChild(xml_child_node, NULL, (xmlChar*)"name", - (xmlChar*)pm->path().name().c_str()); - snprintf(temp_buf, temp_buf_length, "%f", pm->user_min()); - xml_grandchild_node = xmlNewChild(xml_child_node, NULL, (xmlChar*)"user-min", (xmlChar*)temp_buf); - snprintf(temp_buf, temp_buf_length, "%f", pm->user_max()); - xml_grandchild_node = xmlNewChild(xml_child_node, NULL, (xmlChar*)"user-max", (xmlChar*)temp_buf); - } - } - } - } - - // Save connections - - const list<ConnectionModel*>& cl = patch_model->connections(); - const ConnectionModel* c = NULL; - - for (list<ConnectionModel*>::const_iterator i = cl.begin(); i != cl.end(); ++i) { - c = (*i); - xml_node = xmlNewChild(xml_root_node, NULL, (xmlChar*)"connection", NULL); - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"source-node", - (xmlChar*)c->src_port_path().parent().name().c_str()); - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"source-port", - (xmlChar*)c->src_port_path().name().c_str()); - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"destination-node", - (xmlChar*)c->dst_port_path().parent().name().c_str()); - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"destination-port", - (xmlChar*)c->dst_port_path().name().c_str()); - } - - // Save control values (ie presets eventually, right now just current control vals) - - xmlNodePtr xml_preset_node = xmlNewChild(xml_root_node, NULL, (xmlChar*)"preset", NULL); - xml_node = xmlNewChild(xml_preset_node, NULL, (xmlChar*)"name", (xmlChar*)"default"); - - PortModel* pm = NULL; - - // Save node port controls - for (NodeModelMap::const_iterator n = patch_model->nodes().begin(); n != patch_model->nodes().end(); ++n) { - nm = n->second; - for (PortModelList::const_iterator p = nm->ports().begin(); p != nm->ports().end(); ++p) { - pm = *p; - if (pm->is_input() && pm->is_control()) { - float val = pm->value(); - xml_node = xmlNewChild(xml_preset_node, NULL, (xmlChar*)"control", NULL); - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"node-name", - (xmlChar*)nm->name().c_str()); - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"port-name", - (xmlChar*)pm->path().name().c_str()); - snprintf(temp_buf, temp_buf_length, "%f", val); - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"value", - (xmlChar*)temp_buf); - } - } - } - - // Save patch port controls - for (PortModelList::const_iterator p = patch_model->ports().begin(); - p != patch_model->ports().end(); ++p) { - pm = *p; - if (pm->is_input() && pm->is_control()) { - float val = pm->value(); - xml_node = xmlNewChild(xml_preset_node, NULL, (xmlChar*)"control", NULL); - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"port-name", - (xmlChar*)pm->path().name().c_str()); - snprintf(temp_buf, temp_buf_length, "%f", val); - xml_child_node = xmlNewChild(xml_node, NULL, (xmlChar*)"value", - (xmlChar*)temp_buf); - } - } - - xmlSaveFormatFile(filename.c_str(), xml_doc, 1); // 1 == pretty print - - xmlFreeDoc(xml_doc); - xmlCleanupParser(); -} - - -/** Build a NodeModel given a pointer to a Node in a patch file. - */ -NodeModel* -PatchLibrarian::parse_node(const PatchModel* parent, xmlDocPtr doc, const xmlNodePtr node) -{ - NodeModel* nm = new NodeModel("/UNINITIALIZED"); // FIXME: ew - PluginModel* plugin = new PluginModel(); - - xmlChar* key; - xmlNodePtr cur = node->xmlChildrenNode; - - bool found_name = false; - - while (cur != NULL) { - key = xmlNodeListGetString(doc, cur->xmlChildrenNode, 1); - - if ((!xmlStrcmp(cur->name, (const xmlChar*)"name"))) { - nm->set_path(parent->base_path() + (char*)key); - found_name = true; - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"polyphonic"))) { - nm->polyphonic(!strcmp((char*)key, "true")); - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"type"))) { - plugin->set_type((const char*)key); - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"library-name"))) { - plugin->lib_name((char*)key); - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"plugin-label"))) { - plugin->plug_label((char*)key); - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"plugin-uri"))) { - plugin->uri((char*)key); - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"port"))) { - xmlNodePtr child = cur->xmlChildrenNode; - - string path; - float user_min = 0.0; - float user_max = 0.0; - - while (child != NULL) { - key = xmlNodeListGetString(doc, child->xmlChildrenNode, 1); - - if ((!xmlStrcmp(child->name, (const xmlChar*)"name"))) { - path = nm->base_path() + (char*)key; - } else if ((!xmlStrcmp(child->name, (const xmlChar*)"user-min"))) { - user_min = atof((char*)key); - } else if ((!xmlStrcmp(child->name, (const xmlChar*)"user-max"))) { - user_max = atof((char*)key); - } - - xmlFree(key); - key = NULL; // Avoid a (possible?) double free - - child = child->next; - } - - // FIXME: nasty assumptions - PortModel* pm = new PortModel(path, - PortModel::CONTROL, PortModel::INPUT, PortModel::NONE, - 0.0, user_min, user_max); - nm->add_port(pm); - - // DSSI hacks. Stored in the patch files as special elements, but sent to - // the engine as normal metadata with specially formatted key/values. Not - // sure if this is the best way to go about this, but it's the least damaging - // right now - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"dssi-program"))) { - xmlNodePtr child = cur->xmlChildrenNode; - - string bank; - string program; - - while (child != NULL) { - key = xmlNodeListGetString(doc, child->xmlChildrenNode, 1); - - if ((!xmlStrcmp(child->name, (const xmlChar*)"bank"))) { - bank = (char*)key; - } else if ((!xmlStrcmp(child->name, (const xmlChar*)"program"))) { - program = (char*)key; - } - - xmlFree(key); - key = NULL; // Avoid a (possible?) double free - child = child->next; - } - nm->set_metadata("dssi-program", bank +"/"+ program); - - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"dssi-configure"))) { - xmlNodePtr child = cur->xmlChildrenNode; - - string dssi_key; - string dssi_value; - - while (child != NULL) { - key = xmlNodeListGetString(doc, child->xmlChildrenNode, 1); - - if ((!xmlStrcmp(child->name, (const xmlChar*)"key"))) { - dssi_key = (char*)key; - } else if ((!xmlStrcmp(child->name, (const xmlChar*)"value"))) { - dssi_value = (char*)key; - } - - xmlFree(key); - key = NULL; // Avoid a (possible?) double free - - child = child->next; - } - nm->set_metadata(string("dssi-configure--").append(dssi_key), dssi_value); - - } else { // Don't know what this tag is, add it as metadata - if (key != NULL) - nm->set_metadata((const char*)cur->name, (const char*)key); - } - xmlFree(key); - key = NULL; - - cur = cur->next; - } - - if (nm->path() == "") { - cerr << "[PatchLibrarian] Malformed patch file (node tag has empty children)" << endl; - cerr << "[PatchLibrarian] Node ignored." << endl; - delete nm; - return NULL; - } else { - nm->plugin(plugin); - return nm; - } -} - - -void -PatchLibrarian::load_subpatch(PatchModel* parent, xmlDocPtr doc, const xmlNodePtr subpatch) -{ - xmlChar *key; - xmlNodePtr cur = subpatch->xmlChildrenNode; - - PatchModel* pm = new PatchModel("/UNINITIALIZED", 1); // FIXME: ew - - while (cur != NULL) { - key = xmlNodeListGetString(doc, cur->xmlChildrenNode, 1); - - if ((!xmlStrcmp(cur->name, (const xmlChar*)"name"))) { - if (parent == NULL) - pm->set_path(string("/") + (const char*)key); - else - pm->set_path(parent->base_path() + (const char*)key); - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"polyphony"))) { - pm->poly(atoi((const char*)key)); - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"filename"))) { - pm->filename((const char*)key); - } else { // Don't know what this tag is, add it as metadata - if (key != NULL && strlen((const char*)key) > 0) - pm->set_metadata((const char*)cur->name, (const char*)key); - } - xmlFree(key); - key = NULL; - - cur = cur->next; - } - - // This needs to be done after setting the path above, to prevent - // NodeModel::set_path from calling it's parent's rename_node with - // an invalid (nonexistant) name - pm->set_parent(parent); - - load_patch(pm, false); -} - - -/** Build a ConnectionModel given a pointer to a connection in a patch file. - */ -ConnectionModel* -PatchLibrarian::parse_connection(const PatchModel* parent, xmlDocPtr doc, const xmlNodePtr node) -{ - //cerr << "[PatchLibrarian] Parsing connection..." << endl; - - xmlChar *key; - xmlNodePtr cur = node->xmlChildrenNode; - - string source_node, source_port, dest_node, dest_port; - - while (cur != NULL) { - key = xmlNodeListGetString(doc, cur->xmlChildrenNode, 1); - - if ((!xmlStrcmp(cur->name, (const xmlChar*)"source-node"))) { - source_node = (char*)key; - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"source-port"))) { - source_port = (char*)key; - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"destination-node"))) { - dest_node = (char*)key; - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"destination-port"))) { - dest_port = (char*)key; - } - - xmlFree(key); - key = NULL; // Avoid a (possible?) double free - - cur = cur->next; - } - - if (source_node == "" || source_port == "" || dest_node == "" || dest_port == "") { - cerr << "[PatchLibrarian] Malformed patch file (connection tag has empty children)" << endl; - cerr << "[PatchLibrarian] Connection ignored." << endl; - return NULL; - } - - // FIXME: temporary compatibility, remove any slashes from port names - // remove this soon once patches have migrated - string::size_type slash_index; - while ((slash_index = source_port.find("/")) != string::npos) - source_port[slash_index] = '-'; - - while ((slash_index = dest_port.find("/")) != string::npos) - dest_port[slash_index] = '-'; - - ConnectionModel* cm = new ConnectionModel(parent->base_path() + source_node +"/"+ source_port, - parent->base_path() + dest_node +"/"+ dest_port); - - return cm; -} - - -/** Build a PresetModel given a pointer to a preset in a patch file. - */ -PresetModel* -PatchLibrarian::parse_preset(const PatchModel* patch, xmlDocPtr doc, const xmlNodePtr node) -{ - xmlNodePtr cur = node->xmlChildrenNode; - xmlChar* key; - - PresetModel* pm = new PresetModel(patch->base_path()); - - while (cur != NULL) { - key = xmlNodeListGetString(doc, cur->xmlChildrenNode, 1); - - if ((!xmlStrcmp(cur->name, (const xmlChar*)"name"))) { - assert(key != NULL); - pm->name((char*)key); - } else if ((!xmlStrcmp(cur->name, (const xmlChar*)"control"))) { - xmlNodePtr child = cur->xmlChildrenNode; - - string node_name = "", port_name = ""; - float val = 0.0; - - while (child != NULL) { - key = xmlNodeListGetString(doc, child->xmlChildrenNode, 1); - - if ((!xmlStrcmp(child->name, (const xmlChar*)"node-name"))) { - node_name = (char*)key; - } else if ((!xmlStrcmp(child->name, (const xmlChar*)"port-name"))) { - port_name = (char*)key; - } else if ((!xmlStrcmp(child->name, (const xmlChar*)"value"))) { - val = atof((char*)key); - } - - xmlFree(key); - key = NULL; // Avoid a (possible?) double free - - child = child->next; - } - - if (port_name == "") { - string msg = "Unable to parse control in patch file ( node = "; - msg.append(node_name).append(", port = ").append(port_name).append(")"); - m_client_hooks->error(msg); - } else { - // FIXME: temporary compatibility, remove any slashes from port name - // remove this soon once patches have migrated - string::size_type slash_index; - while ((slash_index = port_name.find("/")) != string::npos) - port_name[slash_index] = '-'; - pm->add_control(node_name, port_name, val); - } - } - xmlFree(key); - key = NULL; - cur = cur->next; - } - if (pm->name() == "") { - m_client_hooks->error("Preset in patch file has no name."); - pm->name("Unnamed"); - } - - return pm; -} -#endif - - -} // namespace LibOmClient diff --git a/src/clients/new/PatchLibrarian.h b/src/clients/new/PatchLibrarian.h deleted file mode 100644 index ac69f0f5..00000000 --- a/src/clients/new/PatchLibrarian.h +++ /dev/null @@ -1,66 +0,0 @@ -/* This file is part of Om. Copyright (C) 2005 Dave Robillard. - * - * Om 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. - * - * Om 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., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#ifndef PATCHLIBRARIAN_H -#define PATCHLIBRARIAN_H - -#include <string> -#include <libxml/tree.h> -#include "util/Path.h" -#include "EngineInterface.h" -using std::string; -using Om::Path; -using Om::Shared::EngineInterface; - -namespace LibOmClient { - - -/** Loads patch files, sending the necessary messages to an EngineInterface - * to recreate the patch. - * - * Because this only uses EngineInterface, this same code can be used to load - * patches client side or server side. - * - * \ingroup libomclient - */ -class PatchLibrarian -{ -public: - - //static void save_patch(PatchModel* patch_model, const string& filename, bool recursive); - - static bool - PatchLibrarian::load_patch(EngineInterface* engine, - const string& filename, - const Path& parent_path = "/", - string name = "", - uint32_t poly = 0); - -private: - PatchLibrarian() {} - - /* - static NodeModel* parse_node(const PatchModel* parent, xmlDocPtr doc, const xmlNodePtr cur); - static ConnectionModel* parse_connection(const PatchModel* parent, xmlDocPtr doc, const xmlNodePtr cur); - static PresetModel* parse_preset(const PatchModel* parent, xmlDocPtr doc, const xmlNodePtr cur); - static void load_subpatch(PatchModel* parent, xmlDocPtr doc, const xmlNodePtr cur); - */ -}; - - -} // namespace LibOmClient - -#endif // PATCHLIBRARIAN_H diff --git a/src/clients/new/patch_loader/Makefile.am b/src/clients/new/patch_loader/Makefile.am deleted file mode 100644 index 1448ac92..00000000 --- a/src/clients/new/patch_loader/Makefile.am +++ /dev/null @@ -1,13 +0,0 @@ -EXTRA_DIST = README - -om_patch_loader_CXXFLAGS = -I$(top_srcdir)/src/clients -I$(top_srcdir)/src/common/util -I$(top_srcdir)/src/common/interface -DPKGDATADIR=\"$(pkgdatadir)\" $(LXML2_CFLAGS) $(LOSC_CFLAGS) -om_patch_loader_LDADD = ../libomclient.a $(LOSC_LIBS) $(LXML2_LIBS) - -bin_PROGRAMS = om_patch_loader - -om_patch_loader_DEPENDENCIES = ../libomclient.a - -om_patch_loader_SOURCES = \ - patch_loader.cpp \ - cmdline.h \ - cmdline.c diff --git a/src/clients/new/patch_loader/patch_loader.cpp b/src/clients/new/patch_loader/patch_loader.cpp deleted file mode 100644 index 8884e85b..00000000 --- a/src/clients/new/patch_loader/patch_loader.cpp +++ /dev/null @@ -1,76 +0,0 @@ -/* This file is part of Om. Copyright (C) 2005 Dave Robillard. - * - * Om 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. - * - * Om 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., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#include <iostream> -#include <unistd.h> -#include "cmdline.h" // generated by gengetopt -#include "util/Path.h" -#include "OSCEngineInterface.h" -#include "PatchLibrarian.h" - -using std::cout; using std::cerr; using std::endl; -using Om::Path; - -using namespace LibOmClient; - - -int -main(int argc, char** argv) -{ - const char* engine_url = NULL; - int client_port = 0; - - /* Parse command line options */ - gengetopt_args_info args_info; - if (cmdline_parser (argc, argv, &args_info) != 0) - return 1; - - if (args_info.engine_url_given) { - engine_url = args_info.engine_url_arg; - } else { - cout << "[Main] No engine URL specified. Attempting to use osc.udp://localhost:16180" << endl; - engine_url = "osc.udp://localhost:16180"; - } - - if (args_info.client_port_given) - client_port = args_info.client_port_arg; - else - client_port = 0; // will choose a free port automatically - - OSCEngineInterface engine(engine_url); - - /* Connect to engine */ - if (!engine.attach()) { - cerr << "Unable to connect to engine" << endl; - return 1; - } - - engine.activate(); - engine.register_client(); - - /*int id = engine.get_next_request_id(); - engine.set_wait_response_id(id); - engine.load_plugins(id); - engine.wait_for_response(); - */ - engine.load_plugins(); - - // Load patches - for (uint i=0; i < args_info.inputs_num; ++i) - PatchLibrarian::load_patch(&engine, args_info.inputs[i]); - - return 0; -} diff --git a/src/clients/patch_loader/README b/src/clients/patch_loader/README deleted file mode 100644 index 9f3b6f4b..00000000 --- a/src/clients/patch_loader/README +++ /dev/null @@ -1,5 +0,0 @@ -This is a stand-alone patch loader for Om. It has no user interface, it -just launches, loads the patch(es) passed as a parameter, and exits. - -Useful for loading patches from scripts, other apps, etc. or just using -Om patches without loading the GUI. diff --git a/src/clients/patch_loader/cmdline.c b/src/clients/patch_loader/cmdline.c deleted file mode 100644 index 0606cb7b..00000000 --- a/src/clients/patch_loader/cmdline.c +++ /dev/null @@ -1,163 +0,0 @@ -/* - File autogenerated by gengetopt version 2.10 - generated with the following command: - gengetopt -u - - The developers of gengetopt consider the fixed text that goes in all - gengetopt output files to be in the public domain: - we make no copyright claims on it. -*/ - - -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -/* If we use autoconf. */ -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "getopt.h" - -#include "cmdline.h" - -void -cmdline_parser_print_version (void) -{ - printf ("%s %s\n", CMDLINE_PARSER_PACKAGE, CMDLINE_PARSER_VERSION); -} - -void -cmdline_parser_print_help (void) -{ - cmdline_parser_print_version (); - printf("\n" - "Usage: %s [OPTIONS]... [FILES]...\n", CMDLINE_PARSER_PACKAGE); - printf(" -h --help Print help and exit\n"); - printf(" -V --version Print version and exit\n"); - printf(" -uSTRING --engine-url=STRING Om engine URL to connect to\n"); - printf(" -pINT --client-port=INT Client port to listen on\n"); -} - - -static char *gengetopt_strdup (const char *s); - -/* gengetopt_strdup() */ -/* strdup.c replacement of strdup, which is not standard */ -char * -gengetopt_strdup (const char *s) -{ - char *result = (char*)malloc(strlen(s) + 1); - if (result == (char*)0) - return (char*)0; - strcpy(result, s); - return result; -} - -int -cmdline_parser (int argc, char * const *argv, struct gengetopt_args_info *args_info) -{ - int c; /* Character of the parsed option. */ - int missing_required_options = 0; - - args_info->help_given = 0 ; - args_info->version_given = 0 ; - args_info->engine_url_given = 0 ; - args_info->client_port_given = 0 ; -#define clear_args() { \ - args_info->engine_url_arg = NULL; \ -} - - clear_args(); - - args_info->inputs = NULL; - args_info->inputs_num = 0; - - optarg = 0; - optind = 1; - opterr = 1; - optopt = '?'; - - while (1) - { - int option_index = 0; - char *stop_char; - - static struct option long_options[] = { - { "help", 0, NULL, 'h' }, - { "version", 0, NULL, 'V' }, - { "engine-url", 1, NULL, 'u' }, - { "client-port", 1, NULL, 'p' }, - { NULL, 0, NULL, 0 } - }; - - stop_char = 0; - c = getopt_long (argc, argv, "hVu:p:", long_options, &option_index); - - if (c == -1) break; /* Exit from `while (1)' loop. */ - - switch (c) - { - case 'h': /* Print help and exit. */ - clear_args (); - cmdline_parser_print_help (); - exit (EXIT_SUCCESS); - - case 'V': /* Print version and exit. */ - clear_args (); - cmdline_parser_print_version (); - exit (EXIT_SUCCESS); - - case 'u': /* Om engine URL to connect to. */ - if (args_info->engine_url_given) - { - fprintf (stderr, "%s: `--engine-url' (`-u') option given more than once\n", CMDLINE_PARSER_PACKAGE); - clear_args (); - exit (EXIT_FAILURE); - } - args_info->engine_url_given = 1; - args_info->engine_url_arg = gengetopt_strdup (optarg); - break; - - case 'p': /* Client port to listen on. */ - if (args_info->client_port_given) - { - fprintf (stderr, "%s: `--client-port' (`-p') option given more than once\n", CMDLINE_PARSER_PACKAGE); - clear_args (); - exit (EXIT_FAILURE); - } - args_info->client_port_given = 1; - args_info->client_port_arg = strtol (optarg,&stop_char,0); - break; - - - case 0: /* Long option with no short option */ - - case '?': /* Invalid option. */ - /* `getopt_long' already printed an error message. */ - exit (EXIT_FAILURE); - - default: /* bug: option not considered. */ - fprintf (stderr, "%s: option unknown: %c\n", CMDLINE_PARSER_PACKAGE, c); - abort (); - } /* switch */ - } /* while */ - - - if ( missing_required_options ) - exit (EXIT_FAILURE); - - if (optind < argc) - { - int i = 0 ; - - args_info->inputs_num = argc - optind ; - args_info->inputs = - (char **)(malloc ((args_info->inputs_num)*sizeof(char *))) ; - while (optind < argc) - args_info->inputs[ i++ ] = gengetopt_strdup (argv[optind++]) ; - } - - return 0; -} diff --git a/src/clients/patch_loader/cmdline.ggo b/src/clients/patch_loader/cmdline.ggo deleted file mode 100644 index 5acd6737..00000000 --- a/src/clients/patch_loader/cmdline.ggo +++ /dev/null @@ -1,7 +0,0 @@ -# Process this file with gengetopt -u to generate the necessary code (in cmdline.h, cmdline.c) - -package "om_patch_loader - A command line patch loading client for Om" - -option "engine-url" u "Om engine URL to connect to" string no -option "client-port" p "Client port to listen on" int no - diff --git a/src/clients/patch_loader/cmdline.h b/src/clients/patch_loader/cmdline.h deleted file mode 100644 index b417c664..00000000 --- a/src/clients/patch_loader/cmdline.h +++ /dev/null @@ -1,47 +0,0 @@ -/* cmdline.h */ - -/* File autogenerated by gengetopt version 2.10 */ - -#ifndef CMDLINE_H -#define CMDLINE_H - -/* If we use autoconf. */ -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - -#ifndef CMDLINE_PARSER_PACKAGE -#define CMDLINE_PARSER_PACKAGE "om_patch_loader - A command line patch loading client for the Om realtime modular synthesizer" -#endif - -#ifndef CMDLINE_PARSER_VERSION -#define CMDLINE_PARSER_VERSION VERSION -#endif - -struct gengetopt_args_info -{ - char * engine_url_arg; /* Om engine URL to connect to. */ - int client_port_arg; /* Client port to listen on. */ - - int help_given ; /* Whether help was given. */ - int version_given ; /* Whether version was given. */ - int engine_url_given ; /* Whether engine-url was given. */ - int client_port_given ; /* Whether client-port was given. */ - - char **inputs ; /* unamed options */ - unsigned inputs_num ; /* unamed options number */ -} ; - -int cmdline_parser (int argc, char * const *argv, struct gengetopt_args_info *args_info); - -void cmdline_parser_print_help(void); -void cmdline_parser_print_version(void); - -#ifdef __cplusplus -} -#endif /* __cplusplus */ -#endif /* CMDLINE_H */ diff --git a/src/clients/ConnectionModel.cpp b/src/libs/client/ConnectionModel.cpp index 1c7541b9..1c7541b9 100644 --- a/src/clients/ConnectionModel.cpp +++ b/src/libs/client/ConnectionModel.cpp diff --git a/src/clients/ConnectionModel.h b/src/libs/client/ConnectionModel.h index ef909850..ef909850 100644 --- a/src/clients/ConnectionModel.h +++ b/src/libs/client/ConnectionModel.h diff --git a/src/clients/ControlModel.h b/src/libs/client/ControlModel.h index 872dcca2..872dcca2 100644 --- a/src/clients/ControlModel.h +++ b/src/libs/client/ControlModel.h diff --git a/src/clients/DirectSigClientInterface.h b/src/libs/client/DirectSigClientInterface.h index 12672a48..12672a48 100644 --- a/src/clients/DirectSigClientInterface.h +++ b/src/libs/client/DirectSigClientInterface.h diff --git a/src/clients/Makefile.am b/src/libs/client/Makefile.am index 24e6a3bb..24e6a3bb 100644 --- a/src/clients/Makefile.am +++ b/src/libs/client/Makefile.am diff --git a/src/clients/ModelClientInterface.cpp b/src/libs/client/ModelClientInterface.cpp index 46754161..46754161 100644 --- a/src/clients/ModelClientInterface.cpp +++ b/src/libs/client/ModelClientInterface.cpp diff --git a/src/clients/ModelClientInterface.h b/src/libs/client/ModelClientInterface.h index 1f5ea09d..1f5ea09d 100644 --- a/src/clients/ModelClientInterface.h +++ b/src/libs/client/ModelClientInterface.h diff --git a/src/clients/ModelEngineInterface.h b/src/libs/client/ModelEngineInterface.h index aa041aef..aa041aef 100644 --- a/src/clients/ModelEngineInterface.h +++ b/src/libs/client/ModelEngineInterface.h diff --git a/src/clients/NodeModel.cpp b/src/libs/client/NodeModel.cpp index efdae494..efdae494 100644 --- a/src/clients/NodeModel.cpp +++ b/src/libs/client/NodeModel.cpp diff --git a/src/clients/NodeModel.h b/src/libs/client/NodeModel.h index af4171ed..af4171ed 100644 --- a/src/clients/NodeModel.h +++ b/src/libs/client/NodeModel.h diff --git a/src/clients/OSCEngineInterface.cpp b/src/libs/client/OSCEngineInterface.cpp index 5ac598f1..5ac598f1 100644 --- a/src/clients/OSCEngineInterface.cpp +++ b/src/libs/client/OSCEngineInterface.cpp diff --git a/src/clients/OSCEngineInterface.h b/src/libs/client/OSCEngineInterface.h index 63157da1..63157da1 100644 --- a/src/clients/OSCEngineInterface.h +++ b/src/libs/client/OSCEngineInterface.h diff --git a/src/clients/OSCListener.cpp b/src/libs/client/OSCListener.cpp index 503be47d..503be47d 100644 --- a/src/clients/OSCListener.cpp +++ b/src/libs/client/OSCListener.cpp diff --git a/src/clients/OSCListener.h b/src/libs/client/OSCListener.h index d0b9cc1c..d0b9cc1c 100644 --- a/src/clients/OSCListener.h +++ b/src/libs/client/OSCListener.h diff --git a/src/clients/OSCModelEngineInterface.cpp b/src/libs/client/OSCModelEngineInterface.cpp index 9e648141..9e648141 100644 --- a/src/clients/OSCModelEngineInterface.cpp +++ b/src/libs/client/OSCModelEngineInterface.cpp diff --git a/src/clients/OSCModelEngineInterface.h b/src/libs/client/OSCModelEngineInterface.h index 4400a1b4..4400a1b4 100644 --- a/src/clients/OSCModelEngineInterface.h +++ b/src/libs/client/OSCModelEngineInterface.h diff --git a/src/clients/ObjectController.h b/src/libs/client/ObjectController.h index c79ac24d..c79ac24d 100644 --- a/src/clients/ObjectController.h +++ b/src/libs/client/ObjectController.h diff --git a/src/clients/ObjectModel.cpp b/src/libs/client/ObjectModel.cpp index cb196f8a..cb196f8a 100644 --- a/src/clients/ObjectModel.cpp +++ b/src/libs/client/ObjectModel.cpp diff --git a/src/clients/ObjectModel.h b/src/libs/client/ObjectModel.h index be58a00f..be58a00f 100644 --- a/src/clients/ObjectModel.h +++ b/src/libs/client/ObjectModel.h diff --git a/src/clients/PatchLibrarian.cpp b/src/libs/client/PatchLibrarian.cpp index 65323435..65323435 100644 --- a/src/clients/PatchLibrarian.cpp +++ b/src/libs/client/PatchLibrarian.cpp diff --git a/src/clients/PatchLibrarian.cpp.new b/src/libs/client/PatchLibrarian.cpp.new index dc05c9e3..dc05c9e3 100644 --- a/src/clients/PatchLibrarian.cpp.new +++ b/src/libs/client/PatchLibrarian.cpp.new diff --git a/src/clients/PatchLibrarian.h b/src/libs/client/PatchLibrarian.h index ace91f24..ace91f24 100644 --- a/src/clients/PatchLibrarian.h +++ b/src/libs/client/PatchLibrarian.h diff --git a/src/clients/PatchModel.cpp b/src/libs/client/PatchModel.cpp index 829c9ca5..829c9ca5 100644 --- a/src/clients/PatchModel.cpp +++ b/src/libs/client/PatchModel.cpp diff --git a/src/clients/PatchModel.h b/src/libs/client/PatchModel.h index 12871933..12871933 100644 --- a/src/clients/PatchModel.h +++ b/src/libs/client/PatchModel.h diff --git a/src/clients/PluginModel.h b/src/libs/client/PluginModel.h index 85365d64..85365d64 100644 --- a/src/clients/PluginModel.h +++ b/src/libs/client/PluginModel.h diff --git a/src/clients/PortModel.h b/src/libs/client/PortModel.h index 6d0895cf..6d0895cf 100644 --- a/src/clients/PortModel.h +++ b/src/libs/client/PortModel.h diff --git a/src/clients/PresetModel.h b/src/libs/client/PresetModel.h index bd187dfc..bd187dfc 100644 --- a/src/clients/PresetModel.h +++ b/src/libs/client/PresetModel.h diff --git a/src/clients/SigClientInterface.h b/src/libs/client/SigClientInterface.h index f384f239..f384f239 100644 --- a/src/clients/SigClientInterface.h +++ b/src/libs/client/SigClientInterface.h diff --git a/src/clients/ThreadedSigClientInterface.cpp b/src/libs/client/ThreadedSigClientInterface.cpp index 860d91f6..860d91f6 100644 --- a/src/clients/ThreadedSigClientInterface.cpp +++ b/src/libs/client/ThreadedSigClientInterface.cpp diff --git a/src/clients/ThreadedSigClientInterface.h b/src/libs/client/ThreadedSigClientInterface.h index 16259531..16259531 100644 --- a/src/clients/ThreadedSigClientInterface.h +++ b/src/libs/client/ThreadedSigClientInterface.h diff --git a/src/libs/engine/Makefile.am b/src/libs/engine/Makefile.am index ae0b3e53..3b425ba2 100644 --- a/src/libs/engine/Makefile.am +++ b/src/libs/engine/Makefile.am @@ -1,11 +1,13 @@ SUBDIRS = tests DIST_SUBDIRS = events -AM_CXXFLAGS = @JACK_CFLAGS@ @LOSC_CFLAGS@ @ALSA_CFLAGS@ @LASH_CFLAGS@ @SLV2_CFLAGS@ -I$(top_srcdir)/src/common -I$(top_srcdir)/src/engine/events -fno-exceptions -fno-rtti +AM_CXXFLAGS = @JACK_CFLAGS@ @LOSC_CFLAGS@ @ALSA_CFLAGS@ @LASH_CFLAGS@ @SLV2_CFLAGS@ -I$(top_srcdir)/src/libom_la -I$(top_srcdir)/src/engine/events -fno-exceptions -fno-rtti MAINTAINERCLEANFILES = Makefile.in -common_SOURCES = \ +LTLIBRARIES = libom.la + +libom_la_SOURCES = \ util.h \ tuning.h \ Node.h \ @@ -98,16 +100,13 @@ common_SOURCES = \ AudioDriver.h \ MidiDriver.h \ midi.h \ - ../common/util/Semaphore.h \ - ../common/util/types.h \ - ../common/util/Path.h \ - ../common/util/Queue.h \ - ../common/interface/ClientInterface.h \ - ../common/interface/EngineInterface.h \ - instantiations.cpp - -# Events -common_SOURCES += \ + ../libom_la/util/Semaphore.h \ + ../libom_la/util/types.h \ + ../libom_la/util/Path.h \ + ../libom_la/util/Queue.h \ + ../libom_la/interface/ClientInterface.h \ + ../libom_la/interface/EngineInterface.h \ + instantiations.cpp \ events/RegisterClientEvent.h \ events/RegisterClientEvent.cpp \ events/UnregisterClientEvent.h \ @@ -165,25 +164,25 @@ common_SOURCES += \ events/MidiLearnEvent.cpp if WITH_JACK_MIDI -common_SOURCES += \ +libom_la_SOURCES += \ JackMidiDriver.h \ JackMidiDriver.cpp endif if WITH_ALSA_MIDI -common_SOURCES += \ +libom_la_SOURCES += \ AlsaMidiDriver.h \ AlsaMidiDriver.cpp endif if WITH_LADSPA -common_SOURCES += \ +libom_la_SOURCES += \ LADSPAPlugin.h \ LADSPAPlugin.cpp endif if WITH_DSSI -common_SOURCES += \ +libom_la_SOURCES += \ DSSIPlugin.h \ DSSIPlugin.cpp \ events/DSSIConfigureEvent.cpp \ @@ -197,63 +196,15 @@ common_SOURCES += \ endif if WITH_LV2 -common_SOURCES += \ +libom_la_SOURCES += \ LV2Plugin.h \ LV2Plugin.cpp endif if WITH_LASH -common_SOURCES += \ +libom_la_SOURCES += \ LashDriver.h \ LashDriver.cpp \ LashRestoreDoneEvent.h endif - -# -# Non-installed library to link stand-alone and in-process build against -# - -noinst_LTLIBRARIES = libom.la -libom_la_SOURCES = $(common_SOURCES) - - - -# -# Stand-alone engine -# -if BUILD_ENGINE - -bin_PROGRAMS = om -om_DEPENDENCIES = libom.la -om_LDADD = @JACK_LIBS@ @LOSC_LIBS@ @ALSA_LIBS@ @LASH_LIBS@ @SLV2_LIBS@ -lrt libom.la - -om_SOURCES = \ - main.cpp \ - cmdline.h \ - cmdline.c - -endif # BUILD_ENGINE - - - -# -# Jack internal client -# -if BUILD_IN_PROCESS_ENGINE - - -# FIXME: broken - - -# FIXME: Figure out how to get this properly -omdir = $(prefix)/lib/jack - -om_la_CFLAGS = -fPIC -om_LTLIBRARIES = om.la -om_la_LDFLAGS = -module -avoid-version @JACK_LIBS@ @LOSC_LIBS@ @ALSA_LIBS@ @LASH_LIBS@ @SLV2_LIBS@ -om_la_SOURCES = OmInProcess.cpp - -endif # BUILD_IN_PROCESS_ENGINE - - diff --git a/src/clients/console/ConsoleClientHooks.cpp b/src/progs/console/ConsoleClientHooks.cpp index 1a911c6a..1a911c6a 100644 --- a/src/clients/console/ConsoleClientHooks.cpp +++ b/src/progs/console/ConsoleClientHooks.cpp diff --git a/src/clients/console/ConsoleClientHooks.h b/src/progs/console/ConsoleClientHooks.h index ceb6cd5a..ceb6cd5a 100644 --- a/src/clients/console/ConsoleClientHooks.h +++ b/src/progs/console/ConsoleClientHooks.h diff --git a/src/clients/console/Makefile.am b/src/progs/console/Makefile.am index f46bdbad..f46bdbad 100644 --- a/src/clients/console/Makefile.am +++ b/src/progs/console/Makefile.am diff --git a/src/clients/console/README b/src/progs/console/README index 79c629a5..79c629a5 100644 --- a/src/clients/console/README +++ b/src/progs/console/README diff --git a/src/clients/console/console_client.cpp b/src/progs/console/console_client.cpp index 4e5586ce..4e5586ce 100644 --- a/src/clients/console/console_client.cpp +++ b/src/progs/console/console_client.cpp diff --git a/src/clients/console/patches/COPYING b/src/progs/console/patches/COPYING index e265c4a3..e265c4a3 100644 --- a/src/clients/console/patches/COPYING +++ b/src/progs/console/patches/COPYING diff --git a/src/clients/console/patches/dssi_test.omp b/src/progs/console/patches/dssi_test.omp index 0613a57b..0613a57b 100644 --- a/src/clients/console/patches/dssi_test.omp +++ b/src/progs/console/patches/dssi_test.omp diff --git a/src/clients/console/patches/filter_patch.omp b/src/progs/console/patches/filter_patch.omp index acaad0c8..acaad0c8 100644 --- a/src/clients/console/patches/filter_patch.omp +++ b/src/progs/console/patches/filter_patch.omp diff --git a/src/clients/console/patches/old_super_simple_patch.omp b/src/progs/console/patches/old_super_simple_patch.omp index 1abd3c23..1abd3c23 100644 --- a/src/clients/console/patches/old_super_simple_patch.omp +++ b/src/progs/console/patches/old_super_simple_patch.omp diff --git a/src/clients/console/patches/send_test.omp b/src/progs/console/patches/send_test.omp index 579a3b80..579a3b80 100644 --- a/src/clients/console/patches/send_test.omp +++ b/src/progs/console/patches/send_test.omp diff --git a/src/clients/console/patches/simple_patch.omp b/src/progs/console/patches/simple_patch.omp index aaa38827..aaa38827 100644 --- a/src/clients/console/patches/simple_patch.omp +++ b/src/progs/console/patches/simple_patch.omp diff --git a/src/clients/console/patches/super_simple_patch.omp b/src/progs/console/patches/super_simple_patch.omp index 02dc63a2..02dc63a2 100644 --- a/src/clients/console/patches/super_simple_patch.omp +++ b/src/progs/console/patches/super_simple_patch.omp diff --git a/src/clients/console/patches/test_patch.omp b/src/progs/console/patches/test_patch.omp index 04c0487b..04c0487b 100644 --- a/src/clients/console/patches/test_patch.omp +++ b/src/progs/console/patches/test_patch.omp diff --git a/src/clients/demolition/DemolitionClientInterface.cpp b/src/progs/demolition/DemolitionClientInterface.cpp index e58371d4..e58371d4 100644 --- a/src/clients/demolition/DemolitionClientInterface.cpp +++ b/src/progs/demolition/DemolitionClientInterface.cpp diff --git a/src/clients/demolition/DemolitionClientInterface.h b/src/progs/demolition/DemolitionClientInterface.h index 374008b5..374008b5 100644 --- a/src/clients/demolition/DemolitionClientInterface.h +++ b/src/progs/demolition/DemolitionClientInterface.h diff --git a/src/clients/demolition/DemolitionModel.cpp b/src/progs/demolition/DemolitionModel.cpp index 786c08cd..786c08cd 100644 --- a/src/clients/demolition/DemolitionModel.cpp +++ b/src/progs/demolition/DemolitionModel.cpp diff --git a/src/clients/demolition/DemolitionModel.h b/src/progs/demolition/DemolitionModel.h index 64e0cc61..64e0cc61 100644 --- a/src/clients/demolition/DemolitionModel.h +++ b/src/progs/demolition/DemolitionModel.h diff --git a/src/clients/demolition/Makefile.am b/src/progs/demolition/Makefile.am index 4854f045..4854f045 100644 --- a/src/clients/demolition/Makefile.am +++ b/src/progs/demolition/Makefile.am diff --git a/src/clients/demolition/README b/src/progs/demolition/README index 536d3481..536d3481 100644 --- a/src/clients/demolition/README +++ b/src/progs/demolition/README diff --git a/src/clients/demolition/cmdline.c b/src/progs/demolition/cmdline.c index 11fcd108..11fcd108 100644 --- a/src/clients/demolition/cmdline.c +++ b/src/progs/demolition/cmdline.c diff --git a/src/clients/demolition/cmdline.ggo b/src/progs/demolition/cmdline.ggo index 8fb68170..8fb68170 100644 --- a/src/clients/demolition/cmdline.ggo +++ b/src/progs/demolition/cmdline.ggo diff --git a/src/clients/demolition/cmdline.h b/src/progs/demolition/cmdline.h index be56aafe..be56aafe 100644 --- a/src/clients/demolition/cmdline.h +++ b/src/progs/demolition/cmdline.h diff --git a/src/clients/demolition/demolition.cpp b/src/progs/demolition/demolition.cpp index 84a08c84..84a08c84 100644 --- a/src/clients/demolition/demolition.cpp +++ b/src/progs/demolition/demolition.cpp diff --git a/src/clients/gtk/App.cpp b/src/progs/gtk/App.cpp index 6b71b4ec..6b71b4ec 100644 --- a/src/clients/gtk/App.cpp +++ b/src/progs/gtk/App.cpp diff --git a/src/clients/gtk/App.h b/src/progs/gtk/App.h index 1ba18962..1ba18962 100644 --- a/src/clients/gtk/App.h +++ b/src/progs/gtk/App.h diff --git a/src/clients/gtk/BreadCrumb.h b/src/progs/gtk/BreadCrumb.h index f79ad363..f79ad363 100644 --- a/src/clients/gtk/BreadCrumb.h +++ b/src/progs/gtk/BreadCrumb.h diff --git a/src/clients/gtk/ConfigWindow.cpp b/src/progs/gtk/ConfigWindow.cpp index db3bce18..db3bce18 100644 --- a/src/clients/gtk/ConfigWindow.cpp +++ b/src/progs/gtk/ConfigWindow.cpp diff --git a/src/clients/gtk/ConfigWindow.h b/src/progs/gtk/ConfigWindow.h index caf1531f..caf1531f 100644 --- a/src/clients/gtk/ConfigWindow.h +++ b/src/progs/gtk/ConfigWindow.h diff --git a/src/clients/gtk/Configuration.cpp b/src/progs/gtk/Configuration.cpp index e4882cc3..e4882cc3 100644 --- a/src/clients/gtk/Configuration.cpp +++ b/src/progs/gtk/Configuration.cpp diff --git a/src/clients/gtk/Configuration.h b/src/progs/gtk/Configuration.h index f0f9bef9..f0f9bef9 100644 --- a/src/clients/gtk/Configuration.h +++ b/src/progs/gtk/Configuration.h diff --git a/src/clients/gtk/ConnectWindow.cpp b/src/progs/gtk/ConnectWindow.cpp index 15bab62c..15bab62c 100644 --- a/src/clients/gtk/ConnectWindow.cpp +++ b/src/progs/gtk/ConnectWindow.cpp diff --git a/src/clients/gtk/ConnectWindow.h b/src/progs/gtk/ConnectWindow.h index 8c0c7390..8c0c7390 100644 --- a/src/clients/gtk/ConnectWindow.h +++ b/src/progs/gtk/ConnectWindow.h diff --git a/src/clients/gtk/ControlGroups.cpp b/src/progs/gtk/ControlGroups.cpp index de87be05..de87be05 100644 --- a/src/clients/gtk/ControlGroups.cpp +++ b/src/progs/gtk/ControlGroups.cpp diff --git a/src/clients/gtk/ControlGroups.h b/src/progs/gtk/ControlGroups.h index ab1e3413..ab1e3413 100644 --- a/src/clients/gtk/ControlGroups.h +++ b/src/progs/gtk/ControlGroups.h diff --git a/src/clients/gtk/ControlInterface.cpp b/src/progs/gtk/ControlInterface.cpp index 9ac6e07e..9ac6e07e 100644 --- a/src/clients/gtk/ControlInterface.cpp +++ b/src/progs/gtk/ControlInterface.cpp diff --git a/src/clients/gtk/ControlInterface.h b/src/progs/gtk/ControlInterface.h index 8cba6a79..8cba6a79 100644 --- a/src/clients/gtk/ControlInterface.h +++ b/src/progs/gtk/ControlInterface.h diff --git a/src/clients/gtk/ControlPanel.cpp b/src/progs/gtk/ControlPanel.cpp index f344e2c3..f344e2c3 100644 --- a/src/clients/gtk/ControlPanel.cpp +++ b/src/progs/gtk/ControlPanel.cpp diff --git a/src/clients/gtk/ControlPanel.h b/src/progs/gtk/ControlPanel.h index 1f24344f..1f24344f 100644 --- a/src/clients/gtk/ControlPanel.h +++ b/src/progs/gtk/ControlPanel.h diff --git a/src/clients/gtk/Controller.cpp b/src/progs/gtk/Controller.cpp index 05ebe84a..05ebe84a 100644 --- a/src/clients/gtk/Controller.cpp +++ b/src/progs/gtk/Controller.cpp diff --git a/src/clients/gtk/Controller.h b/src/progs/gtk/Controller.h index fd516992..fd516992 100644 --- a/src/clients/gtk/Controller.h +++ b/src/progs/gtk/Controller.h diff --git a/src/clients/gtk/DSSIController.cpp b/src/progs/gtk/DSSIController.cpp index 570211c7..570211c7 100644 --- a/src/clients/gtk/DSSIController.cpp +++ b/src/progs/gtk/DSSIController.cpp diff --git a/src/clients/gtk/DSSIController.h b/src/progs/gtk/DSSIController.h index 53f6fc8b..53f6fc8b 100644 --- a/src/clients/gtk/DSSIController.h +++ b/src/progs/gtk/DSSIController.h diff --git a/src/clients/gtk/DSSIModule.cpp b/src/progs/gtk/DSSIModule.cpp index 7dae48ac..7dae48ac 100644 --- a/src/clients/gtk/DSSIModule.cpp +++ b/src/progs/gtk/DSSIModule.cpp diff --git a/src/clients/gtk/DSSIModule.h b/src/progs/gtk/DSSIModule.h index 2ad10c04..2ad10c04 100644 --- a/src/clients/gtk/DSSIModule.h +++ b/src/progs/gtk/DSSIModule.h diff --git a/src/clients/gtk/GladeFactory.cpp b/src/progs/gtk/GladeFactory.cpp index e930c4c4..e930c4c4 100644 --- a/src/clients/gtk/GladeFactory.cpp +++ b/src/progs/gtk/GladeFactory.cpp diff --git a/src/clients/gtk/GladeFactory.h b/src/progs/gtk/GladeFactory.h index a3ee1022..a3ee1022 100644 --- a/src/clients/gtk/GladeFactory.h +++ b/src/progs/gtk/GladeFactory.h diff --git a/src/clients/gtk/GtkClientInterface.cpp b/src/progs/gtk/GtkClientInterface.cpp index 7bda1e9e..7bda1e9e 100644 --- a/src/clients/gtk/GtkClientInterface.cpp +++ b/src/progs/gtk/GtkClientInterface.cpp diff --git a/src/clients/gtk/GtkClientInterface.h b/src/progs/gtk/GtkClientInterface.h index 7214ef19..7214ef19 100644 --- a/src/clients/gtk/GtkClientInterface.h +++ b/src/progs/gtk/GtkClientInterface.h diff --git a/src/clients/gtk/GtkObjectController.cpp b/src/progs/gtk/GtkObjectController.cpp index 7277d346..7277d346 100644 --- a/src/clients/gtk/GtkObjectController.cpp +++ b/src/progs/gtk/GtkObjectController.cpp diff --git a/src/clients/gtk/GtkObjectController.h b/src/progs/gtk/GtkObjectController.h index 4a09b9c7..4a09b9c7 100644 --- a/src/clients/gtk/GtkObjectController.h +++ b/src/progs/gtk/GtkObjectController.h diff --git a/src/clients/gtk/LashController.cpp b/src/progs/gtk/LashController.cpp index d95d8515..d95d8515 100644 --- a/src/clients/gtk/LashController.cpp +++ b/src/progs/gtk/LashController.cpp diff --git a/src/clients/gtk/LashController.h b/src/progs/gtk/LashController.h index f61c9f7f..f61c9f7f 100644 --- a/src/clients/gtk/LashController.h +++ b/src/progs/gtk/LashController.h diff --git a/src/clients/gtk/LoadPatchWindow.cpp b/src/progs/gtk/LoadPatchWindow.cpp index 60f6e15f..60f6e15f 100644 --- a/src/clients/gtk/LoadPatchWindow.cpp +++ b/src/progs/gtk/LoadPatchWindow.cpp diff --git a/src/clients/gtk/LoadPatchWindow.h b/src/progs/gtk/LoadPatchWindow.h index 7d7093bd..7d7093bd 100644 --- a/src/clients/gtk/LoadPatchWindow.h +++ b/src/progs/gtk/LoadPatchWindow.h diff --git a/src/clients/gtk/LoadPluginWindow.cpp b/src/progs/gtk/LoadPluginWindow.cpp index b84ae39e..b84ae39e 100644 --- a/src/clients/gtk/LoadPluginWindow.cpp +++ b/src/progs/gtk/LoadPluginWindow.cpp diff --git a/src/clients/gtk/LoadPluginWindow.h b/src/progs/gtk/LoadPluginWindow.h index adf11ab4..adf11ab4 100644 --- a/src/clients/gtk/LoadPluginWindow.h +++ b/src/progs/gtk/LoadPluginWindow.h diff --git a/src/clients/gtk/LoadSubpatchWindow.cpp b/src/progs/gtk/LoadSubpatchWindow.cpp index fe02d772..fe02d772 100644 --- a/src/clients/gtk/LoadSubpatchWindow.cpp +++ b/src/progs/gtk/LoadSubpatchWindow.cpp diff --git a/src/clients/gtk/LoadSubpatchWindow.h b/src/progs/gtk/LoadSubpatchWindow.h index 45efdd15..45efdd15 100644 --- a/src/clients/gtk/LoadSubpatchWindow.h +++ b/src/progs/gtk/LoadSubpatchWindow.h diff --git a/src/clients/gtk/Loader.cpp b/src/progs/gtk/Loader.cpp index 643dc3c9..643dc3c9 100644 --- a/src/clients/gtk/Loader.cpp +++ b/src/progs/gtk/Loader.cpp diff --git a/src/clients/gtk/Loader.h b/src/progs/gtk/Loader.h index 46b5f3a8..46b5f3a8 100644 --- a/src/clients/gtk/Loader.h +++ b/src/progs/gtk/Loader.h diff --git a/src/clients/gtk/Makefile.am b/src/progs/gtk/Makefile.am index c92ae2b2..c92ae2b2 100644 --- a/src/clients/gtk/Makefile.am +++ b/src/progs/gtk/Makefile.am diff --git a/src/clients/gtk/MessagesWindow.cpp b/src/progs/gtk/MessagesWindow.cpp index dfdc3750..dfdc3750 100644 --- a/src/clients/gtk/MessagesWindow.cpp +++ b/src/progs/gtk/MessagesWindow.cpp diff --git a/src/clients/gtk/MessagesWindow.h b/src/progs/gtk/MessagesWindow.h index 5f5b86e6..5f5b86e6 100644 --- a/src/clients/gtk/MessagesWindow.h +++ b/src/progs/gtk/MessagesWindow.h diff --git a/src/clients/gtk/NewSubpatchWindow.cpp b/src/progs/gtk/NewSubpatchWindow.cpp index dcc2cd2d..dcc2cd2d 100644 --- a/src/clients/gtk/NewSubpatchWindow.cpp +++ b/src/progs/gtk/NewSubpatchWindow.cpp diff --git a/src/clients/gtk/NewSubpatchWindow.h b/src/progs/gtk/NewSubpatchWindow.h index 8421ea08..8421ea08 100644 --- a/src/clients/gtk/NewSubpatchWindow.h +++ b/src/progs/gtk/NewSubpatchWindow.h diff --git a/src/clients/gtk/NodeControlWindow.cpp b/src/progs/gtk/NodeControlWindow.cpp index e40af67f..e40af67f 100644 --- a/src/clients/gtk/NodeControlWindow.cpp +++ b/src/progs/gtk/NodeControlWindow.cpp diff --git a/src/clients/gtk/NodeControlWindow.h b/src/progs/gtk/NodeControlWindow.h index a9224de9..a9224de9 100644 --- a/src/clients/gtk/NodeControlWindow.h +++ b/src/progs/gtk/NodeControlWindow.h diff --git a/src/clients/gtk/NodeController.cpp b/src/progs/gtk/NodeController.cpp index 57756877..57756877 100644 --- a/src/clients/gtk/NodeController.cpp +++ b/src/progs/gtk/NodeController.cpp diff --git a/src/clients/gtk/NodeController.h b/src/progs/gtk/NodeController.h index ed2a6d59..ed2a6d59 100644 --- a/src/clients/gtk/NodeController.h +++ b/src/progs/gtk/NodeController.h diff --git a/src/clients/gtk/NodePropertiesWindow.cpp b/src/progs/gtk/NodePropertiesWindow.cpp index 048f2513..048f2513 100644 --- a/src/clients/gtk/NodePropertiesWindow.cpp +++ b/src/progs/gtk/NodePropertiesWindow.cpp diff --git a/src/clients/gtk/NodePropertiesWindow.h b/src/progs/gtk/NodePropertiesWindow.h index efff01bb..efff01bb 100644 --- a/src/clients/gtk/NodePropertiesWindow.h +++ b/src/progs/gtk/NodePropertiesWindow.h diff --git a/src/clients/gtk/OmFlowCanvas.cpp b/src/progs/gtk/OmFlowCanvas.cpp index a7e41ea2..a7e41ea2 100644 --- a/src/clients/gtk/OmFlowCanvas.cpp +++ b/src/progs/gtk/OmFlowCanvas.cpp diff --git a/src/clients/gtk/OmFlowCanvas.h b/src/progs/gtk/OmFlowCanvas.h index 2a553f5b..2a553f5b 100644 --- a/src/clients/gtk/OmFlowCanvas.h +++ b/src/progs/gtk/OmFlowCanvas.h diff --git a/src/clients/gtk/OmModule.cpp b/src/progs/gtk/OmModule.cpp index 3a31b7f3..3a31b7f3 100644 --- a/src/clients/gtk/OmModule.cpp +++ b/src/progs/gtk/OmModule.cpp diff --git a/src/clients/gtk/OmModule.h b/src/progs/gtk/OmModule.h index ebb36fe6..ebb36fe6 100644 --- a/src/clients/gtk/OmModule.h +++ b/src/progs/gtk/OmModule.h diff --git a/src/clients/gtk/OmPort.cpp b/src/progs/gtk/OmPort.cpp index b43b8294..b43b8294 100644 --- a/src/clients/gtk/OmPort.cpp +++ b/src/progs/gtk/OmPort.cpp diff --git a/src/clients/gtk/OmPort.h b/src/progs/gtk/OmPort.h index 69a867d5..69a867d5 100644 --- a/src/clients/gtk/OmPort.h +++ b/src/progs/gtk/OmPort.h diff --git a/src/clients/gtk/PatchController.cpp b/src/progs/gtk/PatchController.cpp index 83ba62d9..83ba62d9 100644 --- a/src/clients/gtk/PatchController.cpp +++ b/src/progs/gtk/PatchController.cpp diff --git a/src/clients/gtk/PatchController.h b/src/progs/gtk/PatchController.h index de4af5e4..de4af5e4 100644 --- a/src/clients/gtk/PatchController.h +++ b/src/progs/gtk/PatchController.h diff --git a/src/clients/gtk/PatchDescriptionWindow.cpp b/src/progs/gtk/PatchDescriptionWindow.cpp index d10a9c0e..d10a9c0e 100644 --- a/src/clients/gtk/PatchDescriptionWindow.cpp +++ b/src/progs/gtk/PatchDescriptionWindow.cpp diff --git a/src/clients/gtk/PatchDescriptionWindow.h b/src/progs/gtk/PatchDescriptionWindow.h index 7c00faab..7c00faab 100644 --- a/src/clients/gtk/PatchDescriptionWindow.h +++ b/src/progs/gtk/PatchDescriptionWindow.h diff --git a/src/clients/gtk/PatchTreeWindow.cpp b/src/progs/gtk/PatchTreeWindow.cpp index 065f4d6a..065f4d6a 100644 --- a/src/clients/gtk/PatchTreeWindow.cpp +++ b/src/progs/gtk/PatchTreeWindow.cpp diff --git a/src/clients/gtk/PatchTreeWindow.h b/src/progs/gtk/PatchTreeWindow.h index 3177e5e2..3177e5e2 100644 --- a/src/clients/gtk/PatchTreeWindow.h +++ b/src/progs/gtk/PatchTreeWindow.h diff --git a/src/clients/gtk/PatchView.cpp b/src/progs/gtk/PatchView.cpp index e89428e9..e89428e9 100644 --- a/src/clients/gtk/PatchView.cpp +++ b/src/progs/gtk/PatchView.cpp diff --git a/src/clients/gtk/PatchView.h b/src/progs/gtk/PatchView.h index ff6aebf9..ff6aebf9 100644 --- a/src/clients/gtk/PatchView.h +++ b/src/progs/gtk/PatchView.h diff --git a/src/clients/gtk/PatchWindow.cpp b/src/progs/gtk/PatchWindow.cpp index 1513d473..1513d473 100644 --- a/src/clients/gtk/PatchWindow.cpp +++ b/src/progs/gtk/PatchWindow.cpp diff --git a/src/clients/gtk/PatchWindow.h b/src/progs/gtk/PatchWindow.h index 54ea11ef..54ea11ef 100644 --- a/src/clients/gtk/PatchWindow.h +++ b/src/progs/gtk/PatchWindow.h diff --git a/src/clients/gtk/PortController.cpp b/src/progs/gtk/PortController.cpp index ec05541b..ec05541b 100644 --- a/src/clients/gtk/PortController.cpp +++ b/src/progs/gtk/PortController.cpp diff --git a/src/clients/gtk/PortController.h b/src/progs/gtk/PortController.h index cc2f9dc3..cc2f9dc3 100644 --- a/src/clients/gtk/PortController.h +++ b/src/progs/gtk/PortController.h diff --git a/src/clients/gtk/RenameWindow.cpp b/src/progs/gtk/RenameWindow.cpp index bde9a2c1..bde9a2c1 100644 --- a/src/clients/gtk/RenameWindow.cpp +++ b/src/progs/gtk/RenameWindow.cpp diff --git a/src/clients/gtk/RenameWindow.h b/src/progs/gtk/RenameWindow.h index 81dc96e3..81dc96e3 100644 --- a/src/clients/gtk/RenameWindow.h +++ b/src/progs/gtk/RenameWindow.h diff --git a/src/clients/gtk/Store.cpp b/src/progs/gtk/Store.cpp index 97e556c9..97e556c9 100644 --- a/src/clients/gtk/Store.cpp +++ b/src/progs/gtk/Store.cpp diff --git a/src/clients/gtk/Store.h b/src/progs/gtk/Store.h index 9fb4b270..9fb4b270 100644 --- a/src/clients/gtk/Store.h +++ b/src/progs/gtk/Store.h diff --git a/src/clients/gtk/SubpatchModule.cpp b/src/progs/gtk/SubpatchModule.cpp index 9c0e78e4..9c0e78e4 100644 --- a/src/clients/gtk/SubpatchModule.cpp +++ b/src/progs/gtk/SubpatchModule.cpp diff --git a/src/clients/gtk/SubpatchModule.h b/src/progs/gtk/SubpatchModule.h index 162779d7..162779d7 100644 --- a/src/clients/gtk/SubpatchModule.h +++ b/src/progs/gtk/SubpatchModule.h diff --git a/src/clients/gtk/cmdline.c b/src/progs/gtk/cmdline.c index 11fcd108..11fcd108 100644 --- a/src/clients/gtk/cmdline.c +++ b/src/progs/gtk/cmdline.c diff --git a/src/clients/gtk/cmdline.ggo b/src/progs/gtk/cmdline.ggo index d62cf521..d62cf521 100644 --- a/src/clients/gtk/cmdline.ggo +++ b/src/progs/gtk/cmdline.ggo diff --git a/src/clients/gtk/cmdline.h b/src/progs/gtk/cmdline.h index e404ac2e..e404ac2e 100644 --- a/src/clients/gtk/cmdline.h +++ b/src/progs/gtk/cmdline.h diff --git a/src/clients/gtk/main.cpp b/src/progs/gtk/main.cpp index 702d52f9..702d52f9 100644 --- a/src/clients/gtk/main.cpp +++ b/src/progs/gtk/main.cpp diff --git a/src/clients/gtk/om-icon.png b/src/progs/gtk/om-icon.png Binary files differindex b26dd942..b26dd942 100644 --- a/src/clients/gtk/om-icon.png +++ b/src/progs/gtk/om-icon.png diff --git a/src/clients/gtk/om_gtk.glade b/src/progs/gtk/om_gtk.glade index abe5f254..abe5f254 100644 --- a/src/clients/gtk/om_gtk.glade +++ b/src/progs/gtk/om_gtk.glade diff --git a/src/clients/gtk/om_gtk.glade.bak b/src/progs/gtk/om_gtk.glade.bak index 7714d1f3..7714d1f3 100644 --- a/src/clients/gtk/om_gtk.glade.bak +++ b/src/progs/gtk/om_gtk.glade.bak diff --git a/src/clients/gtk/om_gtk.gladep b/src/progs/gtk/om_gtk.gladep index a8bd18bd..a8bd18bd 100644 --- a/src/clients/gtk/om_gtk.gladep +++ b/src/progs/gtk/om_gtk.gladep diff --git a/src/clients/gtk/om_gtk.gladep.bak b/src/progs/gtk/om_gtk.gladep.bak index a8bd18bd..a8bd18bd 100644 --- a/src/clients/gtk/om_gtk.gladep.bak +++ b/src/progs/gtk/om_gtk.gladep.bak diff --git a/src/clients/gtk/singletons.cpp b/src/progs/gtk/singletons.cpp index 75b441e9..75b441e9 100644 --- a/src/clients/gtk/singletons.cpp +++ b/src/progs/gtk/singletons.cpp diff --git a/src/progs/om/Makefile.am b/src/progs/om/Makefile.am index ae0b3e53..2f503130 100644 --- a/src/progs/om/Makefile.am +++ b/src/progs/om/Makefile.am @@ -1,232 +1,15 @@ -SUBDIRS = tests -DIST_SUBDIRS = events - -AM_CXXFLAGS = @JACK_CFLAGS@ @LOSC_CFLAGS@ @ALSA_CFLAGS@ @LASH_CFLAGS@ @SLV2_CFLAGS@ -I$(top_srcdir)/src/common -I$(top_srcdir)/src/engine/events -fno-exceptions -fno-rtti +AM_CXXFLAGS = @JACK_CFLAGS@ @LOSC_CFLAGS@ @ALSA_CFLAGS@ @LASH_CFLAGS@ @SLV2_CFLAGS@ -I$(top_srcdir)/src/common -I$(top_srcdir)/src/engine -I$(top_srcdir)/src/engine/events -fno-exceptions -fno-rtti MAINTAINERCLEANFILES = Makefile.in -common_SOURCES = \ - util.h \ - tuning.h \ - Node.h \ - NodeBase.h \ - NodeBase.cpp \ - InternalNode.h \ - Patch.h \ - Patch.cpp \ - NodeFactory.h \ - NodeFactory.cpp \ - Om.h \ - Om.cpp \ - OmApp.h \ - OmApp.cpp \ - JackAudioDriver.h \ - JackAudioDriver.cpp \ - OSCReceiver.h \ - OSCReceiver.cpp \ - Responder.h \ - OSCResponder.h \ - OSCResponder.cpp \ - ClientKey.h \ - ClientBroadcaster.h \ - ClientBroadcaster.cpp \ - ObjectSender.h \ - ObjectSender.cpp \ - OSCClient.h \ - OSCClient.cpp \ - Buffer.h \ - Buffer.cpp \ - Port.h \ - Port.cpp \ - PortBase.h \ - PortBase.cpp \ - InputPort.h \ - InputPort.cpp \ - OutputPort.h \ - OutputPort.cpp \ - MidiMessage.h \ - MidiNoteNode.h \ - MidiNoteNode.cpp \ - MidiTriggerNode.h \ - MidiTriggerNode.cpp \ - MidiControlNode.h \ - MidiControlNode.cpp \ - BridgeNode.h \ - BridgeNode.cpp \ - ControlInputNode.h \ - ControlInputNode.cpp \ - ControlOutputNode.h \ - ControlOutputNode.cpp \ - AudioInputNode.h \ - AudioInputNode.cpp \ - AudioOutputNode.h \ - AudioOutputNode.cpp \ - MidiInputNode.h \ - MidiInputNode.cpp \ - MidiOutputNode.h \ - MidiOutputNode.cpp \ - Event.h \ - Event.cpp \ - QueuedEvent.h \ - EventSource.h \ - QueuedEventSource.h \ - QueuedEventSource.cpp \ - QueuedEngineInterface.h \ - QueuedEngineInterface.cpp \ - OmObject.h \ - Maid.h \ - Maid.cpp \ - MaidObject.h \ - Tree.h \ - ClientRecord.h \ - PortInfo.h \ - PluginLibrary.h \ - Plugin.h \ - Array.h \ - List.h \ - PostProcessor.h \ - PostProcessor.cpp \ - Connection.h \ - Connection.cpp \ - ConnectionBase.h \ - ConnectionBase.cpp \ - ObjectStore.h \ - ObjectStore.cpp \ - TransportNode.h \ - TransportNode.cpp \ - Driver.h \ - AudioDriver.h \ - MidiDriver.h \ - midi.h \ - ../common/util/Semaphore.h \ - ../common/util/types.h \ - ../common/util/Path.h \ - ../common/util/Queue.h \ - ../common/interface/ClientInterface.h \ - ../common/interface/EngineInterface.h \ - instantiations.cpp - -# Events -common_SOURCES += \ - events/RegisterClientEvent.h \ - events/RegisterClientEvent.cpp \ - events/UnregisterClientEvent.h \ - events/UnregisterClientEvent.cpp \ - events/PingQueuedEvent.h \ - events/ActivateEvent.h \ - events/ActivateEvent.cpp \ - events/DeactivateEvent.h \ - events/DeactivateEvent.cpp \ - events/SetPortValueEvent.h \ - events/SetPortValueEvent.cpp \ - events/SetPortValueQueuedEvent.h \ - events/SetPortValueQueuedEvent.cpp \ - events/NoteOnEvent.h \ - events/NoteOnEvent.cpp \ - events/NoteOffEvent.h \ - events/NoteOffEvent.cpp \ - events/AllNotesOffEvent.h \ - events/AllNotesOffEvent.cpp \ - events/ConnectionEvent.h \ - events/ConnectionEvent.cpp \ - events/DisconnectionEvent.h \ - events/DisconnectionEvent.cpp \ - events/DisconnectNodeEvent.h \ - events/DisconnectNodeEvent.cpp \ - events/DisconnectPortEvent.h \ - events/DisconnectPortEvent.cpp \ - events/DestroyEvent.h \ - events/DestroyEvent.cpp \ - events/AddNodeEvent.h \ - events/AddNodeEvent.cpp \ - events/SetMetadataEvent.h \ - events/SetMetadataEvent.cpp \ - events/RequestMetadataEvent.h \ - events/RequestMetadataEvent.cpp \ - events/RequestPortValueEvent.h \ - events/RequestPortValueEvent.cpp \ - events/RequestAllObjectsEvent.h \ - events/RequestAllObjectsEvent.cpp \ - events/RequestPluginsEvent.h \ - events/RequestPluginsEvent.cpp \ - events/CreatePatchEvent.h \ - events/CreatePatchEvent.cpp \ - events/LoadPluginsEvent.h \ - events/LoadPluginsEvent.cpp \ - events/EnablePatchEvent.h \ - events/EnablePatchEvent.cpp \ - events/DisablePatchEvent.h \ - events/DisablePatchEvent.cpp \ - events/ClearPatchEvent.h \ - events/ClearPatchEvent.cpp \ - events/RenameEvent.h \ - events/RenameEvent.cpp \ - events/MidiLearnEvent.h \ - events/MidiLearnEvent.cpp - -if WITH_JACK_MIDI -common_SOURCES += \ - JackMidiDriver.h \ - JackMidiDriver.cpp -endif - -if WITH_ALSA_MIDI -common_SOURCES += \ - AlsaMidiDriver.h \ - AlsaMidiDriver.cpp -endif - -if WITH_LADSPA -common_SOURCES += \ - LADSPAPlugin.h \ - LADSPAPlugin.cpp -endif - -if WITH_DSSI -common_SOURCES += \ - DSSIPlugin.h \ - DSSIPlugin.cpp \ - events/DSSIConfigureEvent.cpp \ - events/DSSIConfigureEvent.h \ - events/DSSIControlEvent.cpp \ - events/DSSIControlEvent.h \ - events/DSSIProgramEvent.cpp \ - events/DSSIProgramEvent.h \ - events/DSSIUpdateEvent.cpp \ - events/DSSIUpdateEvent.h -endif - -if WITH_LV2 -common_SOURCES += \ - LV2Plugin.h \ - LV2Plugin.cpp -endif - -if WITH_LASH -common_SOURCES += \ - LashDriver.h \ - LashDriver.cpp \ - LashRestoreDoneEvent.h -endif - - -# -# Non-installed library to link stand-alone and in-process build against -# - -noinst_LTLIBRARIES = libom.la -libom_la_SOURCES = $(common_SOURCES) - - - # # Stand-alone engine # if BUILD_ENGINE bin_PROGRAMS = om -om_DEPENDENCIES = libom.la -om_LDADD = @JACK_LIBS@ @LOSC_LIBS@ @ALSA_LIBS@ @LASH_LIBS@ @SLV2_LIBS@ -lrt libom.la +om_DEPENDENCIES = ../../libs/engine/libom.la +om_LDADD = @JACK_LIBS@ @LOSC_LIBS@ @ALSA_LIBS@ @LASH_LIBS@ @SLV2_LIBS@ -lrt ../../libs/engine/libom.la om_SOURCES = \ main.cpp \ @@ -236,24 +19,25 @@ om_SOURCES = \ endif # BUILD_ENGINE - +## +## Jack internal client +## +#if BUILD_IN_PROCESS_ENGINE # -# Jack internal client # -if BUILD_IN_PROCESS_ENGINE - - -# FIXME: broken - - -# FIXME: Figure out how to get this properly -omdir = $(prefix)/lib/jack +## FIXME: broken +# +# +## FIXME: Figure out how to get this properly +#omdir = $(prefix)/lib/jack +# +#om_la_CFLAGS = -fPIC +#om_LTLIBRARIES = om.la +#om_la_LDFLAGS = -module -avoid-version @JACK_LIBS@ @LOSC_LIBS@ @ALSA_LIBS@ @LASH_LIBS@ @SLV2_LIBS@ +#om_la_SOURCES = OmInProcess.cpp +# +#endif # BUILD_IN_PROCESS_ENGINE -om_la_CFLAGS = -fPIC -om_LTLIBRARIES = om.la -om_la_LDFLAGS = -module -avoid-version @JACK_LIBS@ @LOSC_LIBS@ @ALSA_LIBS@ @LASH_LIBS@ @SLV2_LIBS@ -om_la_SOURCES = OmInProcess.cpp -endif # BUILD_IN_PROCESS_ENGINE diff --git a/src/libs/engine/cmdline.c b/src/progs/om/cmdline.c index 6b7ddf6a..6b7ddf6a 100644 --- a/src/libs/engine/cmdline.c +++ b/src/progs/om/cmdline.c diff --git a/src/libs/engine/cmdline.ggo b/src/progs/om/cmdline.ggo index 8c006ca7..8c006ca7 100644 --- a/src/libs/engine/cmdline.ggo +++ b/src/progs/om/cmdline.ggo diff --git a/src/libs/engine/cmdline.h b/src/progs/om/cmdline.h index fe36a969..fe36a969 100644 --- a/src/libs/engine/cmdline.h +++ b/src/progs/om/cmdline.h diff --git a/src/libs/engine/main.cpp b/src/progs/om/main.cpp index a69c7e76..a69c7e76 100644 --- a/src/libs/engine/main.cpp +++ b/src/progs/om/main.cpp diff --git a/src/clients/patch_loader/Makefile.am b/src/progs/patch_loader/Makefile.am index 15e0c503..15e0c503 100644 --- a/src/clients/patch_loader/Makefile.am +++ b/src/progs/patch_loader/Makefile.am diff --git a/src/clients/new/patch_loader/README b/src/progs/patch_loader/README index 9f3b6f4b..9f3b6f4b 100644 --- a/src/clients/new/patch_loader/README +++ b/src/progs/patch_loader/README diff --git a/src/clients/new/patch_loader/cmdline.c b/src/progs/patch_loader/cmdline.c index 0606cb7b..0606cb7b 100644 --- a/src/clients/new/patch_loader/cmdline.c +++ b/src/progs/patch_loader/cmdline.c diff --git a/src/clients/new/patch_loader/cmdline.ggo b/src/progs/patch_loader/cmdline.ggo index 5acd6737..5acd6737 100644 --- a/src/clients/new/patch_loader/cmdline.ggo +++ b/src/progs/patch_loader/cmdline.ggo diff --git a/src/clients/new/patch_loader/cmdline.h b/src/progs/patch_loader/cmdline.h index b417c664..b417c664 100644 --- a/src/clients/new/patch_loader/cmdline.h +++ b/src/progs/patch_loader/cmdline.h diff --git a/src/clients/patch_loader/new_patch_loader.cpp b/src/progs/patch_loader/new_patch_loader.cpp index 8884e85b..8884e85b 100644 --- a/src/clients/patch_loader/new_patch_loader.cpp +++ b/src/progs/patch_loader/new_patch_loader.cpp diff --git a/src/clients/patch_loader/patch_loader.cpp b/src/progs/patch_loader/patch_loader.cpp index e8579ed7..e8579ed7 100644 --- a/src/clients/patch_loader/patch_loader.cpp +++ b/src/progs/patch_loader/patch_loader.cpp diff --git a/src/clients/python/Makefile.am b/src/progs/python/Makefile.am index 017b1f4b..017b1f4b 100644 --- a/src/clients/python/Makefile.am +++ b/src/progs/python/Makefile.am diff --git a/src/clients/python/OSC.py b/src/progs/python/OSC.py index 74eb5880..74eb5880 100755 --- a/src/clients/python/OSC.py +++ b/src/progs/python/OSC.py diff --git a/src/clients/python/omecho.py b/src/progs/python/omecho.py index c0d2d3b1..c0d2d3b1 100644 --- a/src/clients/python/omecho.py +++ b/src/progs/python/omecho.py diff --git a/src/clients/python/omsynth.py b/src/progs/python/omsynth.py index d7cfa5ab..d7cfa5ab 100644 --- a/src/clients/python/omsynth.py +++ b/src/progs/python/omsynth.py diff --git a/src/clients/python/scripts/Makefile.am b/src/progs/python/scripts/Makefile.am index 3e070601..3e070601 100644 --- a/src/clients/python/scripts/Makefile.am +++ b/src/progs/python/scripts/Makefile.am diff --git a/src/clients/python/scripts/flatten.py b/src/progs/python/scripts/flatten.py index eaf8084d..eaf8084d 100755 --- a/src/clients/python/scripts/flatten.py +++ b/src/progs/python/scripts/flatten.py diff --git a/src/clients/python/scripts/sillysinepatch.py b/src/progs/python/scripts/sillysinepatch.py index ac51a080..ac51a080 100644 --- a/src/clients/python/scripts/sillysinepatch.py +++ b/src/progs/python/scripts/sillysinepatch.py diff --git a/src/clients/supercollider/Makefile.am b/src/progs/supercollider/Makefile.am index 69661c73..69661c73 100644 --- a/src/clients/supercollider/Makefile.am +++ b/src/progs/supercollider/Makefile.am diff --git a/src/clients/supercollider/Om.sc b/src/progs/supercollider/Om.sc index cb366d58..cb366d58 100644 --- a/src/clients/supercollider/Om.sc +++ b/src/progs/supercollider/Om.sc diff --git a/src/clients/supercollider/README b/src/progs/supercollider/README index 020da8aa..020da8aa 100644 --- a/src/clients/supercollider/README +++ b/src/progs/supercollider/README diff --git a/src/clients/supercollider/example.sc b/src/progs/supercollider/example.sc index 6186e433..6186e433 100644 --- a/src/clients/supercollider/example.sc +++ b/src/progs/supercollider/example.sc |