1 #ifndef im_monitor_stream_h
2 #define im_monitor_stream_h
22 typedef struct ImMonitorStream ImMonitorStream;
33 ImMonitorStream *new_NetImMonitorStream(
char *host);
41 ImMonitorStream *del_ImMonitorStream(ImMonitorStream *ims);
96 ImsReadState ims_read_image(ImMonitorStream *ims,
int dowait);
105 ImsSendState ims_send_msg(ImMonitorStream *ims,
int dowait);
117 int ims_select_fd(ImMonitorStream *ims);
130 ImMonitorStream *new_ImMonitorStream(
void);
138 #define IMS_READ_IMAGE(fn) ImsReadState (fn)(ImMonitorStream *ims, int dowait)
144 #define IMS_SEND_MSG(fn) ImsSendState (fn)(ImMonitorStream *ims, int dowait)
153 #define IMS_SELECT_FD(fn) int (fn)(ImMonitorStream *ims)
159 #define IMS_DESTRUCTOR(fn) void *(fn)(void *context)
167 int open_ImMonitorStream(ImMonitorStream *ims,
void *context,
168 IMS_DESTRUCTOR(*del_fn),
169 IMS_READ_IMAGE(*read_fn), IMS_SEND_MSG(*send_fn),
170 IMS_SELECT_FD(*fd_fn));
176 void *ims_SourceContext(ImMonitorStream *ims);
182 unsigned short *ims_get_image(ImMonitorStream *ims);
190 void close_ImMonitorStream(ImMonitorStream *ims);