Merge branch 'master' into 0.11
[platform/upstream/gstreamer.git] / gst / gstpoll.h
index ea604eb..741a79b 100644 (file)
@@ -34,7 +34,7 @@ G_BEGIN_DECLS
 /**
  * GstPoll:
  *
- * A set of file descriptors.
+ * A set of file/network descriptors.
  */
 typedef struct _GstPoll GstPoll;
 
@@ -63,29 +63,11 @@ typedef struct {
  */
 #define GST_POLL_FD_INIT  { -1, -1 }
 
-/**
- * GstPollMode:
- * @GST_POLL_MODE_AUTO: choose method automatically
- * @GST_POLL_MODE_SELECT: use select() when waiting
- * @GST_POLL_MODE_PSELECT: use pselect() when waiting
- * @GST_POLL_MODE_POLL: use poll() when waiting
- * @GST_POLL_MODE_PPOLL: use ppoll() when waiting
- *
- * Which method to use when waiting for a set of file descriptors.
- */
-typedef enum {
-  GST_POLL_MODE_AUTO,
-  GST_POLL_MODE_SELECT,
-  GST_POLL_MODE_PSELECT,
-  GST_POLL_MODE_POLL,
-  GST_POLL_MODE_PPOLL
-} GstPollMode;
-
-GstPoll*        gst_poll_new              (GstPollMode mode, gboolean controllable);
+GstPoll*        gst_poll_new              (gboolean controllable);
+GstPoll*        gst_poll_new_timer        (void);
 void            gst_poll_free             (GstPoll *set);
 
-void            gst_poll_set_mode         (GstPoll *set, GstPollMode mode);
-GstPollMode     gst_poll_get_mode         (const GstPoll *set);
+void            gst_poll_get_read_gpollfd (GstPoll *set, GPollFD *fd);
 
 void            gst_poll_fd_init          (GstPollFD *fd);
 
@@ -94,6 +76,7 @@ gboolean        gst_poll_remove_fd        (GstPoll *set, GstPollFD *fd);
 
 gboolean        gst_poll_fd_ctl_write     (GstPoll *set, GstPollFD *fd, gboolean active);
 gboolean        gst_poll_fd_ctl_read      (GstPoll *set, GstPollFD *fd, gboolean active);
+void            gst_poll_fd_ignored       (GstPoll *set, GstPollFD *fd);
 
 gboolean        gst_poll_fd_has_closed    (const GstPoll *set, GstPollFD *fd);
 gboolean        gst_poll_fd_has_error     (const GstPoll *set, GstPollFD *fd);
@@ -106,6 +89,9 @@ gboolean        gst_poll_set_controllable (GstPoll *set, gboolean controllable);
 void            gst_poll_restart          (GstPoll *set);
 void            gst_poll_set_flushing     (GstPoll *set, gboolean flushing);
 
+gboolean        gst_poll_write_control    (GstPoll *set);
+gboolean        gst_poll_read_control     (GstPoll *set);
+
 G_END_DECLS
 
 #endif /* __GST_POLL_H__ */