25 #ifndef SRC_HEADERS_GX_CHILD_PROCESS_H_
26 #define SRC_HEADERS_GX_CHILD_PROCESS_H_
28 #include <sigc++/sigc++.h>
39 bool hasPid(pid_t pid) {
return pid == m_pid; }
40 bool hasName(
string name) {
return name == m_name; }
46 GxChild(
string name,
int killsignal,
int pid):
47 m_name(name), m_killsignal(killsignal), m_pid(pid) {}
53 list<GxChild*> children;
58 bool kill(
string name);
60 GxChild *
launch(
string name,
const char*
const args[],
int killsignal);
61 GxChild *
launch(
string name, list<string> args,
int killsignal);
74 class JackCaptureGui:
public sigc::trackable {
76 GtkCheckMenuItem *item;
77 void terminated(
bool pgm_found);
78 JackCaptureGui(
GxChild *p, GtkCheckMenuItem *i);
80 static void start_stop(GtkCheckMenuItem *menuitem, gpointer);
83 class JackCapture:
public sigc::trackable {
85 GtkToggleButton *button;
86 void terminated(
bool pgm_found);
87 static string make_fname(
string buf,
size_t j,
size_t i,
int n);
88 static list<string> capture_command(
int& seq);
89 JackCapture(GxChild *p, GtkToggleButton *b);
91 static void start_stop(GtkWidget *widget, gpointer data);
98 Glib::RefPtr<Gtk::ToggleAction> action;
99 void terminated(
bool pgm_found);
108 #endif // SRC_HEADERS_GX_CHILD_PROCESS_H_