// bool jackctl_server_switch_master(jackctl_server_t * server, jackctl_driver_t * driver); static int _switch_master(ClientData clientData, Tcl_Interp *interp, int argc, Tcl_Obj* const *objv) { if (argc != 4) return fw_error_str(interp, "usage: jack-ctl switch-master server driver"); jackctl_server_t * server; jackctl_driver_t * driver; if (_get_pointer(interp, objv[2], (void**)&server) != TCL_OK || _get_pointer(interp, objv[3], (void**)&driver) != TCL_OK) return TCL_ERROR; return _return_bool(interp, jackctl_server_switch_master(server, driver)); }
static void jackctl_server_switch_master_dummy(jackctl_server_t * server_ctl, char * master_driver_name) { static bool is_dummy_driver = false; if(!strcmp(master_driver_name, "dummy")) { return; } jackctl_driver_t * driver_ctr; if(is_dummy_driver) { is_dummy_driver = false; driver_ctr = jackctl_server_get_driver(server_ctl, master_driver_name); } else { is_dummy_driver = true; driver_ctr = jackctl_server_get_driver(server_ctl, "dummy"); } jackctl_server_switch_master(server_ctl, driver_ctr); }