summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-06-09 20:57:59 +0000
committerDavid Robillard <d@drobilla.net>2008-06-09 20:57:59 +0000
commit89921216843e5a47d8eaf5cb8357b758b252d26d (patch)
treebf02c98bac385b1354eb5b231380c9619bc43fdf /src
parent4a1a4cecbeca04cd3b2f7a10b7f9fffff886e0ac (diff)
downloadpatchage-89921216843e5a47d8eaf5cb8357b758b252d26d.tar.gz
patchage-89921216843e5a47d8eaf5cb8357b758b252d26d.tar.bz2
patchage-89921216843e5a47d8eaf5cb8357b758b252d26d.zip
Cleanup/shrink code.
git-svn-id: http://svn.drobilla.net/lad/patchage@1260 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src')
-rw-r--r--src/JackDbusDriver.cpp410
1 files changed, 175 insertions, 235 deletions
diff --git a/src/JackDbusDriver.cpp b/src/JackDbusDriver.cpp
index 8922aa8..f775b8f 100644
--- a/src/JackDbusDriver.cpp
+++ b/src/JackDbusDriver.cpp
@@ -62,6 +62,7 @@ using namespace FlowCanvas;
//#define USE_FULL_REFRESH
+
JackDriver::JackDriver(Patchage* app)
: Driver(128)
, _app(app)
@@ -71,15 +72,12 @@ JackDriver::JackDriver(Patchage* app)
, _graph_version(0)
, _max_dsp_load(0.0)
{
- //info_msg(__func__);
-
dbus_error_init(&_dbus_error);
}
+
JackDriver::~JackDriver()
{
- //info_msg(__func__);
-
if (_dbus_connection) {
dbus_connection_flush(_dbus_connection);
}
@@ -89,6 +87,7 @@ JackDriver::~JackDriver()
}
}
+
/** Destroy all JACK (canvas) ports.
*/
void
@@ -99,6 +98,7 @@ JackDriver::destroy_all_ports()
SharedPtr<Module> module = PtrCast<Module>(*m);
if (!module)
continue;
+
PortVector ports = module->ports(); // copy
for (PortVector::iterator p = ports.begin(); p != ports.end(); ++p) {
boost::shared_ptr<PatchagePort> port = boost::dynamic_pointer_cast<PatchagePort>(*p);
@@ -115,13 +115,11 @@ JackDriver::destroy_all_ports()
}
}
+
void
JackDriver::update_attached()
{
- bool was_attached;
-
- was_attached = _server_started;
-
+ bool was_attached = _server_started;
_server_started = is_started();
if (!_server_responding) {
@@ -142,6 +140,7 @@ JackDriver::update_attached()
}
}
+
void
JackDriver::on_jack_appeared()
{
@@ -149,6 +148,7 @@ JackDriver::on_jack_appeared()
update_attached();
}
+
void
JackDriver::on_jack_disappeared()
{
@@ -165,11 +165,12 @@ JackDriver::on_jack_disappeared()
_server_started = false;
}
+
DBusHandlerResult
JackDriver::dbus_message_hook(
- DBusConnection *connection,
- DBusMessage *message,
- void *jack_driver)
+ DBusConnection* connection,
+ DBusMessage* message,
+ void* jack_driver)
{
dbus_uint64_t new_graph_version;
dbus_uint64_t client_id;
@@ -196,17 +197,13 @@ JackDriver::dbus_message_hook(
// Handle signals we have subscribed for in attach()
if (dbus_message_is_signal(message, DBUS_INTERFACE_DBUS, "NameOwnerChanged")) {
- if (!dbus_message_get_args(
- message,
- &me->_dbus_error,
- DBUS_TYPE_STRING,
- &object_name,
- DBUS_TYPE_STRING,
- &old_owner,
- DBUS_TYPE_STRING,
- &new_owner,
+ if (!dbus_message_get_args( message, &me->_dbus_error,
+ DBUS_TYPE_STRING, &object_name,
+ DBUS_TYPE_STRING, &old_owner,
+ DBUS_TYPE_STRING, &new_owner,
DBUS_TYPE_INVALID)) {
- me->error_msg(str(boost::format("dbus_message_get_args() failed to extract NameOwnerChanged signal arguments (%s)") % me->_dbus_error.message));
+ me->error_msg(str(boost::format("dbus_message_get_args() failed to extract "
+ "NameOwnerChanged signal arguments (%s)") % me->_dbus_error.message));
dbus_error_free(&me->_dbus_error);
return DBUS_HANDLER_RESULT_HANDLED;
}
@@ -220,14 +217,15 @@ JackDriver::dbus_message_hook(
#if defined(USE_FULL_REFRESH)
if (dbus_message_is_signal(message, JACKDBUS_IFACE_PATCHBAY, "GraphChanged")) {
- if (!dbus_message_get_args(message, &me->_dbus_error, DBUS_TYPE_UINT64, &new_graph_version, DBUS_TYPE_INVALID)) {
- me->error_msg(str(boost::format("dbus_message_get_args() failed to extract GraphChanged signal arguments (%s)") % me->_dbus_error.message));
+ if (!dbus_message_get_args(message, &me->_dbus_error,
+ DBUS_TYPE_UINT64, &new_graph_version,
+ DBUS_TYPE_INVALID)) {
+ me->error_msg(str(boost::format("dbus_message_get_args() failed to extract "
+ "GraphChanged signal arguments (%s)") % me->_dbus_error.message));
dbus_error_free(&me->_dbus_error);
return DBUS_HANDLER_RESULT_HANDLED;
}
- //me->info_msg(str(boost::format("GraphChanged, new version is %llu") % new_graph_version));
-
if (!me->_server_started) {
me->_server_started = true;
me->signal_attached.emit();
@@ -251,25 +249,17 @@ JackDriver::dbus_message_hook(
// }
if (dbus_message_is_signal(message, JACKDBUS_IFACE_PATCHBAY, "PortAppeared")) {
- if (!dbus_message_get_args(
- message,
- &me->_dbus_error,
- DBUS_TYPE_UINT64,
- &new_graph_version,
- DBUS_TYPE_UINT64,
- &client_id,
- DBUS_TYPE_STRING,
- &client_name,
- DBUS_TYPE_UINT64,
- &port_id,
- DBUS_TYPE_STRING,
- &port_name,
- DBUS_TYPE_UINT32,
- &port_flags,
- DBUS_TYPE_UINT32,
- &port_type,
+ if (!dbus_message_get_args( message, &me->_dbus_error,
+ DBUS_TYPE_UINT64, &new_graph_version,
+ DBUS_TYPE_UINT64, &client_id,
+ DBUS_TYPE_STRING, &client_name,
+ DBUS_TYPE_UINT64, &port_id,
+ DBUS_TYPE_STRING, &port_name,
+ DBUS_TYPE_UINT32, &port_flags,
+ DBUS_TYPE_UINT32, &port_type,
DBUS_TYPE_INVALID)) {
- me->error_msg(str(boost::format("dbus_message_get_args() failed to extract PortAppeared signal arguments (%s)") % me->_dbus_error.message));
+ me->error_msg(str(boost::format("dbus_message_get_args() failed to extract "
+ "PortAppeared signal arguments (%s)") % me->_dbus_error.message));
dbus_error_free(&me->_dbus_error);
return DBUS_HANDLER_RESULT_HANDLED;
}
@@ -283,25 +273,19 @@ JackDriver::dbus_message_hook(
me->add_port(client_id, client_name, port_id, port_name, port_flags, port_type);
- return DBUS_HANDLER_RESULT_HANDLED;
+ return DBUS_HANDLER_RESULT_HANDLED;
}
if (dbus_message_is_signal(message, JACKDBUS_IFACE_PATCHBAY, "PortDisappeared")) {
- if (!dbus_message_get_args(
- message,
- &me->_dbus_error,
- DBUS_TYPE_UINT64,
- &new_graph_version,
- DBUS_TYPE_UINT64,
- &client_id,
- DBUS_TYPE_STRING,
- &client_name,
- DBUS_TYPE_UINT64,
- &port_id,
- DBUS_TYPE_STRING,
- &port_name,
+ if (!dbus_message_get_args( message, &me->_dbus_error,
+ DBUS_TYPE_UINT64, &new_graph_version,
+ DBUS_TYPE_UINT64, &client_id,
+ DBUS_TYPE_STRING, &client_name,
+ DBUS_TYPE_UINT64, &port_id,
+ DBUS_TYPE_STRING, &port_name,
DBUS_TYPE_INVALID)) {
- me->error_msg(str(boost::format("dbus_message_get_args() failed to extract PortDisappeared signal arguments (%s)") % me->_dbus_error.message));
+ me->error_msg(str(boost::format("dbus_message_get_args() failed to extract "
+ "PortDisappeared signal arguments (%s)") % me->_dbus_error.message));
dbus_error_free(&me->_dbus_error);
return DBUS_HANDLER_RESULT_HANDLED;
}
@@ -315,50 +299,28 @@ JackDriver::dbus_message_hook(
me->remove_port(client_id, client_name, port_id, port_name);
- return DBUS_HANDLER_RESULT_HANDLED;
+ return DBUS_HANDLER_RESULT_HANDLED;
}
if (dbus_message_is_signal(message, JACKDBUS_IFACE_PATCHBAY, "PortsConnected")) {
- if (!dbus_message_get_args(
- message,
- &me->_dbus_error,
- DBUS_TYPE_UINT64,
- &new_graph_version,
- DBUS_TYPE_UINT64,
- &client_id,
- DBUS_TYPE_STRING,
- &client_name,
- DBUS_TYPE_UINT64,
- &port_id,
- DBUS_TYPE_STRING,
- &port_name,
- DBUS_TYPE_UINT64,
- &client2_id,
- DBUS_TYPE_STRING,
- &client2_name,
- DBUS_TYPE_UINT64,
- &port2_id,
- DBUS_TYPE_STRING,
- &port2_name,
- DBUS_TYPE_UINT64,
- &connection_id,
- DBUS_TYPE_INVALID)) {
- me->error_msg(str(boost::format("dbus_message_get_args() failed to extract PortsConnected signal arguments (%s)") % me->_dbus_error.message));
+ if (!dbus_message_get_args(message, &me->_dbus_error,
+ DBUS_TYPE_UINT64, &new_graph_version,
+ DBUS_TYPE_UINT64, &client_id,
+ DBUS_TYPE_STRING, &client_name,
+ DBUS_TYPE_UINT64, &port_id,
+ DBUS_TYPE_STRING, &port_name,
+ DBUS_TYPE_UINT64, &client2_id,
+ DBUS_TYPE_STRING, &client2_name,
+ DBUS_TYPE_UINT64, &port2_id,
+ DBUS_TYPE_STRING, &port2_name,
+ DBUS_TYPE_UINT64, &connection_id,
+ DBUS_TYPE_INVALID)) {
+ me->error_msg(str(boost::format("dbus_message_get_args() failed to extract "
+ "PortsConnected signal arguments (%s)") % me->_dbus_error.message));
dbus_error_free(&me->_dbus_error);
return DBUS_HANDLER_RESULT_HANDLED;
}
-// me->info_msg(str(boost::format("ports connected (%llu) %s(%llu):%s(%llu) <-> %s(%llu):%s(%llu)") %
-// connection_id %
-// client_name %
-// client_id %
-// port_name %
-// port_id %
-// client2_name %
-// client2_id %
-// port2_name %
-// port2_id));
-
if (!me->_server_started) {
me->_server_started = true;
me->signal_attached.emit();
@@ -366,59 +328,33 @@ JackDriver::dbus_message_hook(
me->connect_ports(
connection_id,
- client_id,
- client_name,
- port_id,
- port_name,
- client2_id,
- client2_name,
- port2_id,
- port2_name);
+ client_id, client_name,
+ port_id, port_name,
+ client2_id, client2_name,
+ port2_id, port2_name);
- return DBUS_HANDLER_RESULT_HANDLED;
+ return DBUS_HANDLER_RESULT_HANDLED;
}
if (dbus_message_is_signal(message, JACKDBUS_IFACE_PATCHBAY, "PortsDisconnected")) {
- if (!dbus_message_get_args(
- message,
- &me->_dbus_error,
- DBUS_TYPE_UINT64,
- &new_graph_version,
- DBUS_TYPE_UINT64,
- &client_id,
- DBUS_TYPE_STRING,
- &client_name,
- DBUS_TYPE_UINT64,
- &port_id,
- DBUS_TYPE_STRING,
- &port_name,
- DBUS_TYPE_UINT64,
- &client2_id,
- DBUS_TYPE_STRING,
- &client2_name,
- DBUS_TYPE_UINT64,
- &port2_id,
- DBUS_TYPE_STRING,
- &port2_name,
- DBUS_TYPE_UINT64,
- &connection_id,
+ if (!dbus_message_get_args(message, &me->_dbus_error,
+ DBUS_TYPE_UINT64, &new_graph_version,
+ DBUS_TYPE_UINT64, &client_id,
+ DBUS_TYPE_STRING, &client_name,
+ DBUS_TYPE_UINT64, &port_id,
+ DBUS_TYPE_STRING, &port_name,
+ DBUS_TYPE_UINT64, &client2_id,
+ DBUS_TYPE_STRING, &client2_name,
+ DBUS_TYPE_UINT64, &port2_id,
+ DBUS_TYPE_STRING, &port2_name,
+ DBUS_TYPE_UINT64, &connection_id,
DBUS_TYPE_INVALID)) {
- me->error_msg(str(boost::format("dbus_message_get_args() failed to extract PortsConnected signal arguments (%s)") % me->_dbus_error.message));
+ me->error_msg(str(boost::format("dbus_message_get_args() failed to extract "
+ "PortsConnected signal arguments (%s)") % me->_dbus_error.message));
dbus_error_free(&me->_dbus_error);
return DBUS_HANDLER_RESULT_HANDLED;
}
-// me->info_msg(str(boost::format("ports disconnected (%llu) %s(%llu):%s(%llu) <-> %s(%llu):%s(%llu)") %
-// connection_id %
-// client_name %
-// client_id %
-// port_name %
-// port_id %
-// client2_name %
-// client2_id %
-// port2_name %
-// port2_id));
-
if (!me->_server_started) {
me->_server_started = true;
me->signal_attached.emit();
@@ -426,32 +362,26 @@ JackDriver::dbus_message_hook(
me->disconnect_ports(
connection_id,
- client_id,
- client_name,
- port_id,
- port_name,
- client2_id,
- client2_name,
- port2_id,
- port2_name);
+ client_id, client_name,
+ port_id, port_name,
+ client2_id, client2_name,
+ port2_id, port2_name);
- return DBUS_HANDLER_RESULT_HANDLED;
+ return DBUS_HANDLER_RESULT_HANDLED;
}
#endif
- //me->info_msg("not yet handled.");
-
- return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
+ return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
}
+
bool
JackDriver::call(
- bool response_expected,
- const char* iface,
- const char* method,
- DBusMessage ** reply_ptr_ptr,
- int in_type,
- ...)
+ bool response_expected,
+ const char* iface,
+ const char* method,
+ DBusMessage** reply_ptr_ptr,
+ int in_type, ...)
{
DBusMessage* request_ptr;
DBusMessage* reply_ptr;
@@ -468,21 +398,20 @@ JackDriver::call(
va_start(ap, in_type);
- dbus_message_append_args_valist(
- request_ptr,
- in_type,
- ap);
+ dbus_message_append_args_valist(request_ptr, in_type, ap);
va_end(ap);
// send message and get a handle for a reply
- reply_ptr = dbus_connection_send_with_reply_and_block(_dbus_connection, request_ptr, JACKDBUS_CALL_DEFAULT_TIMEOUT, &_dbus_error);
+ reply_ptr = dbus_connection_send_with_reply_and_block(_dbus_connection, request_ptr,
+ JACKDBUS_CALL_DEFAULT_TIMEOUT, &_dbus_error);
dbus_message_unref(request_ptr);
if (!reply_ptr) {
if (response_expected) {
- error_msg(str(boost::format("no reply from server when calling method '%s', error is '%s'") % method % _dbus_error.message));
+ error_msg(str(boost::format("no reply from server when calling method '%s'"
+ ", error is '%s'") % method % _dbus_error.message));
}
_server_responding = false;
dbus_error_free(&_dbus_error);
@@ -494,6 +423,7 @@ JackDriver::call(
return reply_ptr;
}
+
bool
JackDriver::is_started()
{
@@ -504,7 +434,9 @@ JackDriver::is_started()
return false;
}
- if (!dbus_message_get_args(reply_ptr, &_dbus_error, DBUS_TYPE_BOOLEAN, &started, DBUS_TYPE_INVALID)) {
+ if (!dbus_message_get_args(reply_ptr, &_dbus_error,
+ DBUS_TYPE_BOOLEAN, &started,
+ DBUS_TYPE_INVALID)) {
dbus_message_unref(reply_ptr);
dbus_error_free(&_dbus_error);
error_msg("decoding reply of IsStarted failed.");
@@ -516,6 +448,7 @@ JackDriver::is_started()
return started;
}
+
void
JackDriver::start_server()
{
@@ -530,6 +463,7 @@ JackDriver::start_server()
update_attached();
}
+
void
JackDriver::stop_server()
{
@@ -547,10 +481,11 @@ JackDriver::stop_server()
}
}
+
void
JackDriver::attach(bool launch_daemon)
{
- // connect to the bus
+ // Connect to the bus
_dbus_connection = dbus_bus_get(DBUS_BUS_SESSION, &_dbus_error);
if (dbus_error_is_set(&_dbus_error)) {
error_msg("dbus_bus_get() failed");
@@ -559,20 +494,20 @@ JackDriver::attach(bool launch_daemon)
return;
}
- dbus_connection_setup_with_g_main(_dbus_connection, NULL);
+ dbus_connection_setup_with_g_main(_dbus_connection, NULL);
- dbus_bus_add_match(_dbus_connection, "type='signal',interface='" DBUS_INTERFACE_DBUS "',member=NameOwnerChanged,arg0='org.jackaudio.service'", NULL);
+ dbus_bus_add_match(_dbus_connection, "type='signal',interface='" DBUS_INTERFACE_DBUS "',member=NameOwnerChanged,arg0='org.jackaudio.service'", NULL);
#if defined(USE_FULL_REFRESH)
- dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=GraphChanged", NULL);
+ dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=GraphChanged", NULL);
#else
-// dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=ClientAppeared", NULL);
-// dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=ClientDisappeared", NULL);
- dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=PortAppeared", NULL);
- dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=PortDisappeared", NULL);
- dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=PortsConnected", NULL);
- dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=PortsDisconnected", NULL);
+ // dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=ClientAppeared", NULL);
+ // dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=ClientDisappeared", NULL);
+ dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=PortAppeared", NULL);
+ dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=PortDisappeared", NULL);
+ dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=PortsConnected", NULL);
+ dbus_bus_add_match(_dbus_connection, "type='signal',interface='" JACKDBUS_IFACE_PATCHBAY "',member=PortsDisconnected", NULL);
#endif
- dbus_connection_add_filter(_dbus_connection, dbus_message_hook, this, NULL);
+ dbus_connection_add_filter(_dbus_connection, dbus_message_hook, this, NULL);
update_attached();
@@ -585,18 +520,21 @@ JackDriver::attach(bool launch_daemon)
}
}
+
void
JackDriver::detach()
{
- stop_server();
+ stop_server();
}
+
bool
JackDriver::is_attached() const
{
return _dbus_connection && _server_responding;
}
+
void
JackDriver::add_port(
boost::shared_ptr<PatchageModule>& module,
@@ -620,6 +558,7 @@ JackDriver::add_port(
module->resize();
}
+
void
JackDriver::add_port(
dbus_uint64_t client_id,
@@ -657,6 +596,7 @@ JackDriver::add_port(
add_port(module, local_port_type, port_name, port_flags & JACKDBUS_PORT_FLAG_INPUT);
}
+
void
JackDriver::remove_port(
dbus_uint64_t client_id,
@@ -692,6 +632,7 @@ JackDriver::remove_port(
}
}
+
boost::shared_ptr<PatchageModule>
JackDriver::find_or_create_module(
ModuleType type,
@@ -708,6 +649,7 @@ JackDriver::find_or_create_module(
return module;
}
+
void
JackDriver::connect_ports(
dbus_uint64_t connection_id,
@@ -735,6 +677,7 @@ JackDriver::connect_ports(
_app->canvas()->add_connection(port1, port2, port1->color() + 0x22222200);
}
+
void
JackDriver::disconnect_ports(
dbus_uint64_t connection_id,
@@ -762,6 +705,7 @@ JackDriver::disconnect_ports(
_app->canvas()->remove_connection(port1, port2);
}
+
void
JackDriver::refresh_internal(bool force)
{
@@ -789,12 +733,12 @@ JackDriver::refresh_internal(bool force)
dbus_uint64_t connection_id;
if (force) {
- version = 0; // workaround module split/join stupidity
+ version = 0; // workaround module split/join stupidity
} else {
version = _graph_version;
}
- if (!call(true, JACKDBUS_IFACE_PATCHBAY, "GetGraph", &reply_ptr, DBUS_TYPE_UINT64, &version, DBUS_TYPE_INVALID)) {
+ if (!call(true, JACKDBUS_IFACE_PATCHBAY, "GetGraph", &reply_ptr, DBUS_TYPE_UINT64, &version, DBUS_TYPE_INVALID)) {
error_msg("GetGraph() failed.");
return;
}
@@ -818,7 +762,7 @@ JackDriver::refresh_internal(bool force)
destroy_all_ports();
-// info_msg(str(boost::format("got new graph version %llu") % version));
+ //info_msg(str(boost::format("got new graph version %llu") % version));
_graph_version = version;
//info_msg((string)"clients " + (char)dbus_message_iter_get_arg_type(&iter));
@@ -835,7 +779,7 @@ JackDriver::refresh_internal(bool force)
dbus_message_iter_get_basic(&client_struct_iter, &client_name);
dbus_message_iter_next(&client_struct_iter);
-// info_msg((string)"client '" + client_name + "'");
+ //info_msg((string)"client '" + client_name + "'");
for (dbus_message_iter_recurse(&client_struct_iter, &ports_array_iter);
dbus_message_iter_get_arg_type(&ports_array_iter) != DBUS_TYPE_INVALID;
@@ -855,7 +799,7 @@ JackDriver::refresh_internal(bool force)
dbus_message_iter_get_basic(&port_struct_iter, &port_type);
dbus_message_iter_next(&port_struct_iter);
-// info_msg((string)"port: " + port_name);
+ //info_msg((string)"port: " + port_name);
add_port(client_id, client_name, port_id, port_name, port_flags, port_type);
}
@@ -898,39 +842,37 @@ JackDriver::refresh_internal(bool force)
dbus_message_iter_get_basic(&connection_struct_iter, &connection_id);
dbus_message_iter_next(&connection_struct_iter);
-// info_msg(str(boost::format("connection(%llu) %s(%llu):%s(%llu) <-> %s(%llu):%s(%llu)") %
-// connection_id %
-// client_name %
-// client_id %
-// port_name %
-// port_id %
-// client2_name %
-// client2_id %
-// port2_name %
-// port2_id));
+ //info_msg(str(boost::format("connection(%llu) %s(%llu):%s(%llu) <-> %s(%llu):%s(%llu)") %
+ // connection_id %
+ // client_name %
+ // client_id %
+ // port_name %
+ // port_id %
+ // client2_name %
+ // client2_id %
+ // port2_name %
+ // port2_id));
connect_ports(
connection_id,
- client_id,
- client_name,
- port_id,
- port_name,
- client2_id,
- client2_name,
- port2_id,
- port2_name);
+ client_id, client_name,
+ port_id, port_name,
+ client2_id, client2_name,
+ port2_id, port2_name);
}
unref:
dbus_message_unref(reply_ptr);
}
+
void
JackDriver::refresh()
{
refresh_internal(true);
}
+
bool
JackDriver::connect(
boost::shared_ptr<PatchagePort> src,
@@ -947,19 +889,11 @@ JackDriver::connect(
client2_name = dst->module().lock()->name().c_str();
port2_name = dst->name().c_str();
- if (!call(
- true,
- JACKDBUS_IFACE_PATCHBAY,
- "ConnectPortsByName",
- &reply_ptr,
- DBUS_TYPE_STRING,
- &client1_name,
- DBUS_TYPE_STRING,
- &port1_name,
- DBUS_TYPE_STRING,
- &client2_name,
- DBUS_TYPE_STRING,
- &port2_name,
+ if (!call(true, JACKDBUS_IFACE_PATCHBAY, "ConnectPortsByName", &reply_ptr,
+ DBUS_TYPE_STRING, &client1_name,
+ DBUS_TYPE_STRING, &port1_name,
+ DBUS_TYPE_STRING, &client2_name,
+ DBUS_TYPE_STRING, &port2_name,
DBUS_TYPE_INVALID)) {
error_msg("ConnectPortsByName() failed.");
return false;
@@ -968,6 +902,7 @@ JackDriver::connect(
return true;
}
+
bool
JackDriver::disconnect(
boost::shared_ptr<PatchagePort> src,
@@ -984,19 +919,11 @@ JackDriver::disconnect(
client2_name = dst->module().lock()->name().c_str();
port2_name = dst->name().c_str();
- if (!call(
- true,
- JACKDBUS_IFACE_PATCHBAY,
- "DisconnectPortsByName",
- &reply_ptr,
- DBUS_TYPE_STRING,
- &client1_name,
- DBUS_TYPE_STRING,
- &port1_name,
- DBUS_TYPE_STRING,
- &client2_name,
- DBUS_TYPE_STRING,
- &port2_name,
+ if (!call(true, JACKDBUS_IFACE_PATCHBAY, "DisconnectPortsByName", &reply_ptr,
+ DBUS_TYPE_STRING, &client1_name,
+ DBUS_TYPE_STRING, &port1_name,
+ DBUS_TYPE_STRING, &client2_name,
+ DBUS_TYPE_STRING, &port2_name,
DBUS_TYPE_INVALID)) {
error_msg("DisconnectPortsByName() failed.");
return false;
@@ -1005,6 +932,7 @@ JackDriver::disconnect(
return true;
}
+
jack_nframes_t
JackDriver::buffer_size()
{
@@ -1031,9 +959,10 @@ JackDriver::buffer_size()
return buffer_size;
fail:
- return 4096; // something fake, patchage needs it to match combobox value
+ return 4096; // something fake, patchage needs it to match combobox value
}
+
bool
JackDriver::set_buffer_size(jack_nframes_t size)
{
@@ -1049,6 +978,7 @@ JackDriver::set_buffer_size(jack_nframes_t size)
dbus_message_unref(reply_ptr);
}
+
float
JackDriver::sample_rate()
{
@@ -1071,6 +1001,7 @@ JackDriver::sample_rate()
return sample_rate;
}
+
bool
JackDriver::is_realtime() const
{
@@ -1093,6 +1024,7 @@ JackDriver::is_realtime() const
return realtime;
}
+
size_t
JackDriver::xruns()
{
@@ -1119,6 +1051,7 @@ JackDriver::xruns()
return xruns;
}
+
void
JackDriver::reset_xruns()
{
@@ -1131,6 +1064,7 @@ JackDriver::reset_xruns()
dbus_message_unref(reply_ptr);
}
+
float
JackDriver::get_max_dsp_load()
{
@@ -1164,46 +1098,51 @@ JackDriver::get_max_dsp_load()
return _max_dsp_load;
}
+
void
JackDriver::reset_max_dsp_load()
{
_max_dsp_load = 0.0;
}
+
void
JackDriver::start_transport()
{
-// info_msg(__func__);
+ //info_msg(__func__);
}
+
void
JackDriver::stop_transport()
{
-// info_msg(__func__);
+ //info_msg(__func__);
}
+
void
JackDriver::rewind_transport()
{
-// info_msg(__func__);
+ //info_msg(__func__);
}
+
boost::shared_ptr<PatchagePort>
-JackDriver::find_port_view(
- Patchage * patchage,
- const PatchageEvent::PortRef& ref)
+JackDriver::find_port_view(Patchage* patchage, const PatchageEvent::PortRef& ref)
{
- assert(false); // we dont use events at all
+ assert(false); // we dont use events at all
}
-
+
+
boost::shared_ptr<PatchagePort>
JackDriver::create_port_view(
Patchage * patchage,
const PatchageEvent::PortRef& ref)
{
- assert(false); // we dont use events at all
+ assert(false); // we dont use events at all
}
+
void
JackDriver::error_msg(const std::string& msg) const
{
@@ -1216,6 +1155,7 @@ JackDriver::error_msg(const std::string& msg) const
#endif
}
+
void
JackDriver::info_msg(const std::string& msg) const
{