From 629fb50716083c71146340de97eb8651679ca9fb Mon Sep 17 00:00:00 2001 From: David Robillard Date: Tue, 31 Jul 2012 00:14:50 +0000 Subject: Merge Ingen::Shared namespace into Ingen namespace and core libingen library. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4579 a436a847-0d15-0410-975c-d299462d15a1 --- src/Configuration.cpp | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 src/Configuration.cpp (limited to 'src/Configuration.cpp') diff --git a/src/Configuration.cpp b/src/Configuration.cpp new file mode 100644 index 00000000..f3e57520 --- /dev/null +++ b/src/Configuration.cpp @@ -0,0 +1,54 @@ +/* + This file is part of Ingen. + Copyright 2007-2012 David Robillard + + Ingen is free software: you can redistribute it and/or modify it under the + terms of the GNU Affero General Public License as published by the Free + Software Foundation, either version 3 of the License, or any later version. + + Ingen is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU Affero General Public License for details. + + You should have received a copy of the GNU Affero General Public License + along with Ingen. If not, see . +*/ + +#include "ingen/Configuration.hpp" + +namespace Ingen { + +Configuration::Configuration() + : Raul::Configuration( + "A realtime modular audio processor.", + "Ingen is a flexible modular system that be used in various ways.\n" + "The engine can run as a stand-alone server controlled via network protocol,\n" + "or internal to another process (e.g. the GUI). The GUI, or other\n" + "clients, can communicate with the engine via any supported protocol, or host the\n" + "engine in the same process. Many clients can connect to an engine at once.\n\n" + "Examples:\n" + " ingen -e # Run an engine, listen for connections\n" + " ingen -g # Run a GUI, connect to running engine\n" + " ingen -eg # Run an engine and a GUI in one process\n" + " ingen -egl patch.ttl # Run an engine and a GUI and load a patch file\n" + " ingen -egl patch.ingen # Run an engine and a GUI and load a patch bundle") +{ + add("client-port", 'C', "Client port", INT, Value()); + add("connect", 'c', "Connect to engine URI", STRING, Value("unix:///tmp/ingen.sock")); + add("engine", 'e', "Run (JACK) engine", BOOL, Value(false)); + add("engine-port", 'E', "Engine listen port", INT, Value(16180)); + add("socket", 'S', "Engine socket path", STRING, Value("/tmp/ingen.sock")); + add("gui", 'g', "Launch the GTK graphical interface", BOOL, Value(false)); + add("help", 'h', "Print this help message", BOOL, Value(false)); + add("jack-client", 'n', "JACK client name", STRING, Value("ingen")); + add("jack-server", 's', "JACK server name", STRING, Value("")); + add("uuid", 'u', "JACK session UUID", STRING, Value()); + add("load", 'l', "Load patch", STRING, Value()); + add("packet-size", 'k', "Maximum UDP packet size", INT, Value(4096)); + add("parallelism", 'p', "Number of concurrent process threads", INT, Value(1)); + add("path", 'L', "Target path for loaded patch", STRING, Value()); + add("queue-size", 'q', "Event queue size", INT, Value(4096)); + add("run", 'r', "Run script", STRING, Value()); +} + +} // namespace Ingen -- cgit v1.2.1