D-Bus control for switch master API.
git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@3519 0c269be4-1314-0410-8aa9-9f06e86f4224
This commit is contained in:
parent
4a637d218a
commit
c972442a7c
|
@ -263,6 +263,22 @@ jack_controller_stop_server(
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
bool
|
||||
jack_controller_switch_master(
|
||||
struct jack_controller * controller_ptr,
|
||||
void *dbus_call_context_ptr)
|
||||
{
|
||||
if (!jackctl_server_switch_master(
|
||||
controller_ptr->server,
|
||||
controller_ptr->driver))
|
||||
{
|
||||
jack_dbus_error(dbus_call_context_ptr, JACK_DBUS_ERROR_GENERIC, "Failed to switch master");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void *
|
||||
jack_controller_create(
|
||||
DBusConnection *connection)
|
||||
|
|
|
@ -105,6 +105,17 @@ jack_control_run_method(
|
|||
jack_controller_control_send_signal_server_stopped();
|
||||
}
|
||||
}
|
||||
else if (strcmp (call->method_name, "SwitchMaster") == 0)
|
||||
{
|
||||
if (!jack_controller_switch_master(controller_ptr, call))
|
||||
{
|
||||
jack_error ("Failed to switch master");
|
||||
}
|
||||
else
|
||||
{
|
||||
jack_controller_control_send_signal_server_stopped();
|
||||
}
|
||||
}
|
||||
else if (strcmp (call->method_name, "GetLoad") == 0)
|
||||
{
|
||||
if (!controller_ptr->started)
|
||||
|
@ -252,6 +263,9 @@ JACK_DBUS_METHOD_ARGUMENTS_END
|
|||
JACK_DBUS_METHOD_ARGUMENTS_BEGIN(StopServer)
|
||||
JACK_DBUS_METHOD_ARGUMENTS_END
|
||||
|
||||
JACK_DBUS_METHOD_ARGUMENTS_BEGIN(SwitchMaster)
|
||||
JACK_DBUS_METHOD_ARGUMENTS_END
|
||||
|
||||
JACK_DBUS_METHOD_ARGUMENTS_BEGIN(GetLoad)
|
||||
JACK_DBUS_METHOD_ARGUMENT("load", "d", true)
|
||||
JACK_DBUS_METHOD_ARGUMENTS_END
|
||||
|
@ -295,6 +309,7 @@ JACK_DBUS_METHODS_BEGIN
|
|||
JACK_DBUS_METHOD_DESCRIBE(IsStarted, NULL)
|
||||
JACK_DBUS_METHOD_DESCRIBE(StartServer, NULL)
|
||||
JACK_DBUS_METHOD_DESCRIBE(StopServer, NULL)
|
||||
JACK_DBUS_METHOD_DESCRIBE(SwitchMaster, NULL)
|
||||
JACK_DBUS_METHOD_DESCRIBE(GetLoad, NULL)
|
||||
JACK_DBUS_METHOD_DESCRIBE(GetXruns, NULL)
|
||||
JACK_DBUS_METHOD_DESCRIBE(GetSampleRate, NULL)
|
||||
|
|
|
@ -81,6 +81,11 @@ jack_controller_stop_server(
|
|||
struct jack_controller *controller_ptr,
|
||||
void *dbus_call_context_ptr);
|
||||
|
||||
bool
|
||||
jack_controller_switch_master(
|
||||
struct jack_controller *controller_ptr,
|
||||
void *dbus_call_context_ptr);
|
||||
|
||||
bool
|
||||
jack_controller_select_driver(
|
||||
struct jack_controller *controller_ptr,
|
||||
|
|
|
@ -109,6 +109,7 @@ def main():
|
|||
print " status - check whether jack server is started, return value is 0 if runing and 1 otherwise"
|
||||
print " start - start jack server if not currently started"
|
||||
print " stop - stop jack server if currenly started"
|
||||
print " sm - switch master to currently selected driver"
|
||||
print " dl - get list of available drivers"
|
||||
print " dg - get currently selected driver"
|
||||
print " ds <driver> - select driver"
|
||||
|
@ -155,6 +156,9 @@ def main():
|
|||
elif arg == 'stop':
|
||||
print "--- stop"
|
||||
control_iface.StopServer()
|
||||
elif arg == 'sm':
|
||||
print "--- switch master driver"
|
||||
control_iface.SwitchMaster()
|
||||
elif arg == 'ism':
|
||||
if control_iface.IsManuallyActivated():
|
||||
print "Manually activated"
|
||||
|
|
|
@ -51,6 +51,8 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|||
|
||||
#include "audio_reserve.h"
|
||||
|
||||
//#define DEBUG_WAKEUP 1
|
||||
|
||||
namespace Jack
|
||||
{
|
||||
|
||||
|
|
Loading…
Reference in New Issue