diff options
Diffstat (limited to 'src/TimedQueue.c')
-rw-r--r-- | src/TimedQueue.c | 2416 |
1 files changed, 0 insertions, 2416 deletions
diff --git a/src/TimedQueue.c b/src/TimedQueue.c deleted file mode 100644 index 8775526..0000000 --- a/src/TimedQueue.c +++ /dev/null @@ -1,2416 +0,0 @@ -/* TimedQueue.c generated by valac 0.40.4, the Vala compiler - * generated from TimedQueue.vala, do not modify */ - -/* Copyright 2016 Software Freedom Conservancy Inc. - * - * This software is licensed under the GNU Lesser General Public License - * (version 2.1 or later). See the COPYING file in this distribution. - */ -/* TimedQueue is a specialized collection class. It holds items in order, but rather than being*/ -/* manually dequeued, they are dequeued automatically after a specified amount of time has elapsed*/ -/* for that item. As of today, it's possible the item will be dequeued a bit later than asked*/ -/* for, but it will never be early. Future implementations might tighten up the lateness.*/ -/**/ -/* The original design was to use a signal to notify when an item has been dequeued, but Vala has*/ -/* a bug with passing an unnamed type as a signal parameter:*/ -/* https://bugzilla.gnome.org/show_bug.cgi?id=628639*/ -/**/ -/* The rate the items come off the queue can be spaced out. Note that this can cause items to back*/ -/* up. As of today, TimedQueue makes no effort to combat this.*/ - - -#include <glib.h> -#include <glib-object.h> -#include <gee.h> -#include <gobject/gvaluecollector.h> - - -#define TYPE_TIMED_QUEUE (timed_queue_get_type ()) -#define TIMED_QUEUE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TIMED_QUEUE, TimedQueue)) -#define TIMED_QUEUE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TIMED_QUEUE, TimedQueueClass)) -#define IS_TIMED_QUEUE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TIMED_QUEUE)) -#define IS_TIMED_QUEUE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TIMED_QUEUE)) -#define TIMED_QUEUE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TIMED_QUEUE, TimedQueueClass)) - -typedef struct _TimedQueue TimedQueue; -typedef struct _TimedQueueClass TimedQueueClass; -typedef struct _TimedQueuePrivate TimedQueuePrivate; - -#define TYPE_SORTED_LIST (sorted_list_get_type ()) -#define SORTED_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SORTED_LIST, SortedList)) -#define SORTED_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SORTED_LIST, SortedListClass)) -#define IS_SORTED_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SORTED_LIST)) -#define IS_SORTED_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SORTED_LIST)) -#define SORTED_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SORTED_LIST, SortedListClass)) - -typedef struct _SortedList SortedList; -typedef struct _SortedListClass SortedListClass; - -#define TIMED_QUEUE_TYPE_ELEMENT (timed_queue_element_get_type ()) -#define TIMED_QUEUE_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TIMED_QUEUE_TYPE_ELEMENT, TimedQueueElement)) -#define TIMED_QUEUE_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TIMED_QUEUE_TYPE_ELEMENT, TimedQueueElementClass)) -#define TIMED_QUEUE_IS_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TIMED_QUEUE_TYPE_ELEMENT)) -#define TIMED_QUEUE_IS_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TIMED_QUEUE_TYPE_ELEMENT)) -#define TIMED_QUEUE_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TIMED_QUEUE_TYPE_ELEMENT, TimedQueueElementClass)) - -typedef struct _TimedQueueElement TimedQueueElement; -typedef struct _TimedQueueElementClass TimedQueueElementClass; -#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) -typedef struct _TimedQueueElementPrivate TimedQueueElementPrivate; -#define _timed_queue_element_unref0(var) ((var == NULL) ? NULL : (var = (timed_queue_element_unref (var), NULL))) -#define _g_destroy_func0(var) (((var == NULL) || (g_destroy_func == NULL)) ? NULL : (var = (g_destroy_func (var), NULL))) -typedef struct _TimedQueueParamSpecElement TimedQueueParamSpecElement; -typedef struct _ParamSpecTimedQueue ParamSpecTimedQueue; -enum { - TIMED_QUEUE_PAUSED_SIGNAL, - TIMED_QUEUE_NUM_SIGNALS -}; -static guint timed_queue_signals[TIMED_QUEUE_NUM_SIGNALS] = {0}; - -#define TYPE_HASH_TIMED_QUEUE (hash_timed_queue_get_type ()) -#define HASH_TIMED_QUEUE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_HASH_TIMED_QUEUE, HashTimedQueue)) -#define HASH_TIMED_QUEUE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_HASH_TIMED_QUEUE, HashTimedQueueClass)) -#define IS_HASH_TIMED_QUEUE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_HASH_TIMED_QUEUE)) -#define IS_HASH_TIMED_QUEUE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_HASH_TIMED_QUEUE)) -#define HASH_TIMED_QUEUE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_HASH_TIMED_QUEUE, HashTimedQueueClass)) - -typedef struct _HashTimedQueue HashTimedQueue; -typedef struct _HashTimedQueueClass HashTimedQueueClass; -typedef struct _HashTimedQueuePrivate HashTimedQueuePrivate; -#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg); -#define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; } -#define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; } -#define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg); - -typedef void (*DequeuedCallback) (gconstpointer item, void* user_data); -struct _TimedQueue { - GTypeInstance parent_instance; - volatile int ref_count; - TimedQueuePrivate * priv; -}; - -struct _TimedQueueClass { - GTypeClass parent_class; - void (*finalize) (TimedQueue *self); - void (*notify_dequeued) (TimedQueue* self, gconstpointer item); - void (*clear) (TimedQueue* self); - gboolean (*contains) (TimedQueue* self, gconstpointer item); - gboolean (*enqueue) (TimedQueue* self, gconstpointer item); - gboolean (*enqueue_many) (TimedQueue* self, GeeCollection* items); - gboolean (*remove_first) (TimedQueue* self, gconstpointer item); - void (*paused) (TimedQueue* self, gboolean is_paused); - gint (*get_size) (TimedQueue* self); -}; - -struct _TimedQueuePrivate { - GType g_type; - GBoxedCopyFunc g_dup_func; - GDestroyNotify g_destroy_func; - guint hold_msec; - DequeuedCallback callback; - gpointer callback_target; - GeeEqualDataFunc equal_func; - gpointer equal_func_target; - GDestroyNotify equal_func_target_destroy_notify; - gint priority; - guint timer_id; - SortedList* queue; - guint dequeue_spacing_msec; - gulong last_dequeue; - gboolean paused_state; -}; - -typedef gint64 (*Comparator) (void* a, void* b, void* user_data); -struct _TimedQueueElement { - GTypeInstance parent_instance; - volatile int ref_count; - TimedQueueElementPrivate * priv; - gpointer item; - gulong ready; -}; - -struct _TimedQueueElementClass { - GTypeClass parent_class; - void (*finalize) (TimedQueueElement *self); -}; - -struct _TimedQueueElementPrivate { - GType g_type; - GBoxedCopyFunc g_dup_func; - GDestroyNotify g_destroy_func; -}; - -struct _TimedQueueParamSpecElement { - GParamSpec parent_instance; -}; - -struct _ParamSpecTimedQueue { - GParamSpec parent_instance; -}; - -struct _HashTimedQueue { - TimedQueue parent_instance; - HashTimedQueuePrivate * priv; -}; - -struct _HashTimedQueueClass { - TimedQueueClass parent_class; -}; - -struct _HashTimedQueuePrivate { - GType g_type; - GBoxedCopyFunc g_dup_func; - GDestroyNotify g_destroy_func; - GeeHashMap* item_count; -}; - - -static gpointer timed_queue_parent_class = NULL; -static gpointer timed_queue_element_parent_class = NULL; -static gpointer hash_timed_queue_parent_class = NULL; - -gpointer timed_queue_ref (gpointer instance); -void timed_queue_unref (gpointer instance); -GParamSpec* param_spec_timed_queue (const gchar* name, - const gchar* nick, - const gchar* blurb, - GType object_type, - GParamFlags flags); -void value_set_timed_queue (GValue* value, - gpointer v_object); -void value_take_timed_queue (GValue* value, - gpointer v_object); -gpointer value_get_timed_queue (const GValue* value); -GType timed_queue_get_type (void) G_GNUC_CONST; -GType sorted_list_get_type (void) G_GNUC_CONST; -static gpointer timed_queue_element_ref (gpointer instance); -static void timed_queue_element_unref (gpointer instance); -static GParamSpec* timed_queue_param_spec_element (const gchar* name, - const gchar* nick, - const gchar* blurb, - GType object_type, - GParamFlags flags) G_GNUC_UNUSED; -static void timed_queue_value_set_element (GValue* value, - gpointer v_object) G_GNUC_UNUSED; -static void timed_queue_value_take_element (GValue* value, - gpointer v_object) G_GNUC_UNUSED; -static gpointer timed_queue_value_get_element (const GValue* value) G_GNUC_UNUSED; -static GType timed_queue_element_get_type (void) G_GNUC_CONST G_GNUC_UNUSED; -#define TIMED_QUEUE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_TIMED_QUEUE, TimedQueuePrivate)) -TimedQueue* timed_queue_new (GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - guint hold_msec, - DequeuedCallback callback, - void* callback_target, - GeeEqualDataFunc equal_func, - void* equal_func_target, - GDestroyNotify equal_func_target_destroy_notify, - gint priority); -TimedQueue* timed_queue_construct (GType object_type, - GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - guint hold_msec, - DequeuedCallback callback, - void* callback_target, - GeeEqualDataFunc equal_func, - void* equal_func_target, - GDestroyNotify equal_func_target_destroy_notify, - gint priority); -static gint64 timed_queue_element_comparator (void* a, - void* b); -static gint64 _timed_queue_element_comparator_comparator (void* a, - void* b, - gpointer self); -SortedList* sorted_list_new (GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - Comparator cmp, - void* cmp_target); -SortedList* sorted_list_construct (GType object_type, - GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - Comparator cmp, - void* cmp_target); -static guint timed_queue_get_heartbeat_timeout (TimedQueue* self); -static gboolean timed_queue_on_heartbeat (TimedQueue* self); -static gboolean _timed_queue_on_heartbeat_gsource_func (gpointer self); -guint timed_queue_get_dequeue_spacing_msec (TimedQueue* self); -void timed_queue_set_dequeue_spacing_msec (TimedQueue* self, - guint msec); -void timed_queue_notify_dequeued (TimedQueue* self, - gconstpointer item); -static void timed_queue_real_notify_dequeued (TimedQueue* self, - gconstpointer item); -gboolean timed_queue_is_paused (TimedQueue* self); -void timed_queue_pause (TimedQueue* self); -void timed_queue_unpause (TimedQueue* self); -void timed_queue_clear (TimedQueue* self); -static void timed_queue_real_clear (TimedQueue* self); -gboolean timed_queue_contains (TimedQueue* self, - gconstpointer item); -static gboolean timed_queue_real_contains (TimedQueue* self, - gconstpointer item); -gboolean timed_queue_enqueue (TimedQueue* self, - gconstpointer item); -static gboolean timed_queue_real_enqueue (TimedQueue* self, - gconstpointer item); -static gulong timed_queue_calc_ready_time (TimedQueue* self); -static TimedQueueElement* timed_queue_element_new (GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - gconstpointer item, - gulong ready); -static TimedQueueElement* timed_queue_element_construct (GType object_type, - GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - gconstpointer item, - gulong ready); -gboolean timed_queue_enqueue_many (TimedQueue* self, - GeeCollection* items); -static gboolean timed_queue_real_enqueue_many (TimedQueue* self, - GeeCollection* items); -gboolean sorted_list_add_list (SortedList* self, - GeeList* items); -gboolean timed_queue_remove_first (TimedQueue* self, - gconstpointer item); -static gboolean timed_queue_real_remove_first (TimedQueue* self, - gconstpointer item); -gulong now_ms (void); -gpointer sorted_list_get_at (SortedList* self, - gint index); -gpointer sorted_list_remove_at (SortedList* self, - gint index); -gint timed_queue_get_size (TimedQueue* self); -static void timed_queue_real_paused (TimedQueue* self, - gboolean is_paused); -#define TIMED_QUEUE_ELEMENT_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TIMED_QUEUE_TYPE_ELEMENT, TimedQueueElementPrivate)) -static void timed_queue_element_finalize (TimedQueueElement * obj); -static void timed_queue_finalize (TimedQueue * obj); -GType hash_timed_queue_get_type (void) G_GNUC_CONST; -#define HASH_TIMED_QUEUE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_HASH_TIMED_QUEUE, HashTimedQueuePrivate)) -HashTimedQueue* hash_timed_queue_new (GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - guint hold_msec, - DequeuedCallback callback, - void* callback_target, - GeeHashDataFunc hash_func, - void* hash_func_target, - GDestroyNotify hash_func_target_destroy_notify, - GeeEqualDataFunc equal_func, - void* equal_func_target, - GDestroyNotify equal_func_target_destroy_notify, - gint priority); -HashTimedQueue* hash_timed_queue_construct (GType object_type, - GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - guint hold_msec, - DequeuedCallback callback, - void* callback_target, - GeeHashDataFunc hash_func, - void* hash_func_target, - GDestroyNotify hash_func_target_destroy_notify, - GeeEqualDataFunc equal_func, - void* equal_func_target, - GDestroyNotify equal_func_target_destroy_notify, - gint priority); -static void hash_timed_queue_real_notify_dequeued (TimedQueue* base, - gconstpointer item); -static void hash_timed_queue_removed (HashTimedQueue* self, - gconstpointer item); -static void hash_timed_queue_real_clear (TimedQueue* base); -static gboolean hash_timed_queue_real_contains (TimedQueue* base, - gconstpointer item); -static gboolean hash_timed_queue_real_enqueue (TimedQueue* base, - gconstpointer item); -static gboolean hash_timed_queue_real_enqueue_many (TimedQueue* base, - GeeCollection* items); -static gboolean hash_timed_queue_real_remove_first (TimedQueue* base, - gconstpointer item); -static void hash_timed_queue_finalize (TimedQueue * obj); - - -static gint64 -_timed_queue_element_comparator_comparator (void* a, - void* b, - gpointer self) -{ - gint64 result; - result = timed_queue_element_comparator (a, b); -#line 64 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 348 "TimedQueue.c" -} - - -static gboolean -_timed_queue_on_heartbeat_gsource_func (gpointer self) -{ - gboolean result; - result = timed_queue_on_heartbeat ((TimedQueue*) self); -#line 66 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 359 "TimedQueue.c" -} - - -TimedQueue* -timed_queue_construct (GType object_type, - GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - guint hold_msec, - DequeuedCallback callback, - void* callback_target, - GeeEqualDataFunc equal_func, - void* equal_func_target, - GDestroyNotify equal_func_target_destroy_notify, - gint priority) -{ - TimedQueue* self = NULL; - SortedList* _tmp4_; -#line 52 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self = (TimedQueue*) g_type_create_instance (object_type); -#line 52 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->g_type = g_type; -#line 52 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->g_dup_func = g_dup_func; -#line 52 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->g_destroy_func = g_destroy_func; -#line 54 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->hold_msec = hold_msec; -#line 55 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->callback = callback; -#line 55 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->callback_target = callback_target; -#line 57 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (equal_func != NULL) { -#line 394 "TimedQueue.c" - GeeEqualDataFunc _tmp0_; - void* _tmp0__target; - GDestroyNotify _tmp0__target_destroy_notify; -#line 58 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = equal_func; -#line 58 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0__target = equal_func_target; -#line 58 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0__target_destroy_notify = equal_func_target_destroy_notify; -#line 58 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func = NULL; -#line 58 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func_target = NULL; -#line 58 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func_target_destroy_notify = NULL; -#line 58 "/home/jens/Source/shotwell/src/TimedQueue.vala" - (self->priv->equal_func_target_destroy_notify == NULL) ? NULL : (self->priv->equal_func_target_destroy_notify (self->priv->equal_func_target), NULL); -#line 58 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func = NULL; -#line 58 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func_target = NULL; -#line 58 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func_target_destroy_notify = NULL; -#line 58 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func = _tmp0_; -#line 58 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func_target = _tmp0__target; -#line 58 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func_target_destroy_notify = _tmp0__target_destroy_notify; -#line 424 "TimedQueue.c" - } else { - void* _tmp1_; - GDestroyNotify _tmp2_; - GeeEqualDataFunc _tmp3_; -#line 60 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp3_ = gee_functions_get_equal_func_for (g_type, &_tmp1_, &_tmp2_); -#line 60 "/home/jens/Source/shotwell/src/TimedQueue.vala" - (self->priv->equal_func_target_destroy_notify == NULL) ? NULL : (self->priv->equal_func_target_destroy_notify (self->priv->equal_func_target), NULL); -#line 60 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func = NULL; -#line 60 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func_target = NULL; -#line 60 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func_target_destroy_notify = NULL; -#line 60 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func = (GeeEqualDataFunc) _tmp3_; -#line 60 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func_target = _tmp1_; -#line 60 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func_target_destroy_notify = _tmp2_; -#line 445 "TimedQueue.c" - } -#line 62 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->priority = priority; -#line 64 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp4_ = sorted_list_new (TIMED_QUEUE_TYPE_ELEMENT, (GBoxedCopyFunc) timed_queue_element_ref, (GDestroyNotify) timed_queue_element_unref, _timed_queue_element_comparator_comparator, NULL); -#line 64 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _g_object_unref0 (self->priv->queue); -#line 64 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->queue = _tmp4_; -#line 66 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->timer_id = g_timeout_add_full (priority, timed_queue_get_heartbeat_timeout (self), _timed_queue_on_heartbeat_gsource_func, timed_queue_ref (self), timed_queue_unref); -#line 52 "/home/jens/Source/shotwell/src/TimedQueue.vala" - (equal_func_target_destroy_notify == NULL) ? NULL : (equal_func_target_destroy_notify (equal_func_target), NULL); -#line 52 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func = NULL; -#line 52 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func_target = NULL; -#line 52 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func_target_destroy_notify = NULL; -#line 52 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return self; -#line 467 "TimedQueue.c" -} - - -TimedQueue* -timed_queue_new (GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - guint hold_msec, - DequeuedCallback callback, - void* callback_target, - GeeEqualDataFunc equal_func, - void* equal_func_target, - GDestroyNotify equal_func_target_destroy_notify, - gint priority) -{ -#line 52 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return timed_queue_construct (TYPE_TIMED_QUEUE, g_type, g_dup_func, g_destroy_func, hold_msec, callback, callback_target, equal_func, equal_func_target, equal_func_target_destroy_notify, priority); -#line 485 "TimedQueue.c" -} - - -guint -timed_queue_get_dequeue_spacing_msec (TimedQueue* self) -{ - guint result = 0U; - guint _tmp0_; -#line 74 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (IS_TIMED_QUEUE (self), 0U); -#line 75 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->dequeue_spacing_msec; -#line 75 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = _tmp0_; -#line 75 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 502 "TimedQueue.c" -} - - -void -timed_queue_set_dequeue_spacing_msec (TimedQueue* self, - guint msec) -{ - guint _tmp0_; - guint _tmp1_; - gint _tmp3_; -#line 78 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (IS_TIMED_QUEUE (self)); -#line 79 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->dequeue_spacing_msec; -#line 79 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (msec == _tmp0_) { -#line 80 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return; -#line 521 "TimedQueue.c" - } -#line 82 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = self->priv->timer_id; -#line 82 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp1_ != ((guint) 0)) { -#line 527 "TimedQueue.c" - guint _tmp2_; -#line 83 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2_ = self->priv->timer_id; -#line 83 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_source_remove (_tmp2_); -#line 533 "TimedQueue.c" - } -#line 85 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->dequeue_spacing_msec = msec; -#line 87 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp3_ = self->priv->priority; -#line 87 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->timer_id = g_timeout_add_full (_tmp3_, timed_queue_get_heartbeat_timeout (self), _timed_queue_on_heartbeat_gsource_func, timed_queue_ref (self), timed_queue_unref); -#line 541 "TimedQueue.c" -} - - -static guint -timed_queue_get_heartbeat_timeout (TimedQueue* self) -{ - guint result = 0U; - guint _tmp0_ = 0U; - guint _tmp1_; -#line 90 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (IS_TIMED_QUEUE (self), 0U); -#line 91 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = self->priv->dequeue_spacing_msec; -#line 91 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp1_ == ((guint) 0)) { -#line 557 "TimedQueue.c" - guint _tmp2_; -#line 92 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2_ = self->priv->hold_msec; -#line 92 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = _tmp2_ / 10; -#line 563 "TimedQueue.c" - } else { - guint _tmp3_; -#line 93 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp3_ = self->priv->dequeue_spacing_msec; -#line 93 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = _tmp3_ / 2; -#line 570 "TimedQueue.c" - } -#line 91 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = CLAMP (_tmp0_, (guint) 10, G_MAXUINT); -#line 91 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 576 "TimedQueue.c" -} - - -static void -timed_queue_real_notify_dequeued (TimedQueue* self, - gconstpointer item) -{ - DequeuedCallback _tmp0_; - void* _tmp0__target; -#line 97 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->callback; -#line 97 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0__target = self->priv->callback_target; -#line 97 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ (item, _tmp0__target); -#line 592 "TimedQueue.c" -} - - -void -timed_queue_notify_dequeued (TimedQueue* self, - gconstpointer item) -{ -#line 96 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (IS_TIMED_QUEUE (self)); -#line 96 "/home/jens/Source/shotwell/src/TimedQueue.vala" - TIMED_QUEUE_GET_CLASS (self)->notify_dequeued (self, item); -#line 604 "TimedQueue.c" -} - - -gboolean -timed_queue_is_paused (TimedQueue* self) -{ - gboolean result = FALSE; - gboolean _tmp0_; -#line 100 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (IS_TIMED_QUEUE (self), FALSE); -#line 101 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->paused_state; -#line 101 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = _tmp0_; -#line 101 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 621 "TimedQueue.c" -} - - -void -timed_queue_pause (TimedQueue* self) -{ - gboolean _tmp0_; -#line 104 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (IS_TIMED_QUEUE (self)); -#line 105 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->paused_state; -#line 105 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp0_) { -#line 106 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return; -#line 637 "TimedQueue.c" - } -#line 108 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->paused_state = TRUE; -#line 110 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_signal_emit (self, timed_queue_signals[TIMED_QUEUE_PAUSED_SIGNAL], 0, TRUE); -#line 643 "TimedQueue.c" -} - - -void -timed_queue_unpause (TimedQueue* self) -{ - gboolean _tmp0_; -#line 113 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (IS_TIMED_QUEUE (self)); -#line 114 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->paused_state; -#line 114 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!_tmp0_) { -#line 115 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return; -#line 659 "TimedQueue.c" - } -#line 117 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->paused_state = FALSE; -#line 119 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_signal_emit (self, timed_queue_signals[TIMED_QUEUE_PAUSED_SIGNAL], 0, FALSE); -#line 665 "TimedQueue.c" -} - - -static void -timed_queue_real_clear (TimedQueue* self) -{ - SortedList* _tmp0_; -#line 123 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->queue; -#line 123 "/home/jens/Source/shotwell/src/TimedQueue.vala" - gee_collection_clear (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_COLLECTION, GeeCollection)); -#line 677 "TimedQueue.c" -} - - -void -timed_queue_clear (TimedQueue* self) -{ -#line 122 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (IS_TIMED_QUEUE (self)); -#line 122 "/home/jens/Source/shotwell/src/TimedQueue.vala" - TIMED_QUEUE_GET_CLASS (self)->clear (self); -#line 688 "TimedQueue.c" -} - - -static gboolean -timed_queue_real_contains (TimedQueue* self, - gconstpointer item) -{ - gboolean result = FALSE; - { - GeeIterator* _e_it = NULL; - SortedList* _tmp0_; - GeeIterator* _tmp1_; -#line 127 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->queue; -#line 127 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ITERABLE, GeeIterable)); -#line 127 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _e_it = _tmp1_; -#line 127 "/home/jens/Source/shotwell/src/TimedQueue.vala" - while (TRUE) { -#line 709 "TimedQueue.c" - GeeIterator* _tmp2_; - TimedQueueElement* e = NULL; - GeeIterator* _tmp3_; - gpointer _tmp4_; - GeeEqualDataFunc _tmp5_; - void* _tmp5__target; - TimedQueueElement* _tmp6_; - gconstpointer _tmp7_; -#line 127 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2_ = _e_it; -#line 127 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!gee_iterator_next (_tmp2_)) { -#line 127 "/home/jens/Source/shotwell/src/TimedQueue.vala" - break; -#line 724 "TimedQueue.c" - } -#line 127 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp3_ = _e_it; -#line 127 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp4_ = gee_iterator_get (_tmp3_); -#line 127 "/home/jens/Source/shotwell/src/TimedQueue.vala" - e = (TimedQueueElement*) _tmp4_; -#line 128 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp5_ = self->priv->equal_func; -#line 128 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp5__target = self->priv->equal_func_target; -#line 128 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp6_ = e; -#line 128 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp7_ = _tmp6_->item; -#line 128 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp5_ (item, _tmp7_, _tmp5__target)) { -#line 129 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = TRUE; -#line 129 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _timed_queue_element_unref0 (e); -#line 129 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _g_object_unref0 (_e_it); -#line 129 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 750 "TimedQueue.c" - } -#line 127 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _timed_queue_element_unref0 (e); -#line 754 "TimedQueue.c" - } -#line 127 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _g_object_unref0 (_e_it); -#line 758 "TimedQueue.c" - } -#line 132 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = FALSE; -#line 132 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 764 "TimedQueue.c" -} - - -gboolean -timed_queue_contains (TimedQueue* self, - gconstpointer item) -{ -#line 126 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (IS_TIMED_QUEUE (self), FALSE); -#line 126 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return TIMED_QUEUE_GET_CLASS (self)->contains (self, item); -#line 776 "TimedQueue.c" -} - - -static gboolean -timed_queue_real_enqueue (TimedQueue* self, - gconstpointer item) -{ - gboolean result = FALSE; - SortedList* _tmp0_; - TimedQueueElement* _tmp1_; - TimedQueueElement* _tmp2_; - gboolean _tmp3_; -#line 136 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->queue; -#line 136 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = timed_queue_element_new (self->priv->g_type, (GBoxedCopyFunc) self->priv->g_dup_func, (GDestroyNotify) self->priv->g_destroy_func, item, timed_queue_calc_ready_time (self)); -#line 136 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2_ = _tmp1_; -#line 136 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp3_ = gee_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_COLLECTION, GeeCollection), _tmp2_); -#line 136 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _timed_queue_element_unref0 (_tmp2_); -#line 136 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = _tmp3_; -#line 136 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 803 "TimedQueue.c" -} - - -gboolean -timed_queue_enqueue (TimedQueue* self, - gconstpointer item) -{ -#line 135 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (IS_TIMED_QUEUE (self), FALSE); -#line 135 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return TIMED_QUEUE_GET_CLASS (self)->enqueue (self, item); -#line 815 "TimedQueue.c" -} - - -static gboolean -timed_queue_real_enqueue_many (TimedQueue* self, - GeeCollection* items) -{ - gboolean result = FALSE; - gulong ready_time = 0UL; - GeeArrayList* elements = NULL; - GeeArrayList* _tmp0_; - SortedList* _tmp10_; - GeeArrayList* _tmp11_; -#line 139 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (GEE_IS_COLLECTION (items), FALSE); -#line 140 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ready_time = timed_queue_calc_ready_time (self); -#line 142 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = gee_array_list_new (TIMED_QUEUE_TYPE_ELEMENT, (GBoxedCopyFunc) timed_queue_element_ref, (GDestroyNotify) timed_queue_element_unref, NULL, NULL, NULL); -#line 142 "/home/jens/Source/shotwell/src/TimedQueue.vala" - elements = _tmp0_; -#line 837 "TimedQueue.c" - { - GeeIterator* _item_it = NULL; - GeeIterator* _tmp1_; -#line 143 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (items, GEE_TYPE_ITERABLE, GeeIterable)); -#line 143 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _item_it = _tmp1_; -#line 143 "/home/jens/Source/shotwell/src/TimedQueue.vala" - while (TRUE) { -#line 847 "TimedQueue.c" - GeeIterator* _tmp2_; - gpointer item = NULL; - GeeIterator* _tmp3_; - gpointer _tmp4_; - GeeArrayList* _tmp5_; - gconstpointer _tmp6_; - gulong _tmp7_; - TimedQueueElement* _tmp8_; - TimedQueueElement* _tmp9_; -#line 143 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2_ = _item_it; -#line 143 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!gee_iterator_next (_tmp2_)) { -#line 143 "/home/jens/Source/shotwell/src/TimedQueue.vala" - break; -#line 863 "TimedQueue.c" - } -#line 143 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp3_ = _item_it; -#line 143 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp4_ = gee_iterator_get (_tmp3_); -#line 143 "/home/jens/Source/shotwell/src/TimedQueue.vala" - item = _tmp4_; -#line 144 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp5_ = elements; -#line 144 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp6_ = item; -#line 144 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp7_ = ready_time; -#line 144 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp8_ = timed_queue_element_new (self->priv->g_type, (GBoxedCopyFunc) self->priv->g_dup_func, (GDestroyNotify) self->priv->g_destroy_func, _tmp6_, _tmp7_); -#line 144 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp9_ = _tmp8_; -#line 144 "/home/jens/Source/shotwell/src/TimedQueue.vala" - gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp9_); -#line 144 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _timed_queue_element_unref0 (_tmp9_); -#line 143 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((item == NULL) || (self->priv->g_destroy_func == NULL)) ? NULL : (item = (self->priv->g_destroy_func (item), NULL)); -#line 887 "TimedQueue.c" - } -#line 143 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _g_object_unref0 (_item_it); -#line 891 "TimedQueue.c" - } -#line 146 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp10_ = self->priv->queue; -#line 146 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp11_ = elements; -#line 146 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = sorted_list_add_list (_tmp10_, G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, GEE_TYPE_LIST, GeeList)); -#line 146 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _g_object_unref0 (elements); -#line 146 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 903 "TimedQueue.c" -} - - -gboolean -timed_queue_enqueue_many (TimedQueue* self, - GeeCollection* items) -{ -#line 139 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (IS_TIMED_QUEUE (self), FALSE); -#line 139 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return TIMED_QUEUE_GET_CLASS (self)->enqueue_many (self, items); -#line 915 "TimedQueue.c" -} - - -static gboolean -timed_queue_real_remove_first (TimedQueue* self, - gconstpointer item) -{ - gboolean result = FALSE; - GeeIterator* iter = NULL; - SortedList* _tmp0_; - GeeIterator* _tmp1_; -#line 150 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->queue; -#line 150 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ITERABLE, GeeIterable)); -#line 150 "/home/jens/Source/shotwell/src/TimedQueue.vala" - iter = _tmp1_; -#line 151 "/home/jens/Source/shotwell/src/TimedQueue.vala" - while (TRUE) { -#line 935 "TimedQueue.c" - GeeIterator* _tmp2_; - TimedQueueElement* e = NULL; - GeeIterator* _tmp3_; - gpointer _tmp4_; - GeeEqualDataFunc _tmp5_; - void* _tmp5__target; - TimedQueueElement* _tmp6_; - gconstpointer _tmp7_; -#line 151 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2_ = iter; -#line 151 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!gee_iterator_next (_tmp2_)) { -#line 151 "/home/jens/Source/shotwell/src/TimedQueue.vala" - break; -#line 950 "TimedQueue.c" - } -#line 152 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp3_ = iter; -#line 152 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp4_ = gee_iterator_get (_tmp3_); -#line 152 "/home/jens/Source/shotwell/src/TimedQueue.vala" - e = (TimedQueueElement*) _tmp4_; -#line 153 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp5_ = self->priv->equal_func; -#line 153 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp5__target = self->priv->equal_func_target; -#line 153 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp6_ = e; -#line 153 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp7_ = _tmp6_->item; -#line 153 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp5_ (item, _tmp7_, _tmp5__target)) { -#line 968 "TimedQueue.c" - GeeIterator* _tmp8_; -#line 154 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp8_ = iter; -#line 154 "/home/jens/Source/shotwell/src/TimedQueue.vala" - gee_iterator_remove (_tmp8_); -#line 156 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = TRUE; -#line 156 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _timed_queue_element_unref0 (e); -#line 156 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _g_object_unref0 (iter); -#line 156 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 982 "TimedQueue.c" - } -#line 151 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _timed_queue_element_unref0 (e); -#line 986 "TimedQueue.c" - } -#line 160 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = FALSE; -#line 160 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _g_object_unref0 (iter); -#line 160 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 994 "TimedQueue.c" -} - - -gboolean -timed_queue_remove_first (TimedQueue* self, - gconstpointer item) -{ -#line 149 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (IS_TIMED_QUEUE (self), FALSE); -#line 149 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return TIMED_QUEUE_GET_CLASS (self)->remove_first (self, item); -#line 1006 "TimedQueue.c" -} - - -static gulong -timed_queue_calc_ready_time (TimedQueue* self) -{ - gulong result = 0UL; - guint _tmp0_; -#line 169 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (IS_TIMED_QUEUE (self), 0UL); -#line 170 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->hold_msec; -#line 170 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = now_ms () + ((gulong) _tmp0_); -#line 170 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 1023 "TimedQueue.c" -} - - -static gboolean -timed_queue_on_heartbeat (TimedQueue* self) -{ - gboolean result = FALSE; - gboolean _tmp0_; - gulong now = 0UL; -#line 173 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (IS_TIMED_QUEUE (self), FALSE); -#line 174 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->paused_state; -#line 174 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp0_) { -#line 175 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = TRUE; -#line 175 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 1043 "TimedQueue.c" - } -#line 177 "/home/jens/Source/shotwell/src/TimedQueue.vala" - now = (gulong) 0; -#line 1047 "TimedQueue.c" - { - gboolean _tmp1_ = FALSE; -#line 179 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = TRUE; -#line 179 "/home/jens/Source/shotwell/src/TimedQueue.vala" - while (TRUE) { -#line 1054 "TimedQueue.c" - SortedList* _tmp2_; - gint _tmp3_; - gint _tmp4_; - TimedQueueElement* head = NULL; - SortedList* _tmp5_; - gpointer _tmp6_; - TimedQueueElement* _tmp7_; - gulong _tmp8_; - TimedQueueElement* _tmp9_; - gulong _tmp10_; - gulong _tmp11_; - gboolean _tmp12_ = FALSE; - guint _tmp13_; - TimedQueueElement* h = NULL; - SortedList* _tmp17_; - gpointer _tmp18_; - TimedQueueElement* _tmp19_; - TimedQueueElement* _tmp20_; - TimedQueueElement* _tmp21_; - gconstpointer _tmp22_; - gulong _tmp23_; - guint _tmp24_; -#line 179 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!_tmp1_) { -#line 1079 "TimedQueue.c" - } -#line 179 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = FALSE; -#line 180 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2_ = self->priv->queue; -#line 180 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp3_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, GEE_TYPE_COLLECTION, GeeCollection)); -#line 180 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp4_ = _tmp3_; -#line 180 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp4_ == 0) { -#line 181 "/home/jens/Source/shotwell/src/TimedQueue.vala" - break; -#line 1093 "TimedQueue.c" - } -#line 183 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp5_ = self->priv->queue; -#line 183 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp6_ = sorted_list_get_at (_tmp5_, 0); -#line 183 "/home/jens/Source/shotwell/src/TimedQueue.vala" - head = (TimedQueueElement*) _tmp6_; -#line 184 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp7_ = head; -#line 184 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _vala_assert (_tmp7_ != NULL, "head != null"); -#line 186 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp8_ = now; -#line 186 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp8_ == ((gulong) 0)) { -#line 187 "/home/jens/Source/shotwell/src/TimedQueue.vala" - now = now_ms (); -#line 1111 "TimedQueue.c" - } -#line 189 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp9_ = head; -#line 189 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp10_ = _tmp9_->ready; -#line 189 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp11_ = now; -#line 189 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp10_ > _tmp11_) { -#line 190 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _timed_queue_element_unref0 (head); -#line 190 "/home/jens/Source/shotwell/src/TimedQueue.vala" - break; -#line 1125 "TimedQueue.c" - } -#line 193 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp13_ = self->priv->dequeue_spacing_msec; -#line 193 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp13_ != ((guint) 0)) { -#line 1131 "TimedQueue.c" - gulong _tmp14_; - gulong _tmp15_; - guint _tmp16_; -#line 193 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp14_ = now; -#line 193 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp15_ = self->priv->last_dequeue; -#line 193 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp16_ = self->priv->dequeue_spacing_msec; -#line 193 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp12_ = (_tmp14_ - _tmp15_) < ((gulong) _tmp16_); -#line 1143 "TimedQueue.c" - } else { -#line 193 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp12_ = FALSE; -#line 1147 "TimedQueue.c" - } -#line 193 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp12_) { -#line 194 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _timed_queue_element_unref0 (head); -#line 194 "/home/jens/Source/shotwell/src/TimedQueue.vala" - break; -#line 1155 "TimedQueue.c" - } -#line 196 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp17_ = self->priv->queue; -#line 196 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp18_ = sorted_list_remove_at (_tmp17_, 0); -#line 196 "/home/jens/Source/shotwell/src/TimedQueue.vala" - h = (TimedQueueElement*) _tmp18_; -#line 197 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp19_ = head; -#line 197 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp20_ = h; -#line 197 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _vala_assert (_tmp19_ == _tmp20_, "head == h"); -#line 199 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp21_ = head; -#line 199 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp22_ = _tmp21_->item; -#line 199 "/home/jens/Source/shotwell/src/TimedQueue.vala" - timed_queue_notify_dequeued (self, _tmp22_); -#line 200 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp23_ = now; -#line 200 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->last_dequeue = _tmp23_; -#line 204 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp24_ = self->priv->dequeue_spacing_msec; -#line 204 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp24_ != ((guint) 0)) { -#line 205 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _timed_queue_element_unref0 (h); -#line 205 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _timed_queue_element_unref0 (head); -#line 205 "/home/jens/Source/shotwell/src/TimedQueue.vala" - break; -#line 1189 "TimedQueue.c" - } -#line 179 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _timed_queue_element_unref0 (h); -#line 179 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _timed_queue_element_unref0 (head); -#line 1195 "TimedQueue.c" - } - } -#line 208 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = TRUE; -#line 208 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 1202 "TimedQueue.c" -} - - -gint -timed_queue_get_size (TimedQueue* self) -{ -#line 164 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (IS_TIMED_QUEUE (self), 0); -#line 164 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return TIMED_QUEUE_GET_CLASS (self)->get_size (self); -#line 1213 "TimedQueue.c" -} - - -static gint -timed_queue_real_get_size (TimedQueue* base) -{ - gint result; - TimedQueue* self; - SortedList* _tmp0_; - gint _tmp1_; - gint _tmp2_; -#line 164 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self = base; -#line 165 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->queue; -#line 165 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = gee_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_COLLECTION, GeeCollection)); -#line 165 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2_ = _tmp1_; -#line 165 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = _tmp2_; -#line 165 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 1237 "TimedQueue.c" -} - - -static void -timed_queue_real_paused (TimedQueue* self, - gboolean is_paused) -{ -} - - -static TimedQueueElement* -timed_queue_element_construct (GType object_type, - GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - gconstpointer item, - gulong ready) -{ - TimedQueueElement* self = NULL; - gpointer _tmp0_; -#line 26 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self = (TimedQueueElement*) g_type_create_instance (object_type); -#line 26 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->g_type = g_type; -#line 26 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->g_dup_func = g_dup_func; -#line 26 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->g_destroy_func = g_destroy_func; -#line 27 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = ((item != NULL) && (g_dup_func != NULL)) ? g_dup_func ((gpointer) item) : ((gpointer) item); -#line 27 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _g_destroy_func0 (self->item); -#line 27 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->item = _tmp0_; -#line 28 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->ready = ready; -#line 26 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return self; -#line 1276 "TimedQueue.c" -} - - -static TimedQueueElement* -timed_queue_element_new (GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - gconstpointer item, - gulong ready) -{ -#line 26 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return timed_queue_element_construct (TIMED_QUEUE_TYPE_ELEMENT, g_type, g_dup_func, g_destroy_func, item, ready); -#line 1289 "TimedQueue.c" -} - - -static gint64 -timed_queue_element_comparator (void* a, - void* b) -{ - gint64 result = 0LL; - gulong _tmp0_; - gulong _tmp1_; -#line 32 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = G_TYPE_CHECK_INSTANCE_CAST ((TimedQueueElement*) a, TIMED_QUEUE_TYPE_ELEMENT, TimedQueueElement)->ready; -#line 32 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = G_TYPE_CHECK_INSTANCE_CAST ((TimedQueueElement*) b, TIMED_QUEUE_TYPE_ELEMENT, TimedQueueElement)->ready; -#line 32 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = ((gint64) _tmp0_) - ((gint64) _tmp1_); -#line 32 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 1308 "TimedQueue.c" -} - - -static void -timed_queue_value_element_init (GValue* value) -{ -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = NULL; -#line 1317 "TimedQueue.c" -} - - -static void -timed_queue_value_element_free_value (GValue* value) -{ -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (value->data[0].v_pointer) { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - timed_queue_element_unref (value->data[0].v_pointer); -#line 1328 "TimedQueue.c" - } -} - - -static void -timed_queue_value_element_copy_value (const GValue* src_value, - GValue* dest_value) -{ -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (src_value->data[0].v_pointer) { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - dest_value->data[0].v_pointer = timed_queue_element_ref (src_value->data[0].v_pointer); -#line 1341 "TimedQueue.c" - } else { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - dest_value->data[0].v_pointer = NULL; -#line 1345 "TimedQueue.c" - } -} - - -static gpointer -timed_queue_value_element_peek_pointer (const GValue* value) -{ -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return value->data[0].v_pointer; -#line 1355 "TimedQueue.c" -} - - -static gchar* -timed_queue_value_element_collect_value (GValue* value, - guint n_collect_values, - GTypeCValue* collect_values, - guint collect_flags) -{ -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (collect_values[0].v_pointer) { -#line 1367 "TimedQueue.c" - TimedQueueElement * object; - object = collect_values[0].v_pointer; -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (object->parent_instance.g_class == NULL) { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); -#line 1374 "TimedQueue.c" - } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); -#line 1378 "TimedQueue.c" - } -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = timed_queue_element_ref (object); -#line 1382 "TimedQueue.c" - } else { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = NULL; -#line 1386 "TimedQueue.c" - } -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return NULL; -#line 1390 "TimedQueue.c" -} - - -static gchar* -timed_queue_value_element_lcopy_value (const GValue* value, - guint n_collect_values, - GTypeCValue* collect_values, - guint collect_flags) -{ - TimedQueueElement ** object_p; - object_p = collect_values[0].v_pointer; -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!object_p) { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); -#line 1406 "TimedQueue.c" - } -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!value->data[0].v_pointer) { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - *object_p = NULL; -#line 1412 "TimedQueue.c" - } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - *object_p = value->data[0].v_pointer; -#line 1416 "TimedQueue.c" - } else { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - *object_p = timed_queue_element_ref (value->data[0].v_pointer); -#line 1420 "TimedQueue.c" - } -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return NULL; -#line 1424 "TimedQueue.c" -} - - -static GParamSpec* -timed_queue_param_spec_element (const gchar* name, - const gchar* nick, - const gchar* blurb, - GType object_type, - GParamFlags flags) -{ - TimedQueueParamSpecElement* spec; -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (g_type_is_a (object_type, TIMED_QUEUE_TYPE_ELEMENT), NULL); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - G_PARAM_SPEC (spec)->value_type = object_type; -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return G_PARAM_SPEC (spec); -#line 1444 "TimedQueue.c" -} - - -static gpointer -timed_queue_value_get_element (const GValue* value) -{ -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TIMED_QUEUE_TYPE_ELEMENT), NULL); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return value->data[0].v_pointer; -#line 1455 "TimedQueue.c" -} - - -static void -timed_queue_value_set_element (GValue* value, - gpointer v_object) -{ - TimedQueueElement * old; -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TIMED_QUEUE_TYPE_ELEMENT)); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - old = value->data[0].v_pointer; -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (v_object) { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TIMED_QUEUE_TYPE_ELEMENT)); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = v_object; -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - timed_queue_element_ref (value->data[0].v_pointer); -#line 1478 "TimedQueue.c" - } else { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = NULL; -#line 1482 "TimedQueue.c" - } -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (old) { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - timed_queue_element_unref (old); -#line 1488 "TimedQueue.c" - } -} - - -static void -timed_queue_value_take_element (GValue* value, - gpointer v_object) -{ - TimedQueueElement * old; -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TIMED_QUEUE_TYPE_ELEMENT)); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - old = value->data[0].v_pointer; -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (v_object) { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TIMED_QUEUE_TYPE_ELEMENT)); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = v_object; -#line 1510 "TimedQueue.c" - } else { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = NULL; -#line 1514 "TimedQueue.c" - } -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (old) { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - timed_queue_element_unref (old); -#line 1520 "TimedQueue.c" - } -} - - -static void -timed_queue_element_class_init (TimedQueueElementClass * klass) -{ -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - timed_queue_element_parent_class = g_type_class_peek_parent (klass); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueElementClass *) klass)->finalize = timed_queue_element_finalize; -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_type_class_add_private (klass, sizeof (TimedQueueElementPrivate)); -#line 1534 "TimedQueue.c" -} - - -static void -timed_queue_element_instance_init (TimedQueueElement * self) -{ -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv = TIMED_QUEUE_ELEMENT_GET_PRIVATE (self); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->ref_count = 1; -#line 1545 "TimedQueue.c" -} - - -static void -timed_queue_element_finalize (TimedQueueElement * obj) -{ - TimedQueueElement * self; -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self = G_TYPE_CHECK_INSTANCE_CAST (obj, TIMED_QUEUE_TYPE_ELEMENT, TimedQueueElement); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_signal_handlers_destroy (self); -#line 23 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((self->item == NULL) || (self->priv->g_destroy_func == NULL)) ? NULL : (self->item = (self->priv->g_destroy_func (self->item), NULL)); -#line 1559 "TimedQueue.c" -} - - -static GType -timed_queue_element_get_type (void) -{ - static volatile gsize timed_queue_element_type_id__volatile = 0; - if (g_once_init_enter (&timed_queue_element_type_id__volatile)) { - static const GTypeValueTable g_define_type_value_table = { timed_queue_value_element_init, timed_queue_value_element_free_value, timed_queue_value_element_copy_value, timed_queue_value_element_peek_pointer, "p", timed_queue_value_element_collect_value, "p", timed_queue_value_element_lcopy_value }; - static const GTypeInfo g_define_type_info = { sizeof (TimedQueueElementClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) timed_queue_element_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TimedQueueElement), 0, (GInstanceInitFunc) timed_queue_element_instance_init, &g_define_type_value_table }; - static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) }; - GType timed_queue_element_type_id; - timed_queue_element_type_id = g_type_register_fundamental (g_type_fundamental_next (), "TimedQueueElement", &g_define_type_info, &g_define_type_fundamental_info, 0); - g_once_init_leave (&timed_queue_element_type_id__volatile, timed_queue_element_type_id); - } - return timed_queue_element_type_id__volatile; -} - - -static gpointer -timed_queue_element_ref (gpointer instance) -{ - TimedQueueElement * self; - self = instance; -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_atomic_int_inc (&self->ref_count); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return instance; -#line 1588 "TimedQueue.c" -} - - -static void -timed_queue_element_unref (gpointer instance) -{ - TimedQueueElement * self; - self = instance; -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (g_atomic_int_dec_and_test (&self->ref_count)) { -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - TIMED_QUEUE_ELEMENT_GET_CLASS (self)->finalize (self); -#line 22 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_type_free_instance ((GTypeInstance *) self); -#line 1603 "TimedQueue.c" - } -} - - -static void -value_timed_queue_init (GValue* value) -{ -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = NULL; -#line 1613 "TimedQueue.c" -} - - -static void -value_timed_queue_free_value (GValue* value) -{ -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (value->data[0].v_pointer) { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - timed_queue_unref (value->data[0].v_pointer); -#line 1624 "TimedQueue.c" - } -} - - -static void -value_timed_queue_copy_value (const GValue* src_value, - GValue* dest_value) -{ -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (src_value->data[0].v_pointer) { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - dest_value->data[0].v_pointer = timed_queue_ref (src_value->data[0].v_pointer); -#line 1637 "TimedQueue.c" - } else { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - dest_value->data[0].v_pointer = NULL; -#line 1641 "TimedQueue.c" - } -} - - -static gpointer -value_timed_queue_peek_pointer (const GValue* value) -{ -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return value->data[0].v_pointer; -#line 1651 "TimedQueue.c" -} - - -static gchar* -value_timed_queue_collect_value (GValue* value, - guint n_collect_values, - GTypeCValue* collect_values, - guint collect_flags) -{ -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (collect_values[0].v_pointer) { -#line 1663 "TimedQueue.c" - TimedQueue * object; - object = collect_values[0].v_pointer; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (object->parent_instance.g_class == NULL) { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); -#line 1670 "TimedQueue.c" - } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); -#line 1674 "TimedQueue.c" - } -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = timed_queue_ref (object); -#line 1678 "TimedQueue.c" - } else { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = NULL; -#line 1682 "TimedQueue.c" - } -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return NULL; -#line 1686 "TimedQueue.c" -} - - -static gchar* -value_timed_queue_lcopy_value (const GValue* value, - guint n_collect_values, - GTypeCValue* collect_values, - guint collect_flags) -{ - TimedQueue ** object_p; - object_p = collect_values[0].v_pointer; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!object_p) { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); -#line 1702 "TimedQueue.c" - } -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!value->data[0].v_pointer) { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - *object_p = NULL; -#line 1708 "TimedQueue.c" - } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - *object_p = value->data[0].v_pointer; -#line 1712 "TimedQueue.c" - } else { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - *object_p = timed_queue_ref (value->data[0].v_pointer); -#line 1716 "TimedQueue.c" - } -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return NULL; -#line 1720 "TimedQueue.c" -} - - -GParamSpec* -param_spec_timed_queue (const gchar* name, - const gchar* nick, - const gchar* blurb, - GType object_type, - GParamFlags flags) -{ - ParamSpecTimedQueue* spec; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (g_type_is_a (object_type, TYPE_TIMED_QUEUE), NULL); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - G_PARAM_SPEC (spec)->value_type = object_type; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return G_PARAM_SPEC (spec); -#line 1740 "TimedQueue.c" -} - - -gpointer -value_get_timed_queue (const GValue* value) -{ -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_TIMED_QUEUE), NULL); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return value->data[0].v_pointer; -#line 1751 "TimedQueue.c" -} - - -void -value_set_timed_queue (GValue* value, - gpointer v_object) -{ - TimedQueue * old; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_TIMED_QUEUE)); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - old = value->data[0].v_pointer; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (v_object) { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_TIMED_QUEUE)); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = v_object; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - timed_queue_ref (value->data[0].v_pointer); -#line 1774 "TimedQueue.c" - } else { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = NULL; -#line 1778 "TimedQueue.c" - } -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (old) { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - timed_queue_unref (old); -#line 1784 "TimedQueue.c" - } -} - - -void -value_take_timed_queue (GValue* value, - gpointer v_object) -{ - TimedQueue * old; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_TIMED_QUEUE)); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - old = value->data[0].v_pointer; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (v_object) { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_TIMED_QUEUE)); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = v_object; -#line 1806 "TimedQueue.c" - } else { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - value->data[0].v_pointer = NULL; -#line 1810 "TimedQueue.c" - } -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (old) { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - timed_queue_unref (old); -#line 1816 "TimedQueue.c" - } -} - - -static void -timed_queue_class_init (TimedQueueClass * klass) -{ -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - timed_queue_parent_class = g_type_class_peek_parent (klass); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->finalize = timed_queue_finalize; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_type_class_add_private (klass, sizeof (TimedQueuePrivate)); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->notify_dequeued = (void (*) (TimedQueue *, gconstpointer)) timed_queue_real_notify_dequeued; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->clear = (void (*) (TimedQueue *)) timed_queue_real_clear; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->contains = (gboolean (*) (TimedQueue *, gconstpointer)) timed_queue_real_contains; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->enqueue = (gboolean (*) (TimedQueue *, gconstpointer)) timed_queue_real_enqueue; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->enqueue_many = (gboolean (*) (TimedQueue *, GeeCollection*)) timed_queue_real_enqueue_many; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->remove_first = (gboolean (*) (TimedQueue *, gconstpointer)) timed_queue_real_remove_first; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->paused = timed_queue_real_paused; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - TIMED_QUEUE_CLASS (klass)->get_size = timed_queue_real_get_size; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - timed_queue_signals[TIMED_QUEUE_PAUSED_SIGNAL] = g_signal_new ("paused", TYPE_TIMED_QUEUE, G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (TimedQueueClass, paused), NULL, NULL, g_cclosure_marshal_VOID__BOOLEAN, G_TYPE_NONE, 1, G_TYPE_BOOLEAN); -#line 1848 "TimedQueue.c" -} - - -static void -timed_queue_instance_init (TimedQueue * self) -{ -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv = TIMED_QUEUE_GET_PRIVATE (self); -#line 40 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->timer_id = (guint) 0; -#line 42 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->dequeue_spacing_msec = (guint) 0; -#line 43 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->last_dequeue = (gulong) 0; -#line 44 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->paused_state = FALSE; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->ref_count = 1; -#line 1867 "TimedQueue.c" -} - - -static void -timed_queue_finalize (TimedQueue * obj) -{ - TimedQueue * self; - guint _tmp0_; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_TIMED_QUEUE, TimedQueue); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_signal_handlers_destroy (self); -#line 70 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->timer_id; -#line 70 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp0_ != ((guint) 0)) { -#line 1884 "TimedQueue.c" - guint _tmp1_; -#line 71 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = self->priv->timer_id; -#line 71 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_source_remove (_tmp1_); -#line 1890 "TimedQueue.c" - } -#line 38 "/home/jens/Source/shotwell/src/TimedQueue.vala" - (self->priv->equal_func_target_destroy_notify == NULL) ? NULL : (self->priv->equal_func_target_destroy_notify (self->priv->equal_func_target), NULL); -#line 38 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func = NULL; -#line 38 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func_target = NULL; -#line 38 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->equal_func_target_destroy_notify = NULL; -#line 41 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _g_object_unref0 (self->priv->queue); -#line 1902 "TimedQueue.c" -} - - -GType -timed_queue_get_type (void) -{ - static volatile gsize timed_queue_type_id__volatile = 0; - if (g_once_init_enter (&timed_queue_type_id__volatile)) { - static const GTypeValueTable g_define_type_value_table = { value_timed_queue_init, value_timed_queue_free_value, value_timed_queue_copy_value, value_timed_queue_peek_pointer, "p", value_timed_queue_collect_value, "p", value_timed_queue_lcopy_value }; - static const GTypeInfo g_define_type_info = { sizeof (TimedQueueClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) timed_queue_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TimedQueue), 0, (GInstanceInitFunc) timed_queue_instance_init, &g_define_type_value_table }; - static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) }; - GType timed_queue_type_id; - timed_queue_type_id = g_type_register_fundamental (g_type_fundamental_next (), "TimedQueue", &g_define_type_info, &g_define_type_fundamental_info, 0); - g_once_init_leave (&timed_queue_type_id__volatile, timed_queue_type_id); - } - return timed_queue_type_id__volatile; -} - - -gpointer -timed_queue_ref (gpointer instance) -{ - TimedQueue * self; - self = instance; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_atomic_int_inc (&self->ref_count); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return instance; -#line 1931 "TimedQueue.c" -} - - -void -timed_queue_unref (gpointer instance) -{ - TimedQueue * self; - self = instance; -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (g_atomic_int_dec_and_test (&self->ref_count)) { -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - TIMED_QUEUE_GET_CLASS (self)->finalize (self); -#line 21 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_type_free_instance ((GTypeInstance *) self); -#line 1946 "TimedQueue.c" - } -} - - -HashTimedQueue* -hash_timed_queue_construct (GType object_type, - GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - guint hold_msec, - DequeuedCallback callback, - void* callback_target, - GeeHashDataFunc hash_func, - void* hash_func_target, - GDestroyNotify hash_func_target_destroy_notify, - GeeEqualDataFunc equal_func, - void* equal_func_target, - GDestroyNotify equal_func_target_destroy_notify, - gint priority) -{ - HashTimedQueue* self = NULL; - GeeEqualDataFunc _tmp0_; - void* _tmp0__target; - GDestroyNotify _tmp0__target_destroy_notify; - GeeHashDataFunc _tmp1_; - void* _tmp1__target; - GDestroyNotify _tmp1__target_destroy_notify; - GeeEqualDataFunc _tmp2_; - void* _tmp2__target; - GDestroyNotify _tmp2__target_destroy_notify; - GeeHashMap* _tmp3_; -#line 220 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = equal_func; -#line 220 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0__target = equal_func_target; -#line 220 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0__target_destroy_notify = equal_func_target_destroy_notify; -#line 220 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func = NULL; -#line 220 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func_target = NULL; -#line 220 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func_target_destroy_notify = NULL; -#line 220 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self = (HashTimedQueue*) timed_queue_construct (object_type, g_type, (GBoxedCopyFunc) g_dup_func, (GDestroyNotify) g_destroy_func, hold_msec, callback, callback_target, _tmp0_, _tmp0__target, _tmp0__target_destroy_notify, priority); -#line 220 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->g_type = g_type; -#line 220 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->g_dup_func = g_dup_func; -#line 220 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->g_destroy_func = g_destroy_func; -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = hash_func; -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1__target = hash_func_target; -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1__target_destroy_notify = hash_func_target_destroy_notify; -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - hash_func = NULL; -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - hash_func_target = NULL; -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - hash_func_target_destroy_notify = NULL; -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2_ = equal_func; -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2__target = equal_func_target; -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2__target_destroy_notify = equal_func_target_destroy_notify; -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func = NULL; -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func_target = NULL; -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func_target_destroy_notify = NULL; -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp3_ = gee_hash_map_new (g_type, (GBoxedCopyFunc) g_dup_func, (GDestroyNotify) g_destroy_func, G_TYPE_INT, NULL, NULL, _tmp1_, _tmp1__target, _tmp1__target_destroy_notify, _tmp2_, _tmp2__target, _tmp2__target_destroy_notify, NULL, NULL, NULL); -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _g_object_unref0 (self->priv->item_count); -#line 222 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv->item_count = _tmp3_; -#line 217 "/home/jens/Source/shotwell/src/TimedQueue.vala" - (hash_func_target_destroy_notify == NULL) ? NULL : (hash_func_target_destroy_notify (hash_func_target), NULL); -#line 217 "/home/jens/Source/shotwell/src/TimedQueue.vala" - hash_func = NULL; -#line 217 "/home/jens/Source/shotwell/src/TimedQueue.vala" - hash_func_target = NULL; -#line 217 "/home/jens/Source/shotwell/src/TimedQueue.vala" - hash_func_target_destroy_notify = NULL; -#line 217 "/home/jens/Source/shotwell/src/TimedQueue.vala" - (equal_func_target_destroy_notify == NULL) ? NULL : (equal_func_target_destroy_notify (equal_func_target), NULL); -#line 217 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func = NULL; -#line 217 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func_target = NULL; -#line 217 "/home/jens/Source/shotwell/src/TimedQueue.vala" - equal_func_target_destroy_notify = NULL; -#line 217 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return self; -#line 2046 "TimedQueue.c" -} - - -HashTimedQueue* -hash_timed_queue_new (GType g_type, - GBoxedCopyFunc g_dup_func, - GDestroyNotify g_destroy_func, - guint hold_msec, - DequeuedCallback callback, - void* callback_target, - GeeHashDataFunc hash_func, - void* hash_func_target, - GDestroyNotify hash_func_target_destroy_notify, - GeeEqualDataFunc equal_func, - void* equal_func_target, - GDestroyNotify equal_func_target_destroy_notify, - gint priority) -{ -#line 217 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return hash_timed_queue_construct (TYPE_HASH_TIMED_QUEUE, g_type, g_dup_func, g_destroy_func, hold_msec, callback, callback_target, hash_func, hash_func_target, hash_func_target_destroy_notify, equal_func, equal_func_target, equal_func_target_destroy_notify, priority); -#line 2067 "TimedQueue.c" -} - - -static void -hash_timed_queue_real_notify_dequeued (TimedQueue* base, - gconstpointer item) -{ - HashTimedQueue * self; -#line 225 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_HASH_TIMED_QUEUE, HashTimedQueue); -#line 226 "/home/jens/Source/shotwell/src/TimedQueue.vala" - hash_timed_queue_removed (self, item); -#line 228 "/home/jens/Source/shotwell/src/TimedQueue.vala" - TIMED_QUEUE_CLASS (hash_timed_queue_parent_class)->notify_dequeued (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_TIMED_QUEUE, TimedQueue), item); -#line 2082 "TimedQueue.c" -} - - -static void -hash_timed_queue_real_clear (TimedQueue* base) -{ - HashTimedQueue * self; - GeeHashMap* _tmp0_; -#line 231 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_HASH_TIMED_QUEUE, HashTimedQueue); -#line 232 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->item_count; -#line 232 "/home/jens/Source/shotwell/src/TimedQueue.vala" - gee_abstract_map_clear (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap)); -#line 234 "/home/jens/Source/shotwell/src/TimedQueue.vala" - TIMED_QUEUE_CLASS (hash_timed_queue_parent_class)->clear (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_TIMED_QUEUE, TimedQueue)); -#line 2099 "TimedQueue.c" -} - - -static gboolean -hash_timed_queue_real_contains (TimedQueue* base, - gconstpointer item) -{ - HashTimedQueue * self; - gboolean result = FALSE; - GeeHashMap* _tmp0_; -#line 237 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_HASH_TIMED_QUEUE, HashTimedQueue); -#line 238 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->item_count; -#line 238 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = gee_abstract_map_has_key (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), item); -#line 238 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 2118 "TimedQueue.c" -} - - -static gboolean -hash_timed_queue_real_enqueue (TimedQueue* base, - gconstpointer item) -{ - HashTimedQueue * self; - gboolean result = FALSE; - gint _tmp0_ = 0; - GeeHashMap* _tmp1_; - GeeHashMap* _tmp4_; -#line 241 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_HASH_TIMED_QUEUE, HashTimedQueue); -#line 242 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!TIMED_QUEUE_CLASS (hash_timed_queue_parent_class)->enqueue (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_TIMED_QUEUE, TimedQueue), item)) { -#line 243 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = FALSE; -#line 243 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 2139 "TimedQueue.c" - } -#line 245 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = self->priv->item_count; -#line 245 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (gee_abstract_map_has_key (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), item)) { -#line 2145 "TimedQueue.c" - GeeHashMap* _tmp2_; - gpointer _tmp3_; -#line 245 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2_ = self->priv->item_count; -#line 245 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp3_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), item); -#line 245 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = ((gint) ((gintptr) _tmp3_)) + 1; -#line 2154 "TimedQueue.c" - } else { -#line 245 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = 1; -#line 2158 "TimedQueue.c" - } -#line 245 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp4_ = self->priv->item_count; -#line 245 "/home/jens/Source/shotwell/src/TimedQueue.vala" - gee_abstract_map_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), item, (gpointer) ((gintptr) _tmp0_)); -#line 247 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = TRUE; -#line 247 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 2168 "TimedQueue.c" -} - - -static gboolean -hash_timed_queue_real_enqueue_many (TimedQueue* base, - GeeCollection* items) -{ - HashTimedQueue * self; - gboolean result = FALSE; -#line 250 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_HASH_TIMED_QUEUE, HashTimedQueue); -#line 250 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_val_if_fail (GEE_IS_COLLECTION (items), FALSE); -#line 251 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!TIMED_QUEUE_CLASS (hash_timed_queue_parent_class)->enqueue_many (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_TIMED_QUEUE, TimedQueue), items)) { -#line 252 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = FALSE; -#line 252 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 2188 "TimedQueue.c" - } - { - GeeIterator* _item_it = NULL; - GeeIterator* _tmp0_; -#line 254 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = gee_iterable_iterator (G_TYPE_CHECK_INSTANCE_CAST (items, GEE_TYPE_ITERABLE, GeeIterable)); -#line 254 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _item_it = _tmp0_; -#line 254 "/home/jens/Source/shotwell/src/TimedQueue.vala" - while (TRUE) { -#line 2199 "TimedQueue.c" - GeeIterator* _tmp1_; - gpointer item = NULL; - GeeIterator* _tmp2_; - gpointer _tmp3_; - gint _tmp4_ = 0; - GeeHashMap* _tmp5_; - gconstpointer _tmp6_; - GeeHashMap* _tmp10_; - gconstpointer _tmp11_; -#line 254 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = _item_it; -#line 254 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!gee_iterator_next (_tmp1_)) { -#line 254 "/home/jens/Source/shotwell/src/TimedQueue.vala" - break; -#line 2215 "TimedQueue.c" - } -#line 254 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2_ = _item_it; -#line 254 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp3_ = gee_iterator_get (_tmp2_); -#line 254 "/home/jens/Source/shotwell/src/TimedQueue.vala" - item = _tmp3_; -#line 255 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp5_ = self->priv->item_count; -#line 255 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp6_ = item; -#line 255 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (gee_abstract_map_has_key (G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp6_)) { -#line 2229 "TimedQueue.c" - GeeHashMap* _tmp7_; - gconstpointer _tmp8_; - gpointer _tmp9_; -#line 255 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp7_ = self->priv->item_count; -#line 255 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp8_ = item; -#line 255 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp9_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp8_); -#line 255 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp4_ = ((gint) ((gintptr) _tmp9_)) + 1; -#line 2241 "TimedQueue.c" - } else { -#line 255 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp4_ = 1; -#line 2245 "TimedQueue.c" - } -#line 255 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp10_ = self->priv->item_count; -#line 255 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp11_ = item; -#line 255 "/home/jens/Source/shotwell/src/TimedQueue.vala" - gee_abstract_map_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), _tmp11_, (gpointer) ((gintptr) _tmp4_)); -#line 254 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((item == NULL) || (self->priv->g_destroy_func == NULL)) ? NULL : (item = (self->priv->g_destroy_func (item), NULL)); -#line 2255 "TimedQueue.c" - } -#line 254 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _g_object_unref0 (_item_it); -#line 2259 "TimedQueue.c" - } -#line 257 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = TRUE; -#line 257 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 2265 "TimedQueue.c" -} - - -static gboolean -hash_timed_queue_real_remove_first (TimedQueue* base, - gconstpointer item) -{ - HashTimedQueue * self; - gboolean result = FALSE; -#line 260 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_HASH_TIMED_QUEUE, HashTimedQueue); -#line 261 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!TIMED_QUEUE_CLASS (hash_timed_queue_parent_class)->remove_first (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_TIMED_QUEUE, TimedQueue), item)) { -#line 262 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = FALSE; -#line 262 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 2283 "TimedQueue.c" - } -#line 264 "/home/jens/Source/shotwell/src/TimedQueue.vala" - hash_timed_queue_removed (self, item); -#line 266 "/home/jens/Source/shotwell/src/TimedQueue.vala" - result = TRUE; -#line 266 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return result; -#line 2291 "TimedQueue.c" -} - - -static void -hash_timed_queue_removed (HashTimedQueue* self, - gconstpointer item) -{ - GeeHashMap* _tmp0_; - gint count = 0; - GeeHashMap* _tmp1_; - gpointer _tmp2_; - gint _tmp3_; - gint _tmp4_; - gint _tmp5_; -#line 269 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_return_if_fail (IS_HASH_TIMED_QUEUE (self)); -#line 272 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp0_ = self->priv->item_count; -#line 272 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (!gee_abstract_map_has_key (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), item)) { -#line 273 "/home/jens/Source/shotwell/src/TimedQueue.vala" - return; -#line 2314 "TimedQueue.c" - } -#line 275 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp1_ = self->priv->item_count; -#line 275 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp2_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), item); -#line 275 "/home/jens/Source/shotwell/src/TimedQueue.vala" - count = (gint) ((gintptr) _tmp2_); -#line 276 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp3_ = count; -#line 276 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _vala_assert (_tmp3_ > 0, "count > 0"); -#line 278 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp4_ = count; -#line 278 "/home/jens/Source/shotwell/src/TimedQueue.vala" - count = _tmp4_ - 1; -#line 278 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp5_ = count; -#line 278 "/home/jens/Source/shotwell/src/TimedQueue.vala" - if (_tmp5_ == 0) { -#line 2334 "TimedQueue.c" - GeeHashMap* _tmp6_; -#line 279 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp6_ = self->priv->item_count; -#line 279 "/home/jens/Source/shotwell/src/TimedQueue.vala" - gee_abstract_map_unset (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), item, NULL); -#line 2340 "TimedQueue.c" - } else { - GeeHashMap* _tmp7_; - gint _tmp8_; -#line 281 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp7_ = self->priv->item_count; -#line 281 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _tmp8_ = count; -#line 281 "/home/jens/Source/shotwell/src/TimedQueue.vala" - gee_abstract_map_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), item, (gpointer) ((gintptr) _tmp8_)); -#line 2350 "TimedQueue.c" - } -} - - -static void -hash_timed_queue_class_init (HashTimedQueueClass * klass) -{ -#line 214 "/home/jens/Source/shotwell/src/TimedQueue.vala" - hash_timed_queue_parent_class = g_type_class_peek_parent (klass); -#line 214 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->finalize = hash_timed_queue_finalize; -#line 214 "/home/jens/Source/shotwell/src/TimedQueue.vala" - g_type_class_add_private (klass, sizeof (HashTimedQueuePrivate)); -#line 214 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->notify_dequeued = (void (*) (TimedQueue *, gconstpointer)) hash_timed_queue_real_notify_dequeued; -#line 214 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->clear = (void (*) (TimedQueue *)) hash_timed_queue_real_clear; -#line 214 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->contains = (gboolean (*) (TimedQueue *, gconstpointer)) hash_timed_queue_real_contains; -#line 214 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->enqueue = (gboolean (*) (TimedQueue *, gconstpointer)) hash_timed_queue_real_enqueue; -#line 214 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->enqueue_many = (gboolean (*) (TimedQueue *, GeeCollection*)) hash_timed_queue_real_enqueue_many; -#line 214 "/home/jens/Source/shotwell/src/TimedQueue.vala" - ((TimedQueueClass *) klass)->remove_first = (gboolean (*) (TimedQueue *, gconstpointer)) hash_timed_queue_real_remove_first; -#line 2376 "TimedQueue.c" -} - - -static void -hash_timed_queue_instance_init (HashTimedQueue * self) -{ -#line 214 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self->priv = HASH_TIMED_QUEUE_GET_PRIVATE (self); -#line 2385 "TimedQueue.c" -} - - -static void -hash_timed_queue_finalize (TimedQueue * obj) -{ - HashTimedQueue * self; -#line 214 "/home/jens/Source/shotwell/src/TimedQueue.vala" - self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_HASH_TIMED_QUEUE, HashTimedQueue); -#line 215 "/home/jens/Source/shotwell/src/TimedQueue.vala" - _g_object_unref0 (self->priv->item_count); -#line 214 "/home/jens/Source/shotwell/src/TimedQueue.vala" - TIMED_QUEUE_CLASS (hash_timed_queue_parent_class)->finalize (obj); -#line 2399 "TimedQueue.c" -} - - -GType -hash_timed_queue_get_type (void) -{ - static volatile gsize hash_timed_queue_type_id__volatile = 0; - if (g_once_init_enter (&hash_timed_queue_type_id__volatile)) { - static const GTypeInfo g_define_type_info = { sizeof (HashTimedQueueClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) hash_timed_queue_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (HashTimedQueue), 0, (GInstanceInitFunc) hash_timed_queue_instance_init, NULL }; - GType hash_timed_queue_type_id; - hash_timed_queue_type_id = g_type_register_static (TYPE_TIMED_QUEUE, "HashTimedQueue", &g_define_type_info, 0); - g_once_init_leave (&hash_timed_queue_type_id__volatile, hash_timed_queue_type_id); - } - return hash_timed_queue_type_id__volatile; -} - - - |