/* the video-device's file descriptor */
gint video_fd;
GstV4l2IOMode mode;
+ GstPoll *poll;
+ GstPollFD pollfd;
+ gboolean can_poll_device;
gboolean active;
gboolean gst_v4l2_object_open (GstV4l2Object * v4l2object, GstV4l2Error * error);
gboolean gst_v4l2_object_open_shared (GstV4l2Object * v4l2object, GstV4l2Object * other);
gboolean gst_v4l2_object_close (GstV4l2Object * v4l2object);
-gboolean gst_v4l2_object_clear_format_list (GstV4l2Object * v4l2object);
/* probing */
gboolean gst_v4l2_object_acquire_format (GstV4l2Object * v4l2object, GstVideoInfo * info);
-gboolean gst_v4l2_object_set_crop (GstV4l2Object * obj);
+gboolean gst_v4l2_object_setup_padding (GstV4l2Object * obj);
gboolean gst_v4l2_object_decide_allocation (GstV4l2Object * v4l2object, GstQuery * query);
gboolean gst_v4l2_object_propose_allocation (GstV4l2Object * obj, GstQuery * query);
+GstBufferPool * gst_v4l2_object_get_buffer_pool (GstV4l2Object * v4l2object);
+
GstStructure * gst_v4l2_object_v4l2fourcc_to_structure (guint32 fourcc);
+GstFlowReturn gst_v4l2_object_poll (GstV4l2Object * v4l2object, GstClockTime timeout);
+gboolean gst_v4l2_object_subscribe_event (GstV4l2Object * v4l2object, guint32 event);
+
+/* crop / compose */
+gboolean gst_v4l2_object_set_crop (GstV4l2Object * obj, struct v4l2_rect *result);
+gboolean gst_v4l2_object_get_crop_bounds (GstV4l2Object * obj, struct v4l2_rect *bounds);
+gboolean gst_v4l2_object_get_crop_default (GstV4l2Object * obj, struct v4l2_rect *bounds);
+
/* TODO Move to proper namespace */
/* open/close the device */
gboolean gst_v4l2_open (GstV4l2Object * v4l2object, GstV4l2Error * error);