diff options
Diffstat (limited to 'src/db/VideoTable.c')
-rw-r--r-- | src/db/VideoTable.c | 3373 |
1 files changed, 3373 insertions, 0 deletions
diff --git a/src/db/VideoTable.c b/src/db/VideoTable.c new file mode 100644 index 0000000..8b8d78a --- /dev/null +++ b/src/db/VideoTable.c @@ -0,0 +1,3373 @@ +/* VideoTable.c generated by valac 0.32.1, the Vala compiler + * generated from VideoTable.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. + */ + +#include <glib.h> +#include <glib-object.h> +#include <string.h> +#include <stdlib.h> +#include <time.h> +#include <float.h> +#include <math.h> +#include <sqlite3.h> +#include <gee.h> +#include <gio/gio.h> +#include <gobject/gvaluecollector.h> + + +#define TYPE_VIDEO_ID (video_id_get_type ()) +typedef struct _VideoID VideoID; + +#define TYPE_VIDEO_ROW (video_row_get_type ()) +#define VIDEO_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIDEO_ROW, VideoRow)) +#define VIDEO_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIDEO_ROW, VideoRowClass)) +#define IS_VIDEO_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIDEO_ROW)) +#define IS_VIDEO_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIDEO_ROW)) +#define VIDEO_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIDEO_ROW, VideoRowClass)) + +typedef struct _VideoRow VideoRow; +typedef struct _VideoRowClass VideoRowClass; +typedef struct _VideoRowPrivate VideoRowPrivate; + +#define TYPE_IMPORT_ID (import_id_get_type ()) +typedef struct _ImportID ImportID; + +#define TYPE_EVENT_ID (event_id_get_type ()) +typedef struct _EventID EventID; + +#define TYPE_RATING (rating_get_type ()) +#define _g_free0(var) (var = (g_free (var), NULL)) +typedef struct _ParamSpecVideoRow ParamSpecVideoRow; + +#define TYPE_DATABASE_TABLE (database_table_get_type ()) +#define DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DATABASE_TABLE, DatabaseTable)) +#define DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DATABASE_TABLE, DatabaseTableClass)) +#define IS_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DATABASE_TABLE)) +#define IS_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DATABASE_TABLE)) +#define DATABASE_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DATABASE_TABLE, DatabaseTableClass)) + +typedef struct _DatabaseTable DatabaseTable; +typedef struct _DatabaseTableClass DatabaseTableClass; +typedef struct _DatabaseTablePrivate DatabaseTablePrivate; + +#define TYPE_VIDEO_TABLE (video_table_get_type ()) +#define VIDEO_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VIDEO_TABLE, VideoTable)) +#define VIDEO_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VIDEO_TABLE, VideoTableClass)) +#define IS_VIDEO_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VIDEO_TABLE)) +#define IS_VIDEO_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VIDEO_TABLE)) +#define VIDEO_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VIDEO_TABLE, VideoTableClass)) + +typedef struct _VideoTable VideoTable; +typedef struct _VideoTableClass VideoTableClass; +typedef struct _VideoTablePrivate VideoTablePrivate; +#define _sqlite3_finalize0(var) ((var == NULL) ? NULL : (var = (sqlite3_finalize (var), NULL))) +#define _database_table_unref0(var) ((var == NULL) ? NULL : (var = (database_table_unref (var), NULL))) +#define _video_row_unref0(var) ((var == NULL) ? NULL : (var = (video_row_unref (var), NULL))) +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) +#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); + +struct _VideoID { + gint64 id; +}; + +struct _ImportID { + gint64 id; +}; + +struct _EventID { + gint64 id; +}; + +typedef enum { + RATING_REJECTED = -1, + RATING_UNRATED = 0, + RATING_ONE = 1, + RATING_TWO = 2, + RATING_THREE = 3, + RATING_FOUR = 4, + RATING_FIVE = 5 +} Rating; + +struct _VideoRow { + GTypeInstance parent_instance; + volatile int ref_count; + VideoRowPrivate * priv; + VideoID video_id; + gchar* filepath; + gint64 filesize; + time_t timestamp; + gint width; + gint height; + gdouble clip_duration; + gboolean is_interpretable; + time_t exposure_time; + ImportID import_id; + EventID event_id; + gchar* md5; + time_t time_created; + Rating rating; + gchar* title; + gchar* backlinks; + time_t time_reimported; + guint64 flags; + gchar* comment; +}; + +struct _VideoRowClass { + GTypeClass parent_class; + void (*finalize) (VideoRow *self); +}; + +struct _ParamSpecVideoRow { + GParamSpec parent_instance; +}; + +struct _DatabaseTable { + GTypeInstance parent_instance; + volatile int ref_count; + DatabaseTablePrivate * priv; + gchar* table_name; +}; + +struct _DatabaseTableClass { + GTypeClass parent_class; + void (*finalize) (DatabaseTable *self); +}; + +struct _VideoTable { + DatabaseTable parent_instance; + VideoTablePrivate * priv; +}; + +struct _VideoTableClass { + DatabaseTableClass parent_class; +}; + +typedef enum { + DATABASE_ERROR_ERROR, + DATABASE_ERROR_BACKING, + DATABASE_ERROR_MEMORY, + DATABASE_ERROR_ABORT, + DATABASE_ERROR_LIMITS, + DATABASE_ERROR_TYPESPEC +} DatabaseError; +#define DATABASE_ERROR database_error_quark () + +static gpointer video_row_parent_class = NULL; +static gpointer video_table_parent_class = NULL; +static VideoTable* video_table_instance; +static VideoTable* video_table_instance = NULL; +extern sqlite3* database_table_db; + +GType video_id_get_type (void) G_GNUC_CONST; +VideoID* video_id_dup (const VideoID* self); +void video_id_free (VideoID* self); +#define VIDEO_ID_INVALID ((gint64) -1) +void video_id_init (VideoID *self, gint64 id); +gboolean video_id_is_invalid (VideoID *self); +gboolean video_id_is_valid (VideoID *self); +guint video_id_hash (VideoID* a); +guint int64_hash (gint64* n); +gboolean video_id_equal (void* a, void* b); +gchar* video_id_upgrade_video_id_to_source_id (VideoID* video_id); +#define VIDEO_TYPENAME "video" +gpointer video_row_ref (gpointer instance); +void video_row_unref (gpointer instance); +GParamSpec* param_spec_video_row (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_video_row (GValue* value, gpointer v_object); +void value_take_video_row (GValue* value, gpointer v_object); +gpointer value_get_video_row (const GValue* value); +GType video_row_get_type (void) G_GNUC_CONST; +GType import_id_get_type (void) G_GNUC_CONST; +ImportID* import_id_dup (const ImportID* self); +void import_id_free (ImportID* self); +GType event_id_get_type (void) G_GNUC_CONST; +EventID* event_id_dup (const EventID* self); +void event_id_free (EventID* self); +GType rating_get_type (void) G_GNUC_CONST; +enum { + VIDEO_ROW_DUMMY_PROPERTY +}; +VideoRow* video_row_new (void); +VideoRow* video_row_construct (GType object_type); +static void video_row_finalize (VideoRow* obj); +gpointer database_table_ref (gpointer instance); +void database_table_unref (gpointer instance); +GParamSpec* param_spec_database_table (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); +void value_set_database_table (GValue* value, gpointer v_object); +void value_take_database_table (GValue* value, gpointer v_object); +gpointer value_get_database_table (const GValue* value); +GType database_table_get_type (void) G_GNUC_CONST; +GType video_table_get_type (void) G_GNUC_CONST; +enum { + VIDEO_TABLE_DUMMY_PROPERTY +}; +static VideoTable* video_table_new (void); +static VideoTable* video_table_construct (GType object_type); +DatabaseTable* database_table_construct (GType object_type); +void database_table_fatal (const gchar* op, gint res); +void database_table_set_table_name (DatabaseTable* self, const gchar* table_name); +VideoTable* video_table_get_instance (void); +GQuark database_error_quark (void); +void video_table_add (VideoTable* self, VideoRow* video_row, VideoID* result, GError** error); +gulong now_sec (void); +#define EVENT_ID_INVALID ((gint64) -1) +void database_table_throw_error (const gchar* method, gint res, GError** error); +void event_id_init (EventID *self, gint64 id); +gboolean video_table_drop_event (VideoTable* self, EventID* event_id); +VideoRow* video_table_get_row (VideoTable* self, VideoID* video_id); +Rating rating_unserialize (gint value); +GeeArrayList* video_table_get_all (VideoTable* self); +void video_table_set_filepath (VideoTable* self, VideoID* video_id, const gchar* filepath, GError** error); +void database_table_update_text_by_id_2 (DatabaseTable* self, gint64 id, const gchar* column, const gchar* text, GError** error); +void video_table_set_title (VideoTable* self, VideoID* video_id, const gchar* new_title, GError** error); +void video_table_set_comment (VideoTable* self, VideoID* video_id, const gchar* new_comment, GError** error); +void video_table_set_exposure_time (VideoTable* self, VideoID* video_id, time_t time, GError** error); +void database_table_update_int64_by_id_2 (DatabaseTable* self, gint64 id, const gchar* column, gint64 value, GError** error); +void video_table_set_rating (VideoTable* self, VideoID* video_id, Rating rating, GError** error); +gint rating_serialize (Rating self); +void video_table_set_flags (VideoTable* self, VideoID* video_id, guint64 flags, GError** error); +void video_table_update_backlinks (VideoTable* self, VideoID* video_id, const gchar* backlinks, GError** error); +void video_table_update_is_interpretable (VideoTable* self, VideoID* video_id, gboolean is_interpretable, GError** error); +void database_table_update_int_by_id_2 (DatabaseTable* self, gint64 id, const gchar* column, gint value, GError** error); +gboolean video_table_set_event (VideoTable* self, VideoID* video_id, EventID* event_id); +gboolean database_table_update_int64_by_id (DatabaseTable* self, gint64 id, const gchar* column, gint64 value); +void video_table_remove_by_file (VideoTable* self, GFile* file, GError** error); +void video_table_remove (VideoTable* self, VideoID* videoID, GError** error); +gboolean video_table_is_video_stored (VideoTable* self, GFile* file); +void video_table_get_id (VideoTable* self, GFile* file, VideoID* result); +GeeArrayList* video_table_get_videos (VideoTable* self, GError** error); +static sqlite3_stmt* video_table_get_duplicate_stmt (VideoTable* self, GFile* file, const gchar* md5); +gboolean video_table_has_duplicate (VideoTable* self, GFile* file, const gchar* md5); +VideoID* video_table_get_duplicate_ids (VideoTable* self, GFile* file, const gchar* md5, int* result_length1); +static void _vala_array_add3 (VideoID** array, int* length, int* size, const VideoID* value); +GeeArrayList* video_table_get_event_source_ids (VideoTable* self, EventID* event_id); +void video_table_set_timestamp (VideoTable* self, VideoID* video_id, time_t timestamp, GError** error); +static void video_table_finalize (DatabaseTable* obj); + + +void video_id_init (VideoID *self, gint64 id) { + gint64 _tmp0_ = 0LL; +#line 12 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + memset (self, 0, sizeof (VideoID)); +#line 13 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = id; +#line 13 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + (*self).id = _tmp0_; +#line 266 "VideoTable.c" +} + + +gboolean video_id_is_invalid (VideoID *self) { + gboolean result = FALSE; + gint64 _tmp0_ = 0LL; +#line 17 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = (*self).id; +#line 17 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = _tmp0_ == VIDEO_ID_INVALID; +#line 17 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 279 "VideoTable.c" +} + + +gboolean video_id_is_valid (VideoID *self) { + gboolean result = FALSE; + gint64 _tmp0_ = 0LL; +#line 21 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = (*self).id; +#line 21 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = _tmp0_ != VIDEO_ID_INVALID; +#line 21 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 292 "VideoTable.c" +} + + +guint video_id_hash (VideoID* a) { + guint result = 0U; + VideoID* _tmp0_ = NULL; + gint64 _tmp1_ = 0LL; + guint _tmp2_ = 0U; +#line 25 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = a; +#line 25 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = (*_tmp0_).id; +#line 25 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = int64_hash (&_tmp1_); +#line 25 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = _tmp2_; +#line 25 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 311 "VideoTable.c" +} + + +gboolean video_id_equal (void* a, void* b) { + gboolean result = FALSE; + void* _tmp0_ = NULL; + gint64 _tmp1_ = 0LL; + void* _tmp2_ = NULL; + gint64 _tmp3_ = 0LL; +#line 29 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = a; +#line 29 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = (*((VideoID*) _tmp0_)).id; +#line 29 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = b; +#line 29 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = (*((VideoID*) _tmp2_)).id; +#line 29 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = _tmp1_ == _tmp3_; +#line 29 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 333 "VideoTable.c" +} + + +gchar* video_id_upgrade_video_id_to_source_id (VideoID* video_id) { + gchar* result = NULL; + VideoID _tmp0_ = {0}; + gint64 _tmp1_ = 0LL; + gchar* _tmp2_ = NULL; +#line 32 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (video_id != NULL, NULL); +#line 33 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = *video_id; +#line 33 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = _tmp0_.id; +#line 33 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = g_strdup_printf ("%s-%016" G_GINT64_MODIFIER "x", VIDEO_TYPENAME, _tmp1_); +#line 33 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = _tmp2_; +#line 33 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 354 "VideoTable.c" +} + + +VideoID* video_id_dup (const VideoID* self) { + VideoID* dup; +#line 7 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + dup = g_new0 (VideoID, 1); +#line 7 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + memcpy (dup, self, sizeof (VideoID)); +#line 7 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return dup; +#line 366 "VideoTable.c" +} + + +void video_id_free (VideoID* self) { +#line 7 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_free (self); +#line 373 "VideoTable.c" +} + + +GType video_id_get_type (void) { + static volatile gsize video_id_type_id__volatile = 0; + if (g_once_init_enter (&video_id_type_id__volatile)) { + GType video_id_type_id; + video_id_type_id = g_boxed_type_register_static ("VideoID", (GBoxedCopyFunc) video_id_dup, (GBoxedFreeFunc) video_id_free); + g_once_init_leave (&video_id_type_id__volatile, video_id_type_id); + } + return video_id_type_id__volatile; +} + + +VideoRow* video_row_construct (GType object_type) { + VideoRow* self = NULL; +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + self = (VideoRow*) g_type_create_instance (object_type); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return self; +#line 394 "VideoTable.c" +} + + +VideoRow* video_row_new (void) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return video_row_construct (TYPE_VIDEO_ROW); +#line 401 "VideoTable.c" +} + + +static void value_video_row_init (GValue* value) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + value->data[0].v_pointer = NULL; +#line 408 "VideoTable.c" +} + + +static void value_video_row_free_value (GValue* value) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (value->data[0].v_pointer) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_row_unref (value->data[0].v_pointer); +#line 417 "VideoTable.c" + } +} + + +static void value_video_row_copy_value (const GValue* src_value, GValue* dest_value) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (src_value->data[0].v_pointer) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + dest_value->data[0].v_pointer = video_row_ref (src_value->data[0].v_pointer); +#line 427 "VideoTable.c" + } else { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + dest_value->data[0].v_pointer = NULL; +#line 431 "VideoTable.c" + } +} + + +static gpointer value_video_row_peek_pointer (const GValue* value) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return value->data[0].v_pointer; +#line 439 "VideoTable.c" +} + + +static gchar* value_video_row_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (collect_values[0].v_pointer) { +#line 446 "VideoTable.c" + VideoRow* object; + object = collect_values[0].v_pointer; +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (object->parent_instance.g_class == NULL) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); +#line 453 "VideoTable.c" + } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.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 457 "VideoTable.c" + } +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + value->data[0].v_pointer = video_row_ref (object); +#line 461 "VideoTable.c" + } else { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + value->data[0].v_pointer = NULL; +#line 465 "VideoTable.c" + } +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return NULL; +#line 469 "VideoTable.c" +} + + +static gchar* value_video_row_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { + VideoRow** object_p; + object_p = collect_values[0].v_pointer; +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (!object_p) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); +#line 480 "VideoTable.c" + } +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (!value->data[0].v_pointer) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + *object_p = NULL; +#line 486 "VideoTable.c" + } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + *object_p = value->data[0].v_pointer; +#line 490 "VideoTable.c" + } else { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + *object_p = video_row_ref (value->data[0].v_pointer); +#line 494 "VideoTable.c" + } +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return NULL; +#line 498 "VideoTable.c" +} + + +GParamSpec* param_spec_video_row (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { + ParamSpecVideoRow* spec; +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (g_type_is_a (object_type, TYPE_VIDEO_ROW), NULL); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + G_PARAM_SPEC (spec)->value_type = object_type; +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return G_PARAM_SPEC (spec); +#line 512 "VideoTable.c" +} + + +gpointer value_get_video_row (const GValue* value) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_VIDEO_ROW), NULL); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return value->data[0].v_pointer; +#line 521 "VideoTable.c" +} + + +void value_set_video_row (GValue* value, gpointer v_object) { + VideoRow* old; +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_VIDEO_ROW)); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + old = value->data[0].v_pointer; +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (v_object) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_VIDEO_ROW)); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + value->data[0].v_pointer = v_object; +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_row_ref (value->data[0].v_pointer); +#line 541 "VideoTable.c" + } else { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + value->data[0].v_pointer = NULL; +#line 545 "VideoTable.c" + } +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (old) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_row_unref (old); +#line 551 "VideoTable.c" + } +} + + +void value_take_video_row (GValue* value, gpointer v_object) { + VideoRow* old; +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_VIDEO_ROW)); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + old = value->data[0].v_pointer; +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (v_object) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_VIDEO_ROW)); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + value->data[0].v_pointer = v_object; +#line 570 "VideoTable.c" + } else { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + value->data[0].v_pointer = NULL; +#line 574 "VideoTable.c" + } +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (old) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_row_unref (old); +#line 580 "VideoTable.c" + } +} + + +static void video_row_class_init (VideoRowClass * klass) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_row_parent_class = g_type_class_peek_parent (klass); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + ((VideoRowClass *) klass)->finalize = video_row_finalize; +#line 590 "VideoTable.c" +} + + +static void video_row_instance_init (VideoRow * self) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + self->ref_count = 1; +#line 597 "VideoTable.c" +} + + +static void video_row_finalize (VideoRow* obj) { + VideoRow * self; +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_VIDEO_ROW, VideoRow); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_signal_handlers_destroy (self); +#line 39 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (self->filepath); +#line 49 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (self->md5); +#line 52 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (self->title); +#line 53 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (self->backlinks); +#line 56 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (self->comment); +#line 617 "VideoTable.c" +} + + +GType video_row_get_type (void) { + static volatile gsize video_row_type_id__volatile = 0; + if (g_once_init_enter (&video_row_type_id__volatile)) { + static const GTypeValueTable g_define_type_value_table = { value_video_row_init, value_video_row_free_value, value_video_row_copy_value, value_video_row_peek_pointer, "p", value_video_row_collect_value, "p", value_video_row_lcopy_value }; + static const GTypeInfo g_define_type_info = { sizeof (VideoRowClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) video_row_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (VideoRow), 0, (GInstanceInitFunc) video_row_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 video_row_type_id; + video_row_type_id = g_type_register_fundamental (g_type_fundamental_next (), "VideoRow", &g_define_type_info, &g_define_type_fundamental_info, 0); + g_once_init_leave (&video_row_type_id__volatile, video_row_type_id); + } + return video_row_type_id__volatile; +} + + +gpointer video_row_ref (gpointer instance) { + VideoRow* self; + self = instance; +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_atomic_int_inc (&self->ref_count); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return instance; +#line 642 "VideoTable.c" +} + + +void video_row_unref (gpointer instance) { + VideoRow* self; + self = instance; +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (g_atomic_int_dec_and_test (&self->ref_count)) { +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + VIDEO_ROW_GET_CLASS (self)->finalize (self); +#line 37 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_type_free_instance ((GTypeInstance *) self); +#line 655 "VideoTable.c" + } +} + + +static VideoTable* video_table_construct (GType object_type) { + VideoTable* self = NULL; + sqlite3_stmt* stmt = NULL; + gint res = 0; + sqlite3* _tmp0_ = NULL; + sqlite3_stmt* _tmp1_ = NULL; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + sqlite3_stmt* _tmp4_ = NULL; + gint _tmp5_ = 0; + gint _tmp6_ = 0; + sqlite3_stmt* stmt2 = NULL; + gint res2 = 0; + sqlite3* _tmp8_ = NULL; + sqlite3_stmt* _tmp9_ = NULL; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + sqlite3_stmt* _tmp12_ = NULL; + gint _tmp13_ = 0; + gint _tmp14_ = 0; +#line 62 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + self = (VideoTable*) database_table_construct (object_type); +#line 64 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = database_table_db; +#line 64 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = sqlite3_prepare_v2 (_tmp0_, "CREATE TABLE IF NOT EXISTS VideoTable (" "id INTEGER PRIMARY KEY, " "filename TEXT UNIQUE NOT NULL, " "width INTEGER, " "height INTEGER, " "clip_duration REAL, " "is_interpretable INTEGER, " "filesize INTEGER, " "timestamp INTEGER, " "exposure_time INTEGER, " "import_id INTEGER, " "event_id INTEGER, " "md5 TEXT, " "time_created INTEGER, " "rating INTEGER DEFAULT 0, " "title TEXT, " "backlinks TEXT, " "time_reimported INTEGER, " "flags INTEGER DEFAULT 0, " "comment TEXT " ")", -1, &_tmp1_, NULL); +#line 64 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 64 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt = _tmp1_; +#line 64 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp2_; +#line 85 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = res; +#line 85 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp3_ == SQLITE_OK, "res == Sqlite.OK"); +#line 87 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = stmt; +#line 87 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = sqlite3_step (_tmp4_); +#line 87 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp5_; +#line 88 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp6_ = res; +#line 88 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp6_ != SQLITE_DONE) { +#line 706 "VideoTable.c" + gint _tmp7_ = 0; +#line 89 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7_ = res; +#line 89 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_fatal ("VideoTable constructor", _tmp7_); +#line 712 "VideoTable.c" + } +#line 93 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp8_ = database_table_db; +#line 93 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp10_ = sqlite3_prepare_v2 (_tmp8_, "CREATE INDEX IF NOT EXISTS VideoEventIDIndex ON VideoTable (event_id)", -1, &_tmp9_, NULL); +#line 93 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt2); +#line 93 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt2 = _tmp9_; +#line 93 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res2 = _tmp10_; +#line 95 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp11_ = res2; +#line 95 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp11_ == SQLITE_OK, "res2 == Sqlite.OK"); +#line 97 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp12_ = stmt2; +#line 97 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp13_ = sqlite3_step (_tmp12_); +#line 97 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res2 = _tmp13_; +#line 98 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp14_ = res2; +#line 98 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp14_ != SQLITE_DONE) { +#line 738 "VideoTable.c" + gint _tmp15_ = 0; +#line 99 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp15_ = res2; +#line 99 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_fatal ("VideoTable constructor", _tmp15_); +#line 744 "VideoTable.c" + } +#line 101 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_set_table_name (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATABASE_TABLE, DatabaseTable), "VideoTable"); +#line 62 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt2); +#line 62 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 62 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return self; +#line 754 "VideoTable.c" +} + + +static VideoTable* video_table_new (void) { +#line 62 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return video_table_construct (TYPE_VIDEO_TABLE); +#line 761 "VideoTable.c" +} + + +static gpointer _database_table_ref0 (gpointer self) { +#line 108 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return self ? database_table_ref (self) : NULL; +#line 768 "VideoTable.c" +} + + +VideoTable* video_table_get_instance (void) { + VideoTable* result = NULL; + VideoTable* _tmp0_ = NULL; + VideoTable* _tmp2_ = NULL; + VideoTable* _tmp3_ = NULL; +#line 105 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = video_table_instance; +#line 105 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp0_ == NULL) { +#line 781 "VideoTable.c" + VideoTable* _tmp1_ = NULL; +#line 106 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = video_table_new (); +#line 106 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _database_table_unref0 (video_table_instance); +#line 106 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_table_instance = _tmp1_; +#line 789 "VideoTable.c" + } +#line 108 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = video_table_instance; +#line 108 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = _database_table_ref0 (_tmp2_); +#line 108 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = _tmp3_; +#line 108 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 799 "VideoTable.c" +} + + +void video_table_add (VideoTable* self, VideoRow* video_row, VideoID* result, GError** error) { + sqlite3_stmt* stmt = NULL; + gint res = 0; + sqlite3* _tmp0_ = NULL; + sqlite3_stmt* _tmp1_ = NULL; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + gulong time_created = 0UL; + gulong _tmp4_ = 0UL; + sqlite3_stmt* _tmp5_ = NULL; + VideoRow* _tmp6_ = NULL; + const gchar* _tmp7_ = NULL; + gchar* _tmp8_ = NULL; + GDestroyNotify _tmp9_ = NULL; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + sqlite3_stmt* _tmp12_ = NULL; + VideoRow* _tmp13_ = NULL; + gint _tmp14_ = 0; + gint _tmp15_ = 0; + gint _tmp16_ = 0; + sqlite3_stmt* _tmp17_ = NULL; + VideoRow* _tmp18_ = NULL; + gint _tmp19_ = 0; + gint _tmp20_ = 0; + gint _tmp21_ = 0; + sqlite3_stmt* _tmp22_ = NULL; + VideoRow* _tmp23_ = NULL; + gdouble _tmp24_ = 0.0; + gint _tmp25_ = 0; + gint _tmp26_ = 0; + gint _tmp27_ = 0; + VideoRow* _tmp28_ = NULL; + gboolean _tmp29_ = FALSE; + sqlite3_stmt* _tmp30_ = NULL; + gint _tmp31_ = 0; + gint _tmp32_ = 0; + sqlite3_stmt* _tmp33_ = NULL; + VideoRow* _tmp34_ = NULL; + gint64 _tmp35_ = 0LL; + gint _tmp36_ = 0; + gint _tmp37_ = 0; + sqlite3_stmt* _tmp38_ = NULL; + VideoRow* _tmp39_ = NULL; + time_t _tmp40_ = 0; + gint _tmp41_ = 0; + gint _tmp42_ = 0; + sqlite3_stmt* _tmp43_ = NULL; + VideoRow* _tmp44_ = NULL; + time_t _tmp45_ = 0; + gint _tmp46_ = 0; + gint _tmp47_ = 0; + sqlite3_stmt* _tmp48_ = NULL; + VideoRow* _tmp49_ = NULL; + ImportID _tmp50_ = {0}; + gint64 _tmp51_ = 0LL; + gint _tmp52_ = 0; + gint _tmp53_ = 0; + sqlite3_stmt* _tmp54_ = NULL; + gint _tmp55_ = 0; + gint _tmp56_ = 0; + sqlite3_stmt* _tmp57_ = NULL; + VideoRow* _tmp58_ = NULL; + const gchar* _tmp59_ = NULL; + gchar* _tmp60_ = NULL; + GDestroyNotify _tmp61_ = NULL; + gint _tmp62_ = 0; + gint _tmp63_ = 0; + sqlite3_stmt* _tmp64_ = NULL; + gulong _tmp65_ = 0UL; + gint _tmp66_ = 0; + gint _tmp67_ = 0; + sqlite3_stmt* _tmp68_ = NULL; + VideoRow* _tmp69_ = NULL; + const gchar* _tmp70_ = NULL; + gchar* _tmp71_ = NULL; + GDestroyNotify _tmp72_ = NULL; + gint _tmp73_ = 0; + gint _tmp74_ = 0; + sqlite3_stmt* _tmp75_ = NULL; + VideoRow* _tmp76_ = NULL; + const gchar* _tmp77_ = NULL; + gchar* _tmp78_ = NULL; + GDestroyNotify _tmp79_ = NULL; + gint _tmp80_ = 0; + gint _tmp81_ = 0; + sqlite3_stmt* _tmp82_ = NULL; + gint _tmp83_ = 0; + gint _tmp84_ = 0; + VideoRow* _tmp87_ = NULL; + sqlite3* _tmp88_ = NULL; + gint64 _tmp89_ = 0LL; + VideoRow* _tmp90_ = NULL; + VideoRow* _tmp91_ = NULL; + gulong _tmp92_ = 0UL; + VideoRow* _tmp93_ = NULL; + VideoRow* _tmp94_ = NULL; + VideoID _tmp95_ = {0}; + GError * _inner_error_ = NULL; +#line 113 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_TABLE (self)); +#line 113 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_ROW (video_row)); +#line 115 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = database_table_db; +#line 115 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = sqlite3_prepare_v2 (_tmp0_, "INSERT INTO VideoTable (filename, width, height, clip_duration, is_int" \ +"erpretable, " "filesize, timestamp, exposure_time, import_id, event_id, md5, time_cre" \ +"ated, title, comment) " "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", -1, &_tmp1_, NULL); +#line 115 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 115 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt = _tmp1_; +#line 115 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp2_; +#line 120 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = res; +#line 120 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp3_ == SQLITE_OK, "res == Sqlite.OK"); +#line 122 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = now_sec (); +#line 122 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + time_created = _tmp4_; +#line 124 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = stmt; +#line 124 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp6_ = video_row; +#line 124 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7_ = _tmp6_->filepath; +#line 124 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp8_ = g_strdup (_tmp7_); +#line 124 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp9_ = g_free; +#line 124 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp10_ = sqlite3_bind_text (_tmp5_, 1, _tmp8_, -1, _tmp9_); +#line 124 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp10_; +#line 125 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp11_ = res; +#line 125 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp11_ == SQLITE_OK, "res == Sqlite.OK"); +#line 126 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp12_ = stmt; +#line 126 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp13_ = video_row; +#line 126 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp14_ = _tmp13_->width; +#line 126 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp15_ = sqlite3_bind_int (_tmp12_, 2, _tmp14_); +#line 126 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp15_; +#line 127 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp16_ = res; +#line 127 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp16_ == SQLITE_OK, "res == Sqlite.OK"); +#line 128 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp17_ = stmt; +#line 128 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp18_ = video_row; +#line 128 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp19_ = _tmp18_->height; +#line 128 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp20_ = sqlite3_bind_int (_tmp17_, 3, _tmp19_); +#line 128 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp20_; +#line 129 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp21_ = res; +#line 129 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp21_ == SQLITE_OK, "res == Sqlite.OK"); +#line 130 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp22_ = stmt; +#line 130 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp23_ = video_row; +#line 130 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp24_ = _tmp23_->clip_duration; +#line 130 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp25_ = sqlite3_bind_double (_tmp22_, 4, _tmp24_); +#line 130 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp25_; +#line 131 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp26_ = res; +#line 131 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp26_ == SQLITE_OK, "res == Sqlite.OK"); +#line 132 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp28_ = video_row; +#line 132 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp29_ = _tmp28_->is_interpretable; +#line 132 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp29_) { +#line 132 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp27_ = 1; +#line 992 "VideoTable.c" + } else { +#line 132 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp27_ = 0; +#line 996 "VideoTable.c" + } +#line 132 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp30_ = stmt; +#line 132 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp31_ = sqlite3_bind_int (_tmp30_, 5, _tmp27_); +#line 132 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp31_; +#line 133 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp32_ = res; +#line 133 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp32_ == SQLITE_OK, "res == Sqlite.OK"); +#line 134 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp33_ = stmt; +#line 134 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp34_ = video_row; +#line 134 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp35_ = _tmp34_->filesize; +#line 134 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp36_ = sqlite3_bind_int64 (_tmp33_, 6, _tmp35_); +#line 134 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp36_; +#line 135 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp37_ = res; +#line 135 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp37_ == SQLITE_OK, "res == Sqlite.OK"); +#line 136 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp38_ = stmt; +#line 136 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp39_ = video_row; +#line 136 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp40_ = _tmp39_->timestamp; +#line 136 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp41_ = sqlite3_bind_int64 (_tmp38_, 7, (gint64) _tmp40_); +#line 136 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp41_; +#line 137 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp42_ = res; +#line 137 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp42_ == SQLITE_OK, "res == Sqlite.OK"); +#line 138 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp43_ = stmt; +#line 138 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp44_ = video_row; +#line 138 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp45_ = _tmp44_->exposure_time; +#line 138 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp46_ = sqlite3_bind_int64 (_tmp43_, 8, (gint64) _tmp45_); +#line 138 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp46_; +#line 139 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp47_ = res; +#line 139 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp47_ == SQLITE_OK, "res == Sqlite.OK"); +#line 140 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp48_ = stmt; +#line 140 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp49_ = video_row; +#line 140 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp50_ = _tmp49_->import_id; +#line 140 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp51_ = _tmp50_.id; +#line 140 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp52_ = sqlite3_bind_int64 (_tmp48_, 9, _tmp51_); +#line 140 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp52_; +#line 141 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp53_ = res; +#line 141 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp53_ == SQLITE_OK, "res == Sqlite.OK"); +#line 142 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp54_ = stmt; +#line 142 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp55_ = sqlite3_bind_int64 (_tmp54_, 10, EVENT_ID_INVALID); +#line 142 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp55_; +#line 143 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp56_ = res; +#line 143 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp56_ == SQLITE_OK, "res == Sqlite.OK"); +#line 144 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp57_ = stmt; +#line 144 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp58_ = video_row; +#line 144 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp59_ = _tmp58_->md5; +#line 144 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp60_ = g_strdup (_tmp59_); +#line 144 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp61_ = g_free; +#line 144 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp62_ = sqlite3_bind_text (_tmp57_, 11, _tmp60_, -1, _tmp61_); +#line 144 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp62_; +#line 145 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp63_ = res; +#line 145 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp63_ == SQLITE_OK, "res == Sqlite.OK"); +#line 146 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp64_ = stmt; +#line 146 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp65_ = time_created; +#line 146 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp66_ = sqlite3_bind_int64 (_tmp64_, 12, (gint64) _tmp65_); +#line 146 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp66_; +#line 147 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp67_ = res; +#line 147 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp67_ == SQLITE_OK, "res == Sqlite.OK"); +#line 148 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp68_ = stmt; +#line 148 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp69_ = video_row; +#line 148 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp70_ = _tmp69_->title; +#line 148 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp71_ = g_strdup (_tmp70_); +#line 148 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp72_ = g_free; +#line 148 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp73_ = sqlite3_bind_text (_tmp68_, 13, _tmp71_, -1, _tmp72_); +#line 148 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp73_; +#line 149 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp74_ = res; +#line 149 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp74_ == SQLITE_OK, "res == Sqlite.OK"); +#line 150 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp75_ = stmt; +#line 150 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp76_ = video_row; +#line 150 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp77_ = _tmp76_->comment; +#line 150 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp78_ = g_strdup (_tmp77_); +#line 150 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp79_ = g_free; +#line 150 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp80_ = sqlite3_bind_text (_tmp75_, 14, _tmp78_, -1, _tmp79_); +#line 150 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp80_; +#line 151 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp81_ = res; +#line 151 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp81_ == SQLITE_OK, "res == Sqlite.OK"); +#line 153 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp82_ = stmt; +#line 153 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp83_ = sqlite3_step (_tmp82_); +#line 153 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp83_; +#line 154 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp84_ = res; +#line 154 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp84_ != SQLITE_DONE) { +#line 1152 "VideoTable.c" + gint _tmp85_ = 0; +#line 155 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp85_ = res; +#line 155 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp85_ != SQLITE_CONSTRAINT) { +#line 1158 "VideoTable.c" + gint _tmp86_ = 0; +#line 156 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp86_ = res; +#line 156 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_throw_error ("VideoTable.add", _tmp86_, &_inner_error_); +#line 156 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 156 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 156 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_propagate_error (error, _inner_error_); +#line 156 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 156 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 1174 "VideoTable.c" + } else { +#line 156 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 156 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 156 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_clear_error (&_inner_error_); +#line 156 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 1184 "VideoTable.c" + } + } + } + } +#line 160 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp87_ = video_row; +#line 160 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp88_ = database_table_db; +#line 160 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp89_ = sqlite3_last_insert_rowid (_tmp88_); +#line 160 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_id_init (&_tmp87_->video_id, _tmp89_); +#line 161 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp90_ = video_row; +#line 161 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + event_id_init (&_tmp90_->event_id, EVENT_ID_INVALID); +#line 162 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp91_ = video_row; +#line 162 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp92_ = time_created; +#line 162 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp91_->time_created = (time_t) _tmp92_; +#line 163 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp93_ = video_row; +#line 163 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp93_->flags = (guint64) 0; +#line 165 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp94_ = video_row; +#line 165 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp95_ = _tmp94_->video_id; +#line 165 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + *result = _tmp95_; +#line 165 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 165 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 1221 "VideoTable.c" +} + + +gboolean video_table_drop_event (VideoTable* self, EventID* event_id) { + gboolean result = FALSE; + sqlite3_stmt* stmt = NULL; + gint res = 0; + sqlite3* _tmp0_ = NULL; + sqlite3_stmt* _tmp1_ = NULL; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + sqlite3_stmt* _tmp4_ = NULL; + gint _tmp5_ = 0; + gint _tmp6_ = 0; + sqlite3_stmt* _tmp7_ = NULL; + EventID _tmp8_ = {0}; + gint64 _tmp9_ = 0LL; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + sqlite3_stmt* _tmp12_ = NULL; + gint _tmp13_ = 0; + gint _tmp14_ = 0; +#line 168 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (IS_VIDEO_TABLE (self), FALSE); +#line 168 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (event_id != NULL, FALSE); +#line 170 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = database_table_db; +#line 170 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = sqlite3_prepare_v2 (_tmp0_, "UPDATE VideoTable SET event_id = ? WHERE event_id = ?", -1, &_tmp1_, NULL); +#line 170 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 170 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt = _tmp1_; +#line 170 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp2_; +#line 171 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = res; +#line 171 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp3_ == SQLITE_OK, "res == Sqlite.OK"); +#line 173 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = stmt; +#line 173 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = sqlite3_bind_int64 (_tmp4_, 1, EVENT_ID_INVALID); +#line 173 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp5_; +#line 174 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp6_ = res; +#line 174 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp6_ == SQLITE_OK, "res == Sqlite.OK"); +#line 175 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7_ = stmt; +#line 175 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp8_ = *event_id; +#line 175 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp9_ = _tmp8_.id; +#line 175 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp10_ = sqlite3_bind_int64 (_tmp7_, 2, _tmp9_); +#line 175 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp10_; +#line 176 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp11_ = res; +#line 176 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp11_ == SQLITE_OK, "res == Sqlite.OK"); +#line 178 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp12_ = stmt; +#line 178 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp13_ = sqlite3_step (_tmp12_); +#line 178 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp13_; +#line 179 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp14_ = res; +#line 179 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp14_ != SQLITE_DONE) { +#line 1296 "VideoTable.c" + gint _tmp15_ = 0; +#line 180 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp15_ = res; +#line 180 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_fatal ("VideoTable.drop_event", _tmp15_); +#line 182 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = FALSE; +#line 182 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 182 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 1308 "VideoTable.c" + } +#line 185 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = TRUE; +#line 185 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 185 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 1316 "VideoTable.c" +} + + +VideoRow* video_table_get_row (VideoTable* self, VideoID* video_id) { + VideoRow* result = NULL; + sqlite3_stmt* stmt = NULL; + gint res = 0; + sqlite3* _tmp0_ = NULL; + sqlite3_stmt* _tmp1_ = NULL; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + sqlite3_stmt* _tmp4_ = NULL; + VideoID _tmp5_ = {0}; + gint64 _tmp6_ = 0LL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + sqlite3_stmt* _tmp9_ = NULL; + gint _tmp10_ = 0; + VideoRow* row = NULL; + VideoRow* _tmp11_ = NULL; + VideoRow* _tmp12_ = NULL; + VideoID _tmp13_ = {0}; + VideoRow* _tmp14_ = NULL; + sqlite3_stmt* _tmp15_ = NULL; + const gchar* _tmp16_ = NULL; + gchar* _tmp17_ = NULL; + VideoRow* _tmp18_ = NULL; + sqlite3_stmt* _tmp19_ = NULL; + gint _tmp20_ = 0; + VideoRow* _tmp21_ = NULL; + sqlite3_stmt* _tmp22_ = NULL; + gint _tmp23_ = 0; + VideoRow* _tmp24_ = NULL; + sqlite3_stmt* _tmp25_ = NULL; + gdouble _tmp26_ = 0.0; + VideoRow* _tmp27_ = NULL; + sqlite3_stmt* _tmp28_ = NULL; + gint _tmp29_ = 0; + VideoRow* _tmp30_ = NULL; + sqlite3_stmt* _tmp31_ = NULL; + gint64 _tmp32_ = 0LL; + VideoRow* _tmp33_ = NULL; + sqlite3_stmt* _tmp34_ = NULL; + gint64 _tmp35_ = 0LL; + VideoRow* _tmp36_ = NULL; + sqlite3_stmt* _tmp37_ = NULL; + gint64 _tmp38_ = 0LL; + VideoRow* _tmp39_ = NULL; + sqlite3_stmt* _tmp40_ = NULL; + gint64 _tmp41_ = 0LL; + VideoRow* _tmp42_ = NULL; + sqlite3_stmt* _tmp43_ = NULL; + gint64 _tmp44_ = 0LL; + VideoRow* _tmp45_ = NULL; + sqlite3_stmt* _tmp46_ = NULL; + const gchar* _tmp47_ = NULL; + gchar* _tmp48_ = NULL; + VideoRow* _tmp49_ = NULL; + sqlite3_stmt* _tmp50_ = NULL; + gint64 _tmp51_ = 0LL; + VideoRow* _tmp52_ = NULL; + sqlite3_stmt* _tmp53_ = NULL; + gint _tmp54_ = 0; + Rating _tmp55_ = 0; + VideoRow* _tmp56_ = NULL; + sqlite3_stmt* _tmp57_ = NULL; + const gchar* _tmp58_ = NULL; + gchar* _tmp59_ = NULL; + VideoRow* _tmp60_ = NULL; + sqlite3_stmt* _tmp61_ = NULL; + const gchar* _tmp62_ = NULL; + gchar* _tmp63_ = NULL; + VideoRow* _tmp64_ = NULL; + sqlite3_stmt* _tmp65_ = NULL; + gint64 _tmp66_ = 0LL; + VideoRow* _tmp67_ = NULL; + sqlite3_stmt* _tmp68_ = NULL; + gint64 _tmp69_ = 0LL; + VideoRow* _tmp70_ = NULL; + sqlite3_stmt* _tmp71_ = NULL; + const gchar* _tmp72_ = NULL; + gchar* _tmp73_ = NULL; +#line 188 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (IS_VIDEO_TABLE (self), NULL); +#line 188 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (video_id != NULL, NULL); +#line 190 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = database_table_db; +#line 190 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = sqlite3_prepare_v2 (_tmp0_, "SELECT filename, width, height, clip_duration, is_interpretable, files" \ +"ize, timestamp, " "exposure_time, import_id, event_id, md5, time_created, rating, title, " \ +"backlinks, " "time_reimported, flags, comment FROM VideoTable WHERE id=?", -1, &_tmp1_, NULL); +#line 190 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 190 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt = _tmp1_; +#line 190 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp2_; +#line 195 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = res; +#line 195 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp3_ == SQLITE_OK, "res == Sqlite.OK"); +#line 197 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = stmt; +#line 197 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = *video_id; +#line 197 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp6_ = _tmp5_.id; +#line 197 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7_ = sqlite3_bind_int64 (_tmp4_, 1, _tmp6_); +#line 197 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp7_; +#line 198 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp8_ = res; +#line 198 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp8_ == SQLITE_OK, "res == Sqlite.OK"); +#line 200 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp9_ = stmt; +#line 200 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp10_ = sqlite3_step (_tmp9_); +#line 200 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp10_ != SQLITE_ROW) { +#line 201 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = NULL; +#line 201 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 201 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 1443 "VideoTable.c" + } +#line 203 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp11_ = video_row_new (); +#line 203 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + row = _tmp11_; +#line 204 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp12_ = row; +#line 204 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp13_ = *video_id; +#line 204 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp12_->video_id = _tmp13_; +#line 205 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp14_ = row; +#line 205 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp15_ = stmt; +#line 205 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp16_ = sqlite3_column_text (_tmp15_, 0); +#line 205 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp17_ = g_strdup (_tmp16_); +#line 205 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (_tmp14_->filepath); +#line 205 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp14_->filepath = _tmp17_; +#line 206 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp18_ = row; +#line 206 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp19_ = stmt; +#line 206 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp20_ = sqlite3_column_int (_tmp19_, 1); +#line 206 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp18_->width = _tmp20_; +#line 207 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp21_ = row; +#line 207 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp22_ = stmt; +#line 207 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp23_ = sqlite3_column_int (_tmp22_, 2); +#line 207 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp21_->height = _tmp23_; +#line 208 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp24_ = row; +#line 208 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp25_ = stmt; +#line 208 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp26_ = sqlite3_column_double (_tmp25_, 3); +#line 208 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp24_->clip_duration = _tmp26_; +#line 209 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp27_ = row; +#line 209 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp28_ = stmt; +#line 209 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp29_ = sqlite3_column_int (_tmp28_, 4); +#line 209 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp27_->is_interpretable = _tmp29_ == 1; +#line 210 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp30_ = row; +#line 210 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp31_ = stmt; +#line 210 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp32_ = sqlite3_column_int64 (_tmp31_, 5); +#line 210 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp30_->filesize = _tmp32_; +#line 211 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp33_ = row; +#line 211 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp34_ = stmt; +#line 211 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp35_ = sqlite3_column_int64 (_tmp34_, 6); +#line 211 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp33_->timestamp = (time_t) _tmp35_; +#line 212 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp36_ = row; +#line 212 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp37_ = stmt; +#line 212 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp38_ = sqlite3_column_int64 (_tmp37_, 7); +#line 212 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp36_->exposure_time = (time_t) _tmp38_; +#line 213 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp39_ = row; +#line 213 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp40_ = stmt; +#line 213 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp41_ = sqlite3_column_int64 (_tmp40_, 8); +#line 213 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp39_->import_id.id = _tmp41_; +#line 214 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp42_ = row; +#line 214 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp43_ = stmt; +#line 214 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp44_ = sqlite3_column_int64 (_tmp43_, 9); +#line 214 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp42_->event_id.id = _tmp44_; +#line 215 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp45_ = row; +#line 215 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp46_ = stmt; +#line 215 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp47_ = sqlite3_column_text (_tmp46_, 10); +#line 215 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp48_ = g_strdup (_tmp47_); +#line 215 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (_tmp45_->md5); +#line 215 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp45_->md5 = _tmp48_; +#line 216 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp49_ = row; +#line 216 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp50_ = stmt; +#line 216 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp51_ = sqlite3_column_int64 (_tmp50_, 11); +#line 216 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp49_->time_created = (time_t) _tmp51_; +#line 217 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp52_ = row; +#line 217 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp53_ = stmt; +#line 217 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp54_ = sqlite3_column_int (_tmp53_, 12); +#line 217 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp55_ = rating_unserialize (_tmp54_); +#line 217 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp52_->rating = _tmp55_; +#line 218 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp56_ = row; +#line 218 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp57_ = stmt; +#line 218 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp58_ = sqlite3_column_text (_tmp57_, 13); +#line 218 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp59_ = g_strdup (_tmp58_); +#line 218 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (_tmp56_->title); +#line 218 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp56_->title = _tmp59_; +#line 219 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp60_ = row; +#line 219 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp61_ = stmt; +#line 219 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp62_ = sqlite3_column_text (_tmp61_, 14); +#line 219 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp63_ = g_strdup (_tmp62_); +#line 219 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (_tmp60_->backlinks); +#line 219 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp60_->backlinks = _tmp63_; +#line 220 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp64_ = row; +#line 220 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp65_ = stmt; +#line 220 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp66_ = sqlite3_column_int64 (_tmp65_, 15); +#line 220 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp64_->time_reimported = (time_t) _tmp66_; +#line 221 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp67_ = row; +#line 221 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp68_ = stmt; +#line 221 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp69_ = sqlite3_column_int64 (_tmp68_, 16); +#line 221 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp67_->flags = (guint64) _tmp69_; +#line 222 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp70_ = row; +#line 222 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp71_ = stmt; +#line 222 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp72_ = sqlite3_column_text (_tmp71_, 17); +#line 222 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp73_ = g_strdup (_tmp72_); +#line 222 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (_tmp70_->comment); +#line 222 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp70_->comment = _tmp73_; +#line 224 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = row; +#line 224 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 224 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 1627 "VideoTable.c" +} + + +GeeArrayList* video_table_get_all (VideoTable* self) { + GeeArrayList* result = NULL; + sqlite3_stmt* stmt = NULL; + gint res = 0; + sqlite3* _tmp0_ = NULL; + sqlite3_stmt* _tmp1_ = NULL; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + GeeArrayList* all = NULL; + GeeArrayList* _tmp4_ = NULL; +#line 227 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (IS_VIDEO_TABLE (self), NULL); +#line 229 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = database_table_db; +#line 229 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = sqlite3_prepare_v2 (_tmp0_, "SELECT id, filename, width, height, clip_duration, is_interpretable, f" \ +"ilesize, " "timestamp, exposure_time, import_id, event_id, md5, time_created, rati" \ +"ng, title, " "backlinks, time_reimported, flags, comment FROM VideoTable", -1, &_tmp1_, NULL); +#line 229 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 229 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt = _tmp1_; +#line 229 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp2_; +#line 234 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = res; +#line 234 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp3_ == SQLITE_OK, "res == Sqlite.OK"); +#line 236 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = gee_array_list_new (TYPE_VIDEO_ROW, (GBoxedCopyFunc) video_row_ref, video_row_unref, NULL, NULL, NULL); +#line 236 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + all = _tmp4_; +#line 238 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + while (TRUE) { +#line 1663 "VideoTable.c" + sqlite3_stmt* _tmp5_ = NULL; + gint _tmp6_ = 0; + gint _tmp7_ = 0; + VideoRow* row = NULL; + VideoRow* _tmp8_ = NULL; + VideoRow* _tmp9_ = NULL; + sqlite3_stmt* _tmp10_ = NULL; + gint64 _tmp11_ = 0LL; + VideoRow* _tmp12_ = NULL; + sqlite3_stmt* _tmp13_ = NULL; + const gchar* _tmp14_ = NULL; + gchar* _tmp15_ = NULL; + VideoRow* _tmp16_ = NULL; + sqlite3_stmt* _tmp17_ = NULL; + gint _tmp18_ = 0; + VideoRow* _tmp19_ = NULL; + sqlite3_stmt* _tmp20_ = NULL; + gint _tmp21_ = 0; + VideoRow* _tmp22_ = NULL; + sqlite3_stmt* _tmp23_ = NULL; + gdouble _tmp24_ = 0.0; + VideoRow* _tmp25_ = NULL; + sqlite3_stmt* _tmp26_ = NULL; + gint _tmp27_ = 0; + VideoRow* _tmp28_ = NULL; + sqlite3_stmt* _tmp29_ = NULL; + gint64 _tmp30_ = 0LL; + VideoRow* _tmp31_ = NULL; + sqlite3_stmt* _tmp32_ = NULL; + gint64 _tmp33_ = 0LL; + VideoRow* _tmp34_ = NULL; + sqlite3_stmt* _tmp35_ = NULL; + gint64 _tmp36_ = 0LL; + VideoRow* _tmp37_ = NULL; + sqlite3_stmt* _tmp38_ = NULL; + gint64 _tmp39_ = 0LL; + VideoRow* _tmp40_ = NULL; + sqlite3_stmt* _tmp41_ = NULL; + gint64 _tmp42_ = 0LL; + VideoRow* _tmp43_ = NULL; + sqlite3_stmt* _tmp44_ = NULL; + const gchar* _tmp45_ = NULL; + gchar* _tmp46_ = NULL; + VideoRow* _tmp47_ = NULL; + sqlite3_stmt* _tmp48_ = NULL; + gint64 _tmp49_ = 0LL; + VideoRow* _tmp50_ = NULL; + sqlite3_stmt* _tmp51_ = NULL; + gint _tmp52_ = 0; + Rating _tmp53_ = 0; + VideoRow* _tmp54_ = NULL; + sqlite3_stmt* _tmp55_ = NULL; + const gchar* _tmp56_ = NULL; + gchar* _tmp57_ = NULL; + VideoRow* _tmp58_ = NULL; + sqlite3_stmt* _tmp59_ = NULL; + const gchar* _tmp60_ = NULL; + gchar* _tmp61_ = NULL; + VideoRow* _tmp62_ = NULL; + sqlite3_stmt* _tmp63_ = NULL; + gint64 _tmp64_ = 0LL; + VideoRow* _tmp65_ = NULL; + sqlite3_stmt* _tmp66_ = NULL; + gint64 _tmp67_ = 0LL; + VideoRow* _tmp68_ = NULL; + sqlite3_stmt* _tmp69_ = NULL; + const gchar* _tmp70_ = NULL; + gchar* _tmp71_ = NULL; + GeeArrayList* _tmp72_ = NULL; + VideoRow* _tmp73_ = NULL; +#line 238 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = stmt; +#line 238 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp6_ = sqlite3_step (_tmp5_); +#line 238 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp6_; +#line 238 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7_ = res; +#line 238 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (!(_tmp7_ == SQLITE_ROW)) { +#line 238 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + break; +#line 1746 "VideoTable.c" + } +#line 239 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp8_ = video_row_new (); +#line 239 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + row = _tmp8_; +#line 240 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp9_ = row; +#line 240 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp10_ = stmt; +#line 240 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp11_ = sqlite3_column_int64 (_tmp10_, 0); +#line 240 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp9_->video_id.id = _tmp11_; +#line 241 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp12_ = row; +#line 241 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp13_ = stmt; +#line 241 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp14_ = sqlite3_column_text (_tmp13_, 1); +#line 241 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp15_ = g_strdup (_tmp14_); +#line 241 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (_tmp12_->filepath); +#line 241 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp12_->filepath = _tmp15_; +#line 242 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp16_ = row; +#line 242 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp17_ = stmt; +#line 242 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp18_ = sqlite3_column_int (_tmp17_, 2); +#line 242 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp16_->width = _tmp18_; +#line 243 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp19_ = row; +#line 243 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp20_ = stmt; +#line 243 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp21_ = sqlite3_column_int (_tmp20_, 3); +#line 243 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp19_->height = _tmp21_; +#line 244 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp22_ = row; +#line 244 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp23_ = stmt; +#line 244 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp24_ = sqlite3_column_double (_tmp23_, 4); +#line 244 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp22_->clip_duration = _tmp24_; +#line 245 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp25_ = row; +#line 245 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp26_ = stmt; +#line 245 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp27_ = sqlite3_column_int (_tmp26_, 5); +#line 245 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp25_->is_interpretable = _tmp27_ == 1; +#line 246 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp28_ = row; +#line 246 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp29_ = stmt; +#line 246 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp30_ = sqlite3_column_int64 (_tmp29_, 6); +#line 246 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp28_->filesize = _tmp30_; +#line 247 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp31_ = row; +#line 247 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp32_ = stmt; +#line 247 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp33_ = sqlite3_column_int64 (_tmp32_, 7); +#line 247 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp31_->timestamp = (time_t) _tmp33_; +#line 248 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp34_ = row; +#line 248 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp35_ = stmt; +#line 248 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp36_ = sqlite3_column_int64 (_tmp35_, 8); +#line 248 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp34_->exposure_time = (time_t) _tmp36_; +#line 249 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp37_ = row; +#line 249 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp38_ = stmt; +#line 249 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp39_ = sqlite3_column_int64 (_tmp38_, 9); +#line 249 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp37_->import_id.id = _tmp39_; +#line 250 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp40_ = row; +#line 250 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp41_ = stmt; +#line 250 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp42_ = sqlite3_column_int64 (_tmp41_, 10); +#line 250 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp40_->event_id.id = _tmp42_; +#line 251 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp43_ = row; +#line 251 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp44_ = stmt; +#line 251 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp45_ = sqlite3_column_text (_tmp44_, 11); +#line 251 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp46_ = g_strdup (_tmp45_); +#line 251 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (_tmp43_->md5); +#line 251 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp43_->md5 = _tmp46_; +#line 252 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp47_ = row; +#line 252 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp48_ = stmt; +#line 252 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp49_ = sqlite3_column_int64 (_tmp48_, 12); +#line 252 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp47_->time_created = (time_t) _tmp49_; +#line 253 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp50_ = row; +#line 253 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp51_ = stmt; +#line 253 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp52_ = sqlite3_column_int (_tmp51_, 13); +#line 253 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp53_ = rating_unserialize (_tmp52_); +#line 253 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp50_->rating = _tmp53_; +#line 254 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp54_ = row; +#line 254 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp55_ = stmt; +#line 254 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp56_ = sqlite3_column_text (_tmp55_, 14); +#line 254 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp57_ = g_strdup (_tmp56_); +#line 254 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (_tmp54_->title); +#line 254 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp54_->title = _tmp57_; +#line 255 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp58_ = row; +#line 255 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp59_ = stmt; +#line 255 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp60_ = sqlite3_column_text (_tmp59_, 15); +#line 255 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp61_ = g_strdup (_tmp60_); +#line 255 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (_tmp58_->backlinks); +#line 255 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp58_->backlinks = _tmp61_; +#line 256 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp62_ = row; +#line 256 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp63_ = stmt; +#line 256 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp64_ = sqlite3_column_int64 (_tmp63_, 16); +#line 256 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp62_->time_reimported = (time_t) _tmp64_; +#line 257 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp65_ = row; +#line 257 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp66_ = stmt; +#line 257 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp67_ = sqlite3_column_int64 (_tmp66_, 17); +#line 257 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp65_->flags = (guint64) _tmp67_; +#line 258 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp68_ = row; +#line 258 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp69_ = stmt; +#line 258 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp70_ = sqlite3_column_text (_tmp69_, 18); +#line 258 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp71_ = g_strdup (_tmp70_); +#line 258 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (_tmp68_->comment); +#line 258 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp68_->comment = _tmp71_; +#line 260 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp72_ = all; +#line 260 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp73_ = row; +#line 260 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp72_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp73_); +#line 238 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _video_row_unref0 (row); +#line 1934 "VideoTable.c" + } +#line 263 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = all; +#line 263 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 263 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 1942 "VideoTable.c" +} + + +void video_table_set_filepath (VideoTable* self, VideoID* video_id, const gchar* filepath, GError** error) { + VideoID _tmp0_ = {0}; + gint64 _tmp1_ = 0LL; + const gchar* _tmp2_ = NULL; + GError * _inner_error_ = NULL; +#line 266 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_TABLE (self)); +#line 266 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (video_id != NULL); +#line 266 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (filepath != NULL); +#line 267 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = *video_id; +#line 267 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = _tmp0_.id; +#line 267 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = filepath; +#line 267 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_update_text_by_id_2 (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATABASE_TABLE, DatabaseTable), _tmp1_, "filename", _tmp2_, &_inner_error_); +#line 267 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 267 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 267 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_propagate_error (error, _inner_error_); +#line 267 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 1973 "VideoTable.c" + } else { +#line 267 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 267 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_clear_error (&_inner_error_); +#line 267 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 1981 "VideoTable.c" + } + } +} + + +void video_table_set_title (VideoTable* self, VideoID* video_id, const gchar* new_title, GError** error) { + const gchar* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + VideoID _tmp3_ = {0}; + gint64 _tmp4_ = 0LL; + GError * _inner_error_ = NULL; +#line 270 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_TABLE (self)); +#line 270 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (video_id != NULL); +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = new_title; +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp1_ != NULL) { +#line 2001 "VideoTable.c" + const gchar* _tmp2_ = NULL; +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = new_title; +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = _tmp2_; +#line 2007 "VideoTable.c" + } else { +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = ""; +#line 2011 "VideoTable.c" + } +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = *video_id; +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = _tmp3_.id; +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_update_text_by_id_2 (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATABASE_TABLE, DatabaseTable), _tmp4_, "title", _tmp0_, &_inner_error_); +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_propagate_error (error, _inner_error_); +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2027 "VideoTable.c" + } else { +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_clear_error (&_inner_error_); +#line 271 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2035 "VideoTable.c" + } + } +} + + +void video_table_set_comment (VideoTable* self, VideoID* video_id, const gchar* new_comment, GError** error) { + const gchar* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + VideoID _tmp3_ = {0}; + gint64 _tmp4_ = 0LL; + GError * _inner_error_ = NULL; +#line 274 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_TABLE (self)); +#line 274 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (video_id != NULL); +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = new_comment; +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp1_ != NULL) { +#line 2055 "VideoTable.c" + const gchar* _tmp2_ = NULL; +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = new_comment; +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = _tmp2_; +#line 2061 "VideoTable.c" + } else { +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = ""; +#line 2065 "VideoTable.c" + } +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = *video_id; +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = _tmp3_.id; +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_update_text_by_id_2 (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATABASE_TABLE, DatabaseTable), _tmp4_, "comment", _tmp0_, &_inner_error_); +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_propagate_error (error, _inner_error_); +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2081 "VideoTable.c" + } else { +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_clear_error (&_inner_error_); +#line 275 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2089 "VideoTable.c" + } + } +} + + +void video_table_set_exposure_time (VideoTable* self, VideoID* video_id, time_t time, GError** error) { + VideoID _tmp0_ = {0}; + gint64 _tmp1_ = 0LL; + time_t _tmp2_ = 0; + GError * _inner_error_ = NULL; +#line 278 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_TABLE (self)); +#line 278 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (video_id != NULL); +#line 279 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = *video_id; +#line 279 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = _tmp0_.id; +#line 279 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = time; +#line 279 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_update_int64_by_id_2 (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATABASE_TABLE, DatabaseTable), _tmp1_, "exposure_time", (gint64) _tmp2_, &_inner_error_); +#line 279 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 279 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 279 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_propagate_error (error, _inner_error_); +#line 279 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2120 "VideoTable.c" + } else { +#line 279 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 279 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_clear_error (&_inner_error_); +#line 279 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2128 "VideoTable.c" + } + } +} + + +void video_table_set_rating (VideoTable* self, VideoID* video_id, Rating rating, GError** error) { + VideoID _tmp0_ = {0}; + gint64 _tmp1_ = 0LL; + Rating _tmp2_ = 0; + gint _tmp3_ = 0; + GError * _inner_error_ = NULL; +#line 282 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_TABLE (self)); +#line 282 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (video_id != NULL); +#line 283 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = *video_id; +#line 283 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = _tmp0_.id; +#line 283 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = rating; +#line 283 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = rating_serialize (_tmp2_); +#line 283 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_update_int64_by_id_2 (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATABASE_TABLE, DatabaseTable), _tmp1_, "rating", (gint64) _tmp3_, &_inner_error_); +#line 283 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 283 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 283 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_propagate_error (error, _inner_error_); +#line 283 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2162 "VideoTable.c" + } else { +#line 283 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 283 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_clear_error (&_inner_error_); +#line 283 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2170 "VideoTable.c" + } + } +} + + +void video_table_set_flags (VideoTable* self, VideoID* video_id, guint64 flags, GError** error) { + VideoID _tmp0_ = {0}; + gint64 _tmp1_ = 0LL; + guint64 _tmp2_ = 0ULL; + GError * _inner_error_ = NULL; +#line 286 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_TABLE (self)); +#line 286 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (video_id != NULL); +#line 287 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = *video_id; +#line 287 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = _tmp0_.id; +#line 287 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = flags; +#line 287 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_update_int64_by_id_2 (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATABASE_TABLE, DatabaseTable), _tmp1_, "flags", (gint64) _tmp2_, &_inner_error_); +#line 287 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 287 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 287 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_propagate_error (error, _inner_error_); +#line 287 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2201 "VideoTable.c" + } else { +#line 287 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 287 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_clear_error (&_inner_error_); +#line 287 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2209 "VideoTable.c" + } + } +} + + +void video_table_update_backlinks (VideoTable* self, VideoID* video_id, const gchar* backlinks, GError** error) { + const gchar* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + VideoID _tmp3_ = {0}; + gint64 _tmp4_ = 0LL; + GError * _inner_error_ = NULL; +#line 290 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_TABLE (self)); +#line 290 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (video_id != NULL); +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = backlinks; +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp1_ != NULL) { +#line 2229 "VideoTable.c" + const gchar* _tmp2_ = NULL; +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = backlinks; +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = _tmp2_; +#line 2235 "VideoTable.c" + } else { +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = ""; +#line 2239 "VideoTable.c" + } +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = *video_id; +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = _tmp3_.id; +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_update_text_by_id_2 (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATABASE_TABLE, DatabaseTable), _tmp4_, "backlinks", _tmp0_, &_inner_error_); +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_propagate_error (error, _inner_error_); +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2255 "VideoTable.c" + } else { +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_clear_error (&_inner_error_); +#line 291 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2263 "VideoTable.c" + } + } +} + + +void video_table_update_is_interpretable (VideoTable* self, VideoID* video_id, gboolean is_interpretable, GError** error) { + gint _tmp0_ = 0; + gboolean _tmp1_ = FALSE; + VideoID _tmp2_ = {0}; + gint64 _tmp3_ = 0LL; + GError * _inner_error_ = NULL; +#line 294 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_TABLE (self)); +#line 294 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (video_id != NULL); +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = is_interpretable; +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp1_) { +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = 1; +#line 2285 "VideoTable.c" + } else { +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = 0; +#line 2289 "VideoTable.c" + } +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = *video_id; +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = _tmp2_.id; +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_update_int_by_id_2 (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATABASE_TABLE, DatabaseTable), _tmp3_, "is_interpretable", _tmp0_, &_inner_error_); +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_propagate_error (error, _inner_error_); +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2305 "VideoTable.c" + } else { +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_clear_error (&_inner_error_); +#line 295 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2313 "VideoTable.c" + } + } +} + + +gboolean video_table_set_event (VideoTable* self, VideoID* video_id, EventID* event_id) { + gboolean result = FALSE; + VideoID _tmp0_ = {0}; + gint64 _tmp1_ = 0LL; + EventID _tmp2_ = {0}; + gint64 _tmp3_ = 0LL; + gboolean _tmp4_ = FALSE; +#line 298 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (IS_VIDEO_TABLE (self), FALSE); +#line 298 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (video_id != NULL, FALSE); +#line 298 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (event_id != NULL, FALSE); +#line 299 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = *video_id; +#line 299 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = _tmp0_.id; +#line 299 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = *event_id; +#line 299 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = _tmp2_.id; +#line 299 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = database_table_update_int64_by_id (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATABASE_TABLE, DatabaseTable), _tmp1_, "event_id", _tmp3_); +#line 299 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = _tmp4_; +#line 299 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 2346 "VideoTable.c" +} + + +void video_table_remove_by_file (VideoTable* self, GFile* file, GError** error) { + sqlite3_stmt* stmt = NULL; + gint res = 0; + sqlite3* _tmp0_ = NULL; + sqlite3_stmt* _tmp1_ = NULL; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + sqlite3_stmt* _tmp4_ = NULL; + GFile* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + GDestroyNotify _tmp7_ = NULL; + gint _tmp8_ = 0; + gint _tmp9_ = 0; + sqlite3_stmt* _tmp10_ = NULL; + gint _tmp11_ = 0; + gint _tmp12_ = 0; + GError * _inner_error_ = NULL; +#line 302 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_TABLE (self)); +#line 302 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (G_IS_FILE (file)); +#line 304 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = database_table_db; +#line 304 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = sqlite3_prepare_v2 (_tmp0_, "DELETE FROM VideoTable WHERE filename=?", -1, &_tmp1_, NULL); +#line 304 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 304 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt = _tmp1_; +#line 304 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp2_; +#line 305 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = res; +#line 305 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp3_ == SQLITE_OK, "res == Sqlite.OK"); +#line 307 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = stmt; +#line 307 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = file; +#line 307 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp6_ = g_file_get_path (_tmp5_); +#line 307 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7_ = g_free; +#line 307 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp8_ = sqlite3_bind_text (_tmp4_, 1, _tmp6_, -1, _tmp7_); +#line 307 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp8_; +#line 308 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp9_ = res; +#line 308 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp9_ == SQLITE_OK, "res == Sqlite.OK"); +#line 310 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp10_ = stmt; +#line 310 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp11_ = sqlite3_step (_tmp10_); +#line 310 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp11_; +#line 311 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp12_ = res; +#line 311 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp12_ != SQLITE_DONE) { +#line 2411 "VideoTable.c" + gint _tmp13_ = 0; +#line 312 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp13_ = res; +#line 312 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_throw_error ("VideoTable.remove_by_file", _tmp13_, &_inner_error_); +#line 312 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 312 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 312 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_propagate_error (error, _inner_error_); +#line 312 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 312 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2427 "VideoTable.c" + } else { +#line 312 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 312 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 312 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_clear_error (&_inner_error_); +#line 312 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2437 "VideoTable.c" + } + } + } +#line 302 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 2443 "VideoTable.c" +} + + +void video_table_remove (VideoTable* self, VideoID* videoID, GError** error) { + sqlite3_stmt* stmt = NULL; + gint res = 0; + sqlite3* _tmp0_ = NULL; + sqlite3_stmt* _tmp1_ = NULL; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + sqlite3_stmt* _tmp4_ = NULL; + VideoID _tmp5_ = {0}; + gint64 _tmp6_ = 0LL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + sqlite3_stmt* _tmp9_ = NULL; + gint _tmp10_ = 0; + gint _tmp11_ = 0; + GError * _inner_error_ = NULL; +#line 315 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_TABLE (self)); +#line 315 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (videoID != NULL); +#line 317 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = database_table_db; +#line 317 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = sqlite3_prepare_v2 (_tmp0_, "DELETE FROM VideoTable WHERE id=?", -1, &_tmp1_, NULL); +#line 317 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 317 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt = _tmp1_; +#line 317 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp2_; +#line 318 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = res; +#line 318 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp3_ == SQLITE_OK, "res == Sqlite.OK"); +#line 320 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = stmt; +#line 320 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = *videoID; +#line 320 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp6_ = _tmp5_.id; +#line 320 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7_ = sqlite3_bind_int64 (_tmp4_, 1, _tmp6_); +#line 320 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp7_; +#line 321 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp8_ = res; +#line 321 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp8_ == SQLITE_OK, "res == Sqlite.OK"); +#line 323 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp9_ = stmt; +#line 323 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp10_ = sqlite3_step (_tmp9_); +#line 323 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp10_; +#line 324 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp11_ = res; +#line 324 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp11_ != SQLITE_DONE) { +#line 2505 "VideoTable.c" + gint _tmp12_ = 0; +#line 325 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp12_ = res; +#line 325 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_throw_error ("VideoTable.remove", _tmp12_, &_inner_error_); +#line 325 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 325 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 325 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_propagate_error (error, _inner_error_); +#line 325 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 325 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2521 "VideoTable.c" + } else { +#line 325 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 325 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 325 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_clear_error (&_inner_error_); +#line 325 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2531 "VideoTable.c" + } + } + } +#line 315 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 2537 "VideoTable.c" +} + + +gboolean video_table_is_video_stored (VideoTable* self, GFile* file) { + gboolean result = FALSE; + GFile* _tmp0_ = NULL; + VideoID _tmp1_ = {0}; + gboolean _tmp2_ = FALSE; +#line 328 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (IS_VIDEO_TABLE (self), FALSE); +#line 328 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (G_IS_FILE (file), FALSE); +#line 329 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = file; +#line 329 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_table_get_id (self, _tmp0_, &_tmp1_); +#line 329 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = video_id_is_valid (&_tmp1_); +#line 329 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = _tmp2_; +#line 329 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 2560 "VideoTable.c" +} + + +void video_table_get_id (VideoTable* self, GFile* file, VideoID* result) { + sqlite3_stmt* stmt = NULL; + gint res = 0; + sqlite3* _tmp0_ = NULL; + sqlite3_stmt* _tmp1_ = NULL; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + sqlite3_stmt* _tmp4_ = NULL; + GFile* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; + GDestroyNotify _tmp7_ = NULL; + gint _tmp8_ = 0; + gint _tmp9_ = 0; + sqlite3_stmt* _tmp10_ = NULL; + gint _tmp11_ = 0; + VideoID _tmp12_ = {0}; + gint _tmp13_ = 0; +#line 332 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_TABLE (self)); +#line 332 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (G_IS_FILE (file)); +#line 334 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = database_table_db; +#line 334 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = sqlite3_prepare_v2 (_tmp0_, "SELECT ID FROM VideoTable WHERE filename=?", -1, &_tmp1_, NULL); +#line 334 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 334 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt = _tmp1_; +#line 334 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp2_; +#line 335 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = res; +#line 335 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp3_ == SQLITE_OK, "res == Sqlite.OK"); +#line 337 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = stmt; +#line 337 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = file; +#line 337 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp6_ = g_file_get_path (_tmp5_); +#line 337 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7_ = g_free; +#line 337 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp8_ = sqlite3_bind_text (_tmp4_, 1, _tmp6_, -1, _tmp7_); +#line 337 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp8_; +#line 338 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp9_ = res; +#line 338 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp9_ == SQLITE_OK, "res == Sqlite.OK"); +#line 340 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp10_ = stmt; +#line 340 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp11_ = sqlite3_step (_tmp10_); +#line 340 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp11_; +#line 342 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp13_ = res; +#line 342 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp13_ == SQLITE_ROW) { +#line 2625 "VideoTable.c" + sqlite3_stmt* _tmp14_ = NULL; + gint64 _tmp15_ = 0LL; +#line 342 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp14_ = stmt; +#line 342 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp15_ = sqlite3_column_int64 (_tmp14_, 0); +#line 342 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_id_init (&_tmp12_, _tmp15_); +#line 2634 "VideoTable.c" + } else { +#line 342 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_id_init (&_tmp12_, VIDEO_ID_INVALID); +#line 2638 "VideoTable.c" + } +#line 342 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + *result = _tmp12_; +#line 342 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 342 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 2646 "VideoTable.c" +} + + +GeeArrayList* video_table_get_videos (VideoTable* self, GError** error) { + GeeArrayList* result = NULL; + sqlite3_stmt* stmt = NULL; + gint res = 0; + sqlite3* _tmp0_ = NULL; + sqlite3_stmt* _tmp1_ = NULL; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + GeeArrayList* video_ids = NULL; + GeeArrayList* _tmp4_ = NULL; + GError * _inner_error_ = NULL; +#line 345 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (IS_VIDEO_TABLE (self), NULL); +#line 347 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = database_table_db; +#line 347 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = sqlite3_prepare_v2 (_tmp0_, "SELECT id FROM VideoTable", -1, &_tmp1_, NULL); +#line 347 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 347 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt = _tmp1_; +#line 347 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp2_; +#line 348 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = res; +#line 348 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp3_ == SQLITE_OK, "res == Sqlite.OK"); +#line 350 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = gee_array_list_new (TYPE_VIDEO_ID, (GBoxedCopyFunc) video_id_dup, video_id_free, NULL, NULL, NULL); +#line 350 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_ids = _tmp4_; +#line 2681 "VideoTable.c" + { + gboolean _tmp5_ = FALSE; +#line 351 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = TRUE; +#line 351 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + while (TRUE) { +#line 2688 "VideoTable.c" + sqlite3_stmt* _tmp6_ = NULL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + GeeArrayList* _tmp11_ = NULL; + sqlite3_stmt* _tmp12_ = NULL; + gint64 _tmp13_ = 0LL; + VideoID _tmp14_ = {0}; +#line 351 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (!_tmp5_) { +#line 2698 "VideoTable.c" + } +#line 351 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = FALSE; +#line 352 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp6_ = stmt; +#line 352 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7_ = sqlite3_step (_tmp6_); +#line 352 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp7_; +#line 353 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp8_ = res; +#line 353 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp8_ == SQLITE_DONE) { +#line 354 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + break; +#line 2714 "VideoTable.c" + } else { + gint _tmp9_ = 0; +#line 355 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp9_ = res; +#line 355 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp9_ != SQLITE_ROW) { +#line 2721 "VideoTable.c" + gint _tmp10_ = 0; +#line 356 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp10_ = res; +#line 356 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_throw_error ("VideoTable.get_videos", _tmp10_, &_inner_error_); +#line 356 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 356 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 356 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_propagate_error (error, _inner_error_); +#line 356 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_object_unref0 (video_ids); +#line 356 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 356 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return NULL; +#line 2739 "VideoTable.c" + } else { +#line 356 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_object_unref0 (video_ids); +#line 356 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 356 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 356 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_clear_error (&_inner_error_); +#line 356 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return NULL; +#line 2751 "VideoTable.c" + } + } + } + } +#line 359 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp11_ = video_ids; +#line 359 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp12_ = stmt; +#line 359 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp13_ = sqlite3_column_int64 (_tmp12_, 0); +#line 359 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_id_init (&_tmp14_, _tmp13_); +#line 359 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), &_tmp14_); +#line 2766 "VideoTable.c" + } + } +#line 362 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = video_ids; +#line 362 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 362 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 2775 "VideoTable.c" +} + + +static sqlite3_stmt* video_table_get_duplicate_stmt (VideoTable* self, GFile* file, const gchar* md5) { + sqlite3_stmt* result = NULL; + gboolean _tmp0_ = FALSE; + GFile* _tmp1_ = NULL; + gchar* sql = NULL; + gchar* _tmp3_ = NULL; + gboolean first = FALSE; + GFile* _tmp4_ = NULL; + const gchar* _tmp7_ = NULL; + sqlite3_stmt* stmt = NULL; + gint res = 0; + sqlite3* _tmp13_ = NULL; + const gchar* _tmp14_ = NULL; + sqlite3_stmt* _tmp15_ = NULL; + gint _tmp16_ = 0; + gint _tmp17_ = 0; + gint col = 0; + GFile* _tmp18_ = NULL; + const gchar* _tmp26_ = NULL; +#line 365 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (IS_VIDEO_TABLE (self), NULL); +#line 365 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail ((file == NULL) || G_IS_FILE (file), NULL); +#line 366 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = file; +#line 366 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp1_ != NULL) { +#line 366 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = TRUE; +#line 2808 "VideoTable.c" + } else { + const gchar* _tmp2_ = NULL; +#line 366 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = md5; +#line 366 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = _tmp2_ != NULL; +#line 2815 "VideoTable.c" + } +#line 366 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp0_, "file != null || md5 != null"); +#line 368 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = g_strdup ("SELECT id FROM VideoTable WHERE"); +#line 368 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + sql = _tmp3_; +#line 369 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + first = TRUE; +#line 371 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = file; +#line 371 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp4_ != NULL) { +#line 2829 "VideoTable.c" + const gchar* _tmp5_ = NULL; + gchar* _tmp6_ = NULL; +#line 372 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = sql; +#line 372 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp6_ = g_strconcat (_tmp5_, " filename=?", NULL); +#line 372 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (sql); +#line 372 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + sql = _tmp6_; +#line 373 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + first = FALSE; +#line 2842 "VideoTable.c" + } +#line 376 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7_ = md5; +#line 376 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp7_ != NULL) { +#line 2848 "VideoTable.c" + gboolean _tmp8_ = FALSE; + const gchar* _tmp11_ = NULL; + gchar* _tmp12_ = NULL; +#line 377 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp8_ = first; +#line 377 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (!_tmp8_) { +#line 2856 "VideoTable.c" + const gchar* _tmp9_ = NULL; + gchar* _tmp10_ = NULL; +#line 378 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp9_ = sql; +#line 378 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp10_ = g_strconcat (_tmp9_, " OR ", NULL); +#line 378 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (sql); +#line 378 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + sql = _tmp10_; +#line 2867 "VideoTable.c" + } +#line 380 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp11_ = sql; +#line 380 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp12_ = g_strconcat (_tmp11_, " md5=?", NULL); +#line 380 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (sql); +#line 380 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + sql = _tmp12_; +#line 2877 "VideoTable.c" + } +#line 384 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp13_ = database_table_db; +#line 384 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp14_ = sql; +#line 384 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp16_ = sqlite3_prepare_v2 (_tmp13_, _tmp14_, -1, &_tmp15_, NULL); +#line 384 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 384 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt = _tmp15_; +#line 384 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp16_; +#line 385 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp17_ = res; +#line 385 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp17_ == SQLITE_OK, "res == Sqlite.OK"); +#line 387 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + col = 1; +#line 389 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp18_ = file; +#line 389 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp18_ != NULL) { +#line 2901 "VideoTable.c" + sqlite3_stmt* _tmp19_ = NULL; + gint _tmp20_ = 0; + GFile* _tmp21_ = NULL; + gchar* _tmp22_ = NULL; + GDestroyNotify _tmp23_ = NULL; + gint _tmp24_ = 0; + gint _tmp25_ = 0; +#line 390 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp19_ = stmt; +#line 390 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp20_ = col; +#line 390 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + col = _tmp20_ + 1; +#line 390 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp21_ = file; +#line 390 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp22_ = g_file_get_path (_tmp21_); +#line 390 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp23_ = g_free; +#line 390 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp24_ = sqlite3_bind_text (_tmp19_, _tmp20_, _tmp22_, -1, _tmp23_); +#line 390 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp24_; +#line 391 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp25_ = res; +#line 391 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp25_ == SQLITE_OK, "res == Sqlite.OK"); +#line 2929 "VideoTable.c" + } +#line 394 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp26_ = md5; +#line 394 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp26_ != NULL) { +#line 2935 "VideoTable.c" + sqlite3_stmt* _tmp27_ = NULL; + gint _tmp28_ = 0; + const gchar* _tmp29_ = NULL; + gchar* _tmp30_ = NULL; + GDestroyNotify _tmp31_ = NULL; + gint _tmp32_ = 0; + gint _tmp33_ = 0; +#line 395 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp27_ = stmt; +#line 395 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp28_ = col; +#line 395 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + col = _tmp28_ + 1; +#line 395 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp29_ = md5; +#line 395 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp30_ = g_strdup (_tmp29_); +#line 395 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp31_ = g_free; +#line 395 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp32_ = sqlite3_bind_text (_tmp27_, _tmp28_, _tmp30_, -1, _tmp31_); +#line 395 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp32_; +#line 396 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp33_ = res; +#line 396 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp33_ == SQLITE_OK, "res == Sqlite.OK"); +#line 2963 "VideoTable.c" + } +#line 399 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = stmt; +#line 399 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (sql); +#line 399 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 2971 "VideoTable.c" +} + + +gboolean video_table_has_duplicate (VideoTable* self, GFile* file, const gchar* md5) { + gboolean result = FALSE; + sqlite3_stmt* stmt = NULL; + GFile* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + sqlite3_stmt* _tmp2_ = NULL; + gint res = 0; + sqlite3_stmt* _tmp3_ = NULL; + gint _tmp4_ = 0; + gint _tmp5_ = 0; +#line 402 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (IS_VIDEO_TABLE (self), FALSE); +#line 402 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail ((file == NULL) || G_IS_FILE (file), FALSE); +#line 403 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = file; +#line 403 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = md5; +#line 403 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = video_table_get_duplicate_stmt (self, _tmp0_, _tmp1_); +#line 403 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt = _tmp2_; +#line 404 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = stmt; +#line 404 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = sqlite3_step (_tmp3_); +#line 404 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp4_; +#line 406 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = res; +#line 406 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp5_ == SQLITE_DONE) { +#line 408 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = FALSE; +#line 408 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 408 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 3013 "VideoTable.c" + } else { + gint _tmp6_ = 0; +#line 409 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp6_ = res; +#line 409 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp6_ == SQLITE_ROW) { +#line 411 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = TRUE; +#line 411 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 411 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 3026 "VideoTable.c" + } else { + gint _tmp7_ = 0; +#line 413 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7_ = res; +#line 413 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_fatal ("VideoTable.has_duplicate", _tmp7_); +#line 3033 "VideoTable.c" + } + } +#line 416 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = FALSE; +#line 416 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 416 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 3042 "VideoTable.c" +} + + +static void _vala_array_add3 (VideoID** array, int* length, int* size, const VideoID* value) { +#line 426 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if ((*length) == (*size)) { +#line 426 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + *size = (*size) ? (2 * (*size)) : 4; +#line 426 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + *array = g_renew (VideoID, *array, *size); +#line 3053 "VideoTable.c" + } +#line 426 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + (*array)[(*length)++] = *value; +#line 3057 "VideoTable.c" +} + + +VideoID* video_table_get_duplicate_ids (VideoTable* self, GFile* file, const gchar* md5, int* result_length1) { + VideoID* result = NULL; + sqlite3_stmt* stmt = NULL; + GFile* _tmp0_ = NULL; + const gchar* _tmp1_ = NULL; + sqlite3_stmt* _tmp2_ = NULL; + VideoID* ids = NULL; + VideoID* _tmp3_ = NULL; + gint ids_length1 = 0; + gint _ids_size_ = 0; + gint res = 0; + sqlite3_stmt* _tmp4_ = NULL; + gint _tmp5_ = 0; + VideoID* _tmp13_ = NULL; + gint _tmp13__length1 = 0; +#line 419 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (IS_VIDEO_TABLE (self), NULL); +#line 419 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail ((file == NULL) || G_IS_FILE (file), NULL); +#line 420 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = file; +#line 420 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = md5; +#line 420 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = video_table_get_duplicate_stmt (self, _tmp0_, _tmp1_); +#line 420 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt = _tmp2_; +#line 422 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = g_new0 (VideoID, 0); +#line 422 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + ids = _tmp3_; +#line 422 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + ids_length1 = 0; +#line 422 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _ids_size_ = ids_length1; +#line 424 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = stmt; +#line 424 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = sqlite3_step (_tmp4_); +#line 424 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp5_; +#line 425 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + while (TRUE) { +#line 3104 "VideoTable.c" + gint _tmp6_ = 0; + VideoID* _tmp7_ = NULL; + gint _tmp7__length1 = 0; + sqlite3_stmt* _tmp8_ = NULL; + gint64 _tmp9_ = 0LL; + VideoID _tmp10_ = {0}; + sqlite3_stmt* _tmp11_ = NULL; + gint _tmp12_ = 0; +#line 425 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp6_ = res; +#line 425 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (!(_tmp6_ == SQLITE_ROW)) { +#line 425 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + break; +#line 3119 "VideoTable.c" + } +#line 426 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7_ = ids; +#line 426 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7__length1 = ids_length1; +#line 426 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp8_ = stmt; +#line 426 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp9_ = sqlite3_column_int64 (_tmp8_, 0); +#line 426 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_id_init (&_tmp10_, _tmp9_); +#line 426 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_array_add3 (&ids, &ids_length1, &_ids_size_, &_tmp10_); +#line 427 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp11_ = stmt; +#line 427 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp12_ = sqlite3_step (_tmp11_); +#line 427 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp12_; +#line 3139 "VideoTable.c" + } +#line 430 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp13_ = ids; +#line 430 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp13__length1 = ids_length1; +#line 430 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (result_length1) { +#line 430 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + *result_length1 = _tmp13__length1; +#line 3149 "VideoTable.c" + } +#line 430 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = _tmp13_; +#line 430 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 430 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 3157 "VideoTable.c" +} + + +GeeArrayList* video_table_get_event_source_ids (VideoTable* self, EventID* event_id) { + GeeArrayList* result = NULL; + sqlite3_stmt* stmt = NULL; + gint res = 0; + sqlite3* _tmp0_ = NULL; + sqlite3_stmt* _tmp1_ = NULL; + gint _tmp2_ = 0; + gint _tmp3_ = 0; + sqlite3_stmt* _tmp4_ = NULL; + EventID _tmp5_ = {0}; + gint64 _tmp6_ = 0LL; + gint _tmp7_ = 0; + gint _tmp8_ = 0; + GeeArrayList* _result_ = NULL; + GeeArrayList* _tmp9_ = NULL; +#line 433 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (IS_VIDEO_TABLE (self), NULL); +#line 433 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_val_if_fail (event_id != NULL, NULL); +#line 435 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = database_table_db; +#line 435 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = sqlite3_prepare_v2 (_tmp0_, "SELECT id FROM VideoTable WHERE event_id = ?", -1, &_tmp1_, NULL); +#line 435 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 435 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + stmt = _tmp1_; +#line 435 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp2_; +#line 436 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp3_ = res; +#line 436 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp3_ == SQLITE_OK, "res == Sqlite.OK"); +#line 438 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp4_ = stmt; +#line 438 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp5_ = *event_id; +#line 438 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp6_ = _tmp5_.id; +#line 438 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp7_ = sqlite3_bind_int64 (_tmp4_, 1, _tmp6_); +#line 438 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp7_; +#line 439 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp8_ = res; +#line 439 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _vala_assert (_tmp8_ == SQLITE_OK, "res == Sqlite.OK"); +#line 441 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp9_ = gee_array_list_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, NULL, NULL, NULL); +#line 441 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _result_ = _tmp9_; +#line 3212 "VideoTable.c" + { + gboolean _tmp10_ = FALSE; +#line 442 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp10_ = TRUE; +#line 442 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + while (TRUE) { +#line 3219 "VideoTable.c" + sqlite3_stmt* _tmp11_ = NULL; + gint _tmp12_ = 0; + gint _tmp13_ = 0; + GeeArrayList* _tmp16_ = NULL; + sqlite3_stmt* _tmp17_ = NULL; + gint64 _tmp18_ = 0LL; + VideoID _tmp19_ = {0}; + gchar* _tmp20_ = NULL; + gchar* _tmp21_ = NULL; +#line 442 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (!_tmp10_) { +#line 3231 "VideoTable.c" + } +#line 442 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp10_ = FALSE; +#line 443 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp11_ = stmt; +#line 443 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp12_ = sqlite3_step (_tmp11_); +#line 443 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + res = _tmp12_; +#line 444 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp13_ = res; +#line 444 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp13_ == SQLITE_DONE) { +#line 445 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + break; +#line 3247 "VideoTable.c" + } else { + gint _tmp14_ = 0; +#line 446 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp14_ = res; +#line 446 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_tmp14_ != SQLITE_ROW) { +#line 3254 "VideoTable.c" + gint _tmp15_ = 0; +#line 447 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp15_ = res; +#line 447 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_fatal ("get_event_source_ids", _tmp15_); +#line 449 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + break; +#line 3262 "VideoTable.c" + } + } +#line 452 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp16_ = _result_; +#line 452 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp17_ = stmt; +#line 452 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp18_ = sqlite3_column_int64 (_tmp17_, 0); +#line 452 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_id_init (&_tmp19_, _tmp18_); +#line 452 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp20_ = video_id_upgrade_video_id_to_source_id (&_tmp19_); +#line 452 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp21_ = _tmp20_; +#line 452 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp16_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp21_); +#line 452 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _g_free0 (_tmp21_); +#line 3281 "VideoTable.c" + } + } +#line 455 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + result = _result_; +#line 455 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _sqlite3_finalize0 (stmt); +#line 455 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return result; +#line 3290 "VideoTable.c" +} + + +void video_table_set_timestamp (VideoTable* self, VideoID* video_id, time_t timestamp, GError** error) { + VideoID _tmp0_ = {0}; + gint64 _tmp1_ = 0LL; + time_t _tmp2_ = 0; + GError * _inner_error_ = NULL; +#line 458 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (IS_VIDEO_TABLE (self)); +#line 458 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_return_if_fail (video_id != NULL); +#line 459 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp0_ = *video_id; +#line 459 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp1_ = _tmp0_.id; +#line 459 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + _tmp2_ = timestamp; +#line 459 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + database_table_update_int64_by_id_2 (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_DATABASE_TABLE, DatabaseTable), _tmp1_, "timestamp", (gint64) _tmp2_, &_inner_error_); +#line 459 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (G_UNLIKELY (_inner_error_ != NULL)) { +#line 459 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + if (_inner_error_->domain == DATABASE_ERROR) { +#line 459 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_propagate_error (error, _inner_error_); +#line 459 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 3319 "VideoTable.c" + } else { +#line 459 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); +#line 459 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + g_clear_error (&_inner_error_); +#line 459 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + return; +#line 3327 "VideoTable.c" + } + } +} + + +static void video_table_class_init (VideoTableClass * klass) { +#line 59 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + video_table_parent_class = g_type_class_peek_parent (klass); +#line 59 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + ((DatabaseTableClass *) klass)->finalize = video_table_finalize; +#line 3338 "VideoTable.c" +} + + +static void video_table_instance_init (VideoTable * self) { +} + + +static void video_table_finalize (DatabaseTable* obj) { + VideoTable * self; +#line 59 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_VIDEO_TABLE, VideoTable); +#line 59 "/home/jens/Source/shotwell/src/db/VideoTable.vala" + DATABASE_TABLE_CLASS (video_table_parent_class)->finalize (obj); +#line 3352 "VideoTable.c" +} + + +GType video_table_get_type (void) { + static volatile gsize video_table_type_id__volatile = 0; + if (g_once_init_enter (&video_table_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (VideoTableClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) video_table_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (VideoTable), 0, (GInstanceInitFunc) video_table_instance_init, NULL }; + GType video_table_type_id; + video_table_type_id = g_type_register_static (TYPE_DATABASE_TABLE, "VideoTable", &g_define_type_info, 0); + g_once_init_leave (&video_table_type_id__volatile, video_table_type_id); + } + return video_table_type_id__volatile; +} + + + |