#include <sys/types.h>
+#include "pbd/libpbd_visibility.h"
+
namespace Select {
- enum Condition {
+ enum LIBPBD_API Condition {
Readable = 0x1,
Writable = 0x2,
Exception = 0x4
};
-class Selectable : public sigc::trackable
+class LIBPBD_API Selectable : public sigc::trackable
{
public:
fromPath,
fromFILE
};
-
+
bool _ok;
int _type;
std::string path;
};
-class Selector {
+class LIBPBD_API Selector {
private:
int post_select (fd_set *, fd_set *, fd_set *);
int _max_fd;
void multithreaded (bool yn) {
use_list_lock = yn;
}
-
+
void add (int condition, Selectable *s);
void remove (Selectable *);
int select (unsigned long usecs);