summaryrefslogtreecommitdiffstats
path: root/sys/vcd/vcdsrc.h
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@gmail.com>2007-06-13 11:37:36 +0000
committerWim Taymans <wim.taymans@gmail.com>2007-06-13 11:37:36 +0000
commit2229e288b617ff4a03d613995e62595aa9b205d1 (patch)
treed1d4b1d41680ca256c1e19349118ea04ea1dd91f /sys/vcd/vcdsrc.h
parente47279f03068de094c4cab0a1f0b0c1b59ac601d (diff)
downloadgst-plugins-bad-2229e288b617ff4a03d613995e62595aa9b205d1.tar.gz
gst-plugins-bad-2229e288b617ff4a03d613995e62595aa9b205d1.tar.bz2
gst-plugins-bad-2229e288b617ff4a03d613995e62595aa9b205d1.zip
Port VCD element.
Original commit message from CVS: * configure.ac: * sys/Makefile.am: * sys/vcd/Makefile.am: * sys/vcd/vcdsrc.c: (gst_vcdsrc_setup_interfaces), (gst_vcdsrc_base_init), (gst_vcdsrc_class_init), (gst_vcdsrc_init), (gst_vcdsrc_msf), (gst_vcdsrc_recalculate), (gst_vcdsrc_set_property), (gst_vcdsrc_get_property), (gst_vcdsrc_create), (gst_vcdsrc_start), (gst_vcdsrc_stop), (gst_vcdsrc_uri_set_uri): * sys/vcd/vcdsrc.h: Port VCD element.
Diffstat (limited to 'sys/vcd/vcdsrc.h')
-rw-r--r--sys/vcd/vcdsrc.h33
1 files changed, 8 insertions, 25 deletions
diff --git a/sys/vcd/vcdsrc.h b/sys/vcd/vcdsrc.h
index 8d78bb0d..6dd5d91b 100644
--- a/sys/vcd/vcdsrc.h
+++ b/sys/vcd/vcdsrc.h
@@ -21,9 +21,11 @@
#ifndef __VCDSRC_H__
#define __VCDSRC_H__
-#include <gst/gst.h>
#include <linux/cdrom.h>
+#include <gst/gst.h>
+#include <gst/base/gstpushsrc.h>
+
G_BEGIN_DECLS
#define VCD_BYTES_PER_SECTOR 2352
@@ -39,53 +41,34 @@ G_BEGIN_DECLS
#define GST_IS_VCDSRC_CLASS(klass) \
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_VCDSRC))
-/* NOTE: per-element flags start with 16 for now */
-typedef enum {
- VCDSRC_OPEN = (GST_ELEMENT_FLAG_LAST << 0),
-
- VCDSRC_FLAG_LAST = (GST_ELEMENT_FLAG_LAST << 2),
-} GstVCDSrcFlags;
-
typedef struct _GstVCDSrc GstVCDSrc;
typedef struct _GstVCDSrcClass GstVCDSrcClass;
struct _GstVCDSrc {
- GstElement element;
- /* pads */
- GstPad *srcpad;
+ GstPushSrc parent_object;
/* device */
gchar *device;
/* track number */
gint track;
+ int max_errors;
+
/* fd */
gint fd;
-
- struct cdrom_tochdr tochdr;
gint numtracks;
+ struct cdrom_tochdr tochdr;
struct cdrom_tocentry *tracks;
/* current time offset */
gulong trackoffset;
- gulong frameoffset;
-
- /* bytes offset in next buf */
- gulong tempoffset;
- gboolean discont, flush;
-
gulong curoffset; /* current offset in file */
gulong bytes_per_read; /* bytes per read */
-
- gulong seq; /* buffer sequence number */
- int max_errors;
};
struct _GstVCDSrcClass {
- GstElementClass parent_class;
+ GstPushSrcClass parent_class;
};
-GType gst_vcdsrc_get_type(void);
-
G_END_DECLS
#endif /* __VCDSRC_H__ */