20 #ifndef __selectable_h__
21 #define __selectable_h__
27 #include <sigc++/sigc++.h>
29 #include <sys/types.h>
45 Selectable (
const std::string &,
int flags,
int mode = 0);
49 sigc::signal<void,Selectable *,Select::Condition>
readable;
50 sigc::signal<void,Selectable *,Select::Condition>
writable;
51 sigc::signal<void,Selectable *,Select::Condition>
exceptioned;
53 int fd() {
return _fd; }
54 bool ok() {
return _ok; }
57 void selected (
unsigned int condition);
77 int post_select (fd_set *, fd_set *, fd_set *);
95 int select (
unsigned long usecs);
103 #endif // __selectable_h__
std::list< Selectable * > Selectables
pthread_mutex_t list_lock
sigc::signal< void, Selectable *, Select::Condition > writable
void multithreaded(bool yn)
LIBARDOUR_API PBD::PropertyDescriptor< bool > select
sigc::signal< void, Selectable *, Select::Condition > readable
static bool use_list_lock
sigc::signal< void, Selectable *, Select::Condition > exceptioned