GST_DEBUG_CATEGORY_EXTERN (gst_ks_debug);
#define GST_CAT_DEFAULT gst_ks_debug
-typedef struct
+struct _GstKsClockPrivate
{
GMutex *mutex;
GCond *client_cond;
gboolean worker_initialized;
GstClock *master_clock;
-} GstKsClockPrivate;
+};
-#define GST_KS_CLOCK_GET_PRIVATE(o) \
- (G_TYPE_INSTANCE_GET_PRIVATE ((o), GST_TYPE_KS_CLOCK, \
- GstKsClockPrivate))
+#define GST_KS_CLOCK_GET_PRIVATE(o) ((o)->priv)
#define GST_KS_CLOCK_LOCK() g_mutex_lock (priv->mutex)
#define GST_KS_CLOCK_UNLOCK() g_mutex_unlock (priv->mutex)
static void
gst_ks_clock_init (GstKsClock * self, GstKsClockClass * gclass)
{
- GstKsClockPrivate *priv = GST_KS_CLOCK_GET_PRIVATE (self);
+ GstKsClockPrivate *priv;
+
+ self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GST_TYPE_KS_CLOCK,
+ GstKsClockPrivate);
+
+ priv = GST_KS_CLOCK_GET_PRIVATE (self);
priv->mutex = g_mutex_new ();
priv->client_cond = g_cond_new ();
#define GST_IS_KS_CLOCK_CLASS(klass) \
(G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_KS_CLOCK))
-typedef struct _GstKsClock GstKsClock;
-typedef struct _GstKsClockClass GstKsClockClass;
+typedef struct _GstKsClock GstKsClock;
+typedef struct _GstKsClockClass GstKsClockClass;
+typedef struct _GstKsClockPrivate GstKsClockPrivate;
struct _GstKsClock
{
GObject parent;
+
+ GstKsClockPrivate *priv;
};
struct _GstKsClockClass
OVERLAPPED overlapped;
} ReadRequest;
-typedef struct
+struct _GstKsVideoDevicePrivate
{
gboolean open;
KSSTATE state;
GstClockTime last_timestamp;
} GstKsVideoDevicePrivate;
-#define GST_KS_VIDEO_DEVICE_GET_PRIVATE(o) \
- (G_TYPE_INSTANCE_GET_PRIVATE ((o), GST_TYPE_KS_VIDEO_DEVICE, \
- GstKsVideoDevicePrivate))
+#define GST_KS_VIDEO_DEVICE_GET_PRIVATE(o) ((o)->priv)
static void gst_ks_video_device_dispose (GObject * object);
static void gst_ks_video_device_get_property (GObject * object, guint prop_id,
gst_ks_video_device_init (GstKsVideoDevice * self,
GstKsVideoDeviceClass * gclass)
{
- GstKsVideoDevicePrivate *priv = GST_KS_VIDEO_DEVICE_GET_PRIVATE (self);
+ GstKsVideoDevicePrivate *priv;
+
+ self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GST_TYPE_KS_VIDEO_DEVICE,
+ GstKsVideoDevicePrivate);
+ priv = GST_KS_VIDEO_DEVICE_GET_PRIVATE (self);
priv->open = FALSE;
priv->state = KSSTATE_STOP;
}
#define GST_IS_KS_VIDEO_DEVICE_CLASS(klass) \
(G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_KS_VIDEO_DEVICE))
-typedef struct _GstKsVideoDevice GstKsVideoDevice;
-typedef struct _GstKsVideoDeviceClass GstKsVideoDeviceClass;
+typedef struct _GstKsVideoDevice GstKsVideoDevice;
+typedef struct _GstKsVideoDeviceClass GstKsVideoDeviceClass;
+typedef struct _GstKsVideoDevicePrivate GstKsVideoDevicePrivate;
struct _GstKsVideoDevice
{
GObject parent;
+
+ GstKsVideoDevicePrivate *priv;
};
struct _GstKsVideoDeviceClass
KS_WORKER_STATE_ERROR,
} KsWorkerState;
-typedef struct
+struct _GstKsVideoSrcPrivate
{
/* Properties */
gchar *device_path;
GstClockTime last_sampling;
guint count;
guint fps;
-} GstKsVideoSrcPrivate;
+};
-#define GST_KS_VIDEO_SRC_GET_PRIVATE(o) \
- (G_TYPE_INSTANCE_GET_PRIVATE ((o), GST_TYPE_KS_VIDEO_SRC, \
- GstKsVideoSrcPrivate))
+#define GST_KS_VIDEO_SRC_GET_PRIVATE(o) ((o)->priv)
static void gst_ks_video_src_init_interfaces (GType type);
static void
gst_ks_video_src_init (GstKsVideoSrc * self, GstKsVideoSrcClass * gclass)
{
- GstKsVideoSrcPrivate *priv = GST_KS_VIDEO_SRC_GET_PRIVATE (self);
GstBaseSrc *basesrc = GST_BASE_SRC (self);
+ GstKsVideoSrcPrivate *priv;
+
+ self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GST_TYPE_KS_VIDEO_SRC,
+ GstKsVideoSrcPrivate);
+ priv = GST_KS_VIDEO_SRC_GET_PRIVATE (self);
gst_base_src_set_live (basesrc, TRUE);
gst_base_src_set_format (basesrc, GST_FORMAT_TIME);
#define GST_IS_KS_VIDEO_SRC_CLASS(klass) \
(G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_KS_VIDEO_SRC))
-typedef struct _GstKsVideoSrc GstKsVideoSrc;
-typedef struct _GstKsVideoSrcClass GstKsVideoSrcClass;
+typedef struct _GstKsVideoSrc GstKsVideoSrc;
+typedef struct _GstKsVideoSrcClass GstKsVideoSrcClass;
+typedef struct _GstKsVideoSrcPrivate GstKsVideoSrcPrivate;
struct _GstKsVideoSrc
{
GstPushSrc push_src;
+
+ GstKsVideoSrcPrivate * priv;
};
struct _GstKsVideoSrcClass