static GstClockID gst_clock_entry_new (GstClock * clock, GstClockTime time, GstClockTime interval, GstClockEntryType type) { GstClockEntry *entry; entry = g_slice_new (GstClockEntry); #ifndef GST_DISABLE_TRACE _gst_alloc_trace_new (_gst_clock_entry_trace, entry); #endif GST_CAT_DEBUG_OBJECT (GST_CAT_CLOCK, clock, "created entry %p, time %" GST_TIME_FORMAT, entry, GST_TIME_ARGS (time)); entry->refcount = 1; entry->clock = clock; entry->type = type; entry->time = time; entry->interval = interval; entry->status = GST_CLOCK_OK; entry->func = NULL; entry->user_data = NULL; entry->destroy_data = NULL; entry->unscheduled = FALSE; entry->woken_up = FALSE; return (GstClockID) entry; }
static void gst_object_init (GstObject * object) { g_mutex_init (&object->lock); object->parent = NULL; object->name = NULL; GST_CAT_TRACE_OBJECT (GST_CAT_REFCOUNTING, object, "%p new", object); #ifndef GST_DISABLE_TRACE _gst_alloc_trace_new (_gst_object_trace, object); #endif object->flags = 0; object->control_rate = 100 * GST_MSECOND; object->last_sync = GST_CLOCK_TIME_NONE; }
/** * gst_mini_object_init: (skip) * @mini_object: a #GstMiniObject * @flags: initial #GstMiniObjectFlags * @type: the #GType of the mini-object to create * @copy_func: (allow-none): the copy function, or NULL * @dispose_func: (allow-none): the dispose function, or NULL * @free_func: (allow-none): the free function or NULL * * Initializes a mini-object with the desired type and copy/dispose/free * functions. */ void gst_mini_object_init (GstMiniObject * mini_object, guint flags, GType type, GstMiniObjectCopyFunction copy_func, GstMiniObjectDisposeFunction dispose_func, GstMiniObjectFreeFunction free_func) { mini_object->type = type; mini_object->refcount = 1; mini_object->lockstate = 0; mini_object->flags = flags; mini_object->copy = copy_func; mini_object->dispose = dispose_func; mini_object->free = free_func; mini_object->n_qdata = 0; mini_object->qdata = NULL; #ifndef GST_DISABLE_TRACE _gst_alloc_trace_new (_gst_mini_object_trace, mini_object); #endif }