#ifndef FL_UNIX_SCREEN_DRIVER_H
#define FL_UNIX_SCREEN_DRIVER_H
#include <config.h>
#include "../../Fl_Screen_Driver.H"
# if USE_POLL
# include <poll.h>
# else
# if HAVE_SYS_SELECT_H
# include <sys/select.h>
# endif
# if defined(__NetBSD__)
# include <sys/param.h>
# if defined(__NetBSD_Version__) && (__NetBSD_Version__ < 300000000)
# include <sys/types.h>
# include <sys/time.h>
# include <unistd.h>
# endif # endif
# define POLLIN 1
# define POLLOUT 4
# define POLLERR 8
# endif
class Fl_Unix_Screen_Driver : public Fl_Screen_Driver {
public:
# if USE_POLL
static pollfd *pollfds;
#else
static fd_set fdsets[3];
# endif
static int maxfd;
static int nfds;
static struct FD {
# if !USE_POLL
int fd;
short events;
# endif
void (*cb)(int, void*);
void* arg;
} *fd;
virtual int poll_or_select_with_delay(double time_to_wait);
virtual int poll_or_select();
virtual void *control_maximize_button(void *) { return NULL; }
};
#endif