/* FSpotRollsTable.c generated by valac 0.34.4, the Vala compiler
 * generated from FSpotRollsTable.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 <time.h>
#include <stdlib.h>
#include <string.h>
#include <sqlite3.h>


#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW (data_imports_fspot_db_fspot_roll_row_get_type ())
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLL_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW, DataImportsFSpotDbFSpotRollRow))
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLL_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW, DataImportsFSpotDbFSpotRollRowClass))
#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLL_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW))
#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLL_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW))
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLL_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW, DataImportsFSpotDbFSpotRollRowClass))

typedef struct _DataImportsFSpotDbFSpotRollRow DataImportsFSpotDbFSpotRollRow;
typedef struct _DataImportsFSpotDbFSpotRollRowClass DataImportsFSpotDbFSpotRollRowClass;
typedef struct _DataImportsFSpotDbFSpotRollRowPrivate DataImportsFSpotDbFSpotRollRowPrivate;

#define TYPE_IMPORTABLE_DATABASE_TABLE (importable_database_table_get_type ())
#define IMPORTABLE_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTable))
#define IMPORTABLE_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTableClass))
#define IS_IMPORTABLE_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IMPORTABLE_DATABASE_TABLE))
#define IS_IMPORTABLE_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IMPORTABLE_DATABASE_TABLE))
#define IMPORTABLE_DATABASE_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTableClass))

typedef struct _ImportableDatabaseTable ImportableDatabaseTable;
typedef struct _ImportableDatabaseTableClass ImportableDatabaseTableClass;
typedef struct _ImportableDatabaseTablePrivate ImportableDatabaseTablePrivate;

#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE (data_imports_fspot_db_fspot_database_table_get_type ())
#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTable))
#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTableClass))
#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE))
#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE))
#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTableClass))

typedef struct _DataImportsFSpotDbFSpotDatabaseTable DataImportsFSpotDbFSpotDatabaseTable;
typedef struct _DataImportsFSpotDbFSpotDatabaseTableClass DataImportsFSpotDbFSpotDatabaseTableClass;
typedef struct _DataImportsFSpotDbFSpotDatabaseTablePrivate DataImportsFSpotDbFSpotDatabaseTablePrivate;

#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TABLE_BEHAVIOR (data_imports_fspot_db_fspot_table_behavior_get_type ())
#define DATA_IMPORTS_FSPOT_DB_FSPOT_TABLE_BEHAVIOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TABLE_BEHAVIOR, DataImportsFSpotDbFSpotTableBehavior))
#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_TABLE_BEHAVIOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TABLE_BEHAVIOR))
#define DATA_IMPORTS_FSPOT_DB_FSPOT_TABLE_BEHAVIOR_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TABLE_BEHAVIOR, DataImportsFSpotDbFSpotTableBehaviorIface))

typedef struct _DataImportsFSpotDbFSpotTableBehavior DataImportsFSpotDbFSpotTableBehavior;
typedef struct _DataImportsFSpotDbFSpotTableBehaviorIface DataImportsFSpotDbFSpotTableBehaviorIface;

#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_TABLE (data_imports_fspot_db_fspot_rolls_table_get_type ())
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_TABLE, DataImportsFSpotDbFSpotRollsTable))
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_TABLE, DataImportsFSpotDbFSpotRollsTableClass))
#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLLS_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_TABLE))
#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLLS_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_TABLE))
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_TABLE, DataImportsFSpotDbFSpotRollsTableClass))

typedef struct _DataImportsFSpotDbFSpotRollsTable DataImportsFSpotDbFSpotRollsTable;
typedef struct _DataImportsFSpotDbFSpotRollsTableClass DataImportsFSpotDbFSpotRollsTableClass;
typedef struct _DataImportsFSpotDbFSpotRollsTablePrivate DataImportsFSpotDbFSpotRollsTablePrivate;

#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_BEHAVIOR (data_imports_fspot_db_fspot_database_behavior_get_type ())
#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_BEHAVIOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_BEHAVIOR, DataImportsFSpotDbFSpotDatabaseBehavior))
#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_BEHAVIOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_BEHAVIOR, DataImportsFSpotDbFSpotDatabaseBehaviorClass))
#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_BEHAVIOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_BEHAVIOR))
#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_BEHAVIOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_BEHAVIOR))
#define DATA_IMPORTS_FSPOT_DB_FSPOT_DATABASE_BEHAVIOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_BEHAVIOR, DataImportsFSpotDbFSpotDatabaseBehaviorClass))

typedef struct _DataImportsFSpotDbFSpotDatabaseBehavior DataImportsFSpotDbFSpotDatabaseBehavior;
typedef struct _DataImportsFSpotDbFSpotDatabaseBehaviorClass DataImportsFSpotDbFSpotDatabaseBehaviorClass;
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _sqlite3_finalize0(var) ((var == NULL) ? NULL : (var = (sqlite3_finalize (var), NULL)))
#define _g_free0(var) (var = (g_free (var), NULL))

#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V0_BEHAVIOR (data_imports_fspot_db_fspot_rolls_v0_behavior_get_type ())
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_V0_BEHAVIOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V0_BEHAVIOR, DataImportsFSpotDbFSpotRollsV0Behavior))
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_V0_BEHAVIOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V0_BEHAVIOR, DataImportsFSpotDbFSpotRollsV0BehaviorClass))
#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLLS_V0_BEHAVIOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V0_BEHAVIOR))
#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLLS_V0_BEHAVIOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V0_BEHAVIOR))
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_V0_BEHAVIOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V0_BEHAVIOR, DataImportsFSpotDbFSpotRollsV0BehaviorClass))

typedef struct _DataImportsFSpotDbFSpotRollsV0Behavior DataImportsFSpotDbFSpotRollsV0Behavior;
typedef struct _DataImportsFSpotDbFSpotRollsV0BehaviorClass DataImportsFSpotDbFSpotRollsV0BehaviorClass;
typedef struct _DataImportsFSpotDbFSpotRollsV0BehaviorPrivate DataImportsFSpotDbFSpotRollsV0BehaviorPrivate;

#define DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V5_BEHAVIOR (data_imports_fspot_db_fspot_rolls_v5_behavior_get_type ())
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_V5_BEHAVIOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V5_BEHAVIOR, DataImportsFSpotDbFSpotRollsV5Behavior))
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_V5_BEHAVIOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V5_BEHAVIOR, DataImportsFSpotDbFSpotRollsV5BehaviorClass))
#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLLS_V5_BEHAVIOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V5_BEHAVIOR))
#define DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLLS_V5_BEHAVIOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V5_BEHAVIOR))
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_V5_BEHAVIOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V5_BEHAVIOR, DataImportsFSpotDbFSpotRollsV5BehaviorClass))

typedef struct _DataImportsFSpotDbFSpotRollsV5Behavior DataImportsFSpotDbFSpotRollsV5Behavior;
typedef struct _DataImportsFSpotDbFSpotRollsV5BehaviorClass DataImportsFSpotDbFSpotRollsV5BehaviorClass;
typedef struct _DataImportsFSpotDbFSpotRollsV5BehaviorPrivate DataImportsFSpotDbFSpotRollsV5BehaviorPrivate;

struct _DataImportsFSpotDbFSpotRollRow {
	GObject parent_instance;
	DataImportsFSpotDbFSpotRollRowPrivate * priv;
	gint64 id;
	time_t time;
};

struct _DataImportsFSpotDbFSpotRollRowClass {
	GObjectClass parent_class;
};

struct _ImportableDatabaseTable {
	GTypeInstance parent_instance;
	volatile int ref_count;
	ImportableDatabaseTablePrivate * priv;
	gchar* table_name;
};

struct _ImportableDatabaseTableClass {
	GTypeClass parent_class;
	void (*finalize) (ImportableDatabaseTable *self);
};

struct _DataImportsFSpotDbFSpotTableBehaviorIface {
	GTypeInterface parent_iface;
	gchar* (*get_table_name) (DataImportsFSpotDbFSpotTableBehavior* self);
	gchar** (*list_columns) (DataImportsFSpotDbFSpotTableBehavior* self, int* result_length1);
	void (*build_row) (DataImportsFSpotDbFSpotTableBehavior* self, sqlite3_stmt* stmt, gpointer* row, gint offset);
};

struct _DataImportsFSpotDbFSpotDatabaseTable {
	ImportableDatabaseTable parent_instance;
	DataImportsFSpotDbFSpotDatabaseTablePrivate * priv;
	sqlite3* fspot_db;
	DataImportsFSpotDbFSpotTableBehavior* behavior;
};

struct _DataImportsFSpotDbFSpotDatabaseTableClass {
	ImportableDatabaseTableClass parent_class;
};

struct _DataImportsFSpotDbFSpotRollsTable {
	DataImportsFSpotDbFSpotDatabaseTable parent_instance;
	DataImportsFSpotDbFSpotRollsTablePrivate * priv;
};

struct _DataImportsFSpotDbFSpotRollsTableClass {
	DataImportsFSpotDbFSpotDatabaseTableClass 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 ()
struct _DataImportsFSpotDbFSpotRollsV0Behavior {
	GObject parent_instance;
	DataImportsFSpotDbFSpotRollsV0BehaviorPrivate * priv;
};

struct _DataImportsFSpotDbFSpotRollsV0BehaviorClass {
	GObjectClass parent_class;
};

struct _DataImportsFSpotDbFSpotRollsV5Behavior {
	GObject parent_instance;
	DataImportsFSpotDbFSpotRollsV5BehaviorPrivate * priv;
};

struct _DataImportsFSpotDbFSpotRollsV5BehaviorClass {
	GObjectClass parent_class;
};


static gpointer data_imports_fspot_db_fspot_roll_row_parent_class = NULL;
static gpointer data_imports_fspot_db_fspot_rolls_table_parent_class = NULL;
static gpointer data_imports_fspot_db_fspot_rolls_v0_behavior_parent_class = NULL;
static DataImportsFSpotDbFSpotRollsV0Behavior* data_imports_fspot_db_fspot_rolls_v0_behavior_instance;
static DataImportsFSpotDbFSpotRollsV0Behavior* data_imports_fspot_db_fspot_rolls_v0_behavior_instance = NULL;
static DataImportsFSpotDbFSpotTableBehaviorIface* data_imports_fspot_db_fspot_rolls_v0_behavior_data_imports_fspot_db_fspot_table_behavior_parent_iface = NULL;
static gpointer data_imports_fspot_db_fspot_rolls_v5_behavior_parent_class = NULL;
static DataImportsFSpotDbFSpotRollsV5Behavior* data_imports_fspot_db_fspot_rolls_v5_behavior_instance;
static DataImportsFSpotDbFSpotRollsV5Behavior* data_imports_fspot_db_fspot_rolls_v5_behavior_instance = NULL;
static DataImportsFSpotDbFSpotTableBehaviorIface* data_imports_fspot_db_fspot_rolls_v5_behavior_data_imports_fspot_db_fspot_table_behavior_parent_iface = NULL;

GType data_imports_fspot_db_fspot_roll_row_get_type (void) G_GNUC_CONST;
enum  {
	DATA_IMPORTS_FSPOT_DB_FSPOT_ROLL_ROW_DUMMY_PROPERTY
};
DataImportsFSpotDbFSpotRollRow* data_imports_fspot_db_fspot_roll_row_new (void);
DataImportsFSpotDbFSpotRollRow* data_imports_fspot_db_fspot_roll_row_construct (GType object_type);
static void data_imports_fspot_db_fspot_roll_row_finalize (GObject* obj);
gpointer importable_database_table_ref (gpointer instance);
void importable_database_table_unref (gpointer instance);
GParamSpec* param_spec_importable_database_table (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
void value_set_importable_database_table (GValue* value, gpointer v_object);
void value_take_importable_database_table (GValue* value, gpointer v_object);
gpointer value_get_importable_database_table (const GValue* value);
GType importable_database_table_get_type (void) G_GNUC_CONST;
GType data_imports_fspot_db_fspot_database_table_get_type (void) G_GNUC_CONST;
GType data_imports_fspot_db_fspot_table_behavior_get_type (void) G_GNUC_CONST;
GType data_imports_fspot_db_fspot_rolls_table_get_type (void) G_GNUC_CONST;
enum  {
	DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_TABLE_DUMMY_PROPERTY
};
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_TABLE_TABLE_NAME "Rolls"
#define DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_TABLE_TABLE_NAME_PRE_V5 "Imports"
GType data_imports_fspot_db_fspot_database_behavior_get_type (void) G_GNUC_CONST;
DataImportsFSpotDbFSpotRollsTable* data_imports_fspot_db_fspot_rolls_table_new (sqlite3* db, DataImportsFSpotDbFSpotDatabaseBehavior* db_behavior);
DataImportsFSpotDbFSpotRollsTable* data_imports_fspot_db_fspot_rolls_table_construct (GType object_type, sqlite3* db, DataImportsFSpotDbFSpotDatabaseBehavior* db_behavior);
DataImportsFSpotDbFSpotDatabaseTable* data_imports_fspot_db_fspot_database_table_construct (GType object_type, GType t_type, GBoxedCopyFunc t_dup_func, GDestroyNotify t_destroy_func, sqlite3* db);
void data_imports_fspot_db_fspot_database_table_set_behavior (DataImportsFSpotDbFSpotDatabaseTable* self, DataImportsFSpotDbFSpotTableBehavior* behavior);
DataImportsFSpotDbFSpotTableBehavior* data_imports_fspot_db_fspot_database_behavior_get_rolls_behavior (DataImportsFSpotDbFSpotDatabaseBehavior* self);
GQuark database_error_quark (void);
DataImportsFSpotDbFSpotRollRow* data_imports_fspot_db_fspot_rolls_table_get_by_id (DataImportsFSpotDbFSpotRollsTable* self, gint64 roll_id, GError** error);
gchar* data_imports_fspot_db_fspot_database_table_get_joined_column_list (DataImportsFSpotDbFSpotDatabaseTable* self, gboolean with_table);
void importable_database_table_throw_error (const gchar* method, gint res, GError** error);
void data_imports_fspot_db_fspot_table_behavior_build_row (DataImportsFSpotDbFSpotTableBehavior* self, sqlite3_stmt* stmt, gpointer* row, gint offset);
GType data_imports_fspot_db_fspot_rolls_v0_behavior_get_type (void) G_GNUC_CONST;
enum  {
	DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_V0_BEHAVIOR_DUMMY_PROPERTY
};
static DataImportsFSpotDbFSpotRollsV0Behavior* data_imports_fspot_db_fspot_rolls_v0_behavior_new (void);
static DataImportsFSpotDbFSpotRollsV0Behavior* data_imports_fspot_db_fspot_rolls_v0_behavior_construct (GType object_type);
DataImportsFSpotDbFSpotRollsV0Behavior* data_imports_fspot_db_fspot_rolls_v0_behavior_get_instance (void);
static gchar* data_imports_fspot_db_fspot_rolls_v0_behavior_real_get_table_name (DataImportsFSpotDbFSpotTableBehavior* base);
static gchar** data_imports_fspot_db_fspot_rolls_v0_behavior_real_list_columns (DataImportsFSpotDbFSpotTableBehavior* base, int* result_length1);
static void data_imports_fspot_db_fspot_rolls_v0_behavior_real_build_row (DataImportsFSpotDbFSpotTableBehavior* base, sqlite3_stmt* stmt, DataImportsFSpotDbFSpotRollRow** row, gint offset);
static void data_imports_fspot_db_fspot_rolls_v0_behavior_finalize (GObject* obj);
GType data_imports_fspot_db_fspot_rolls_v5_behavior_get_type (void) G_GNUC_CONST;
enum  {
	DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_V5_BEHAVIOR_DUMMY_PROPERTY
};
static DataImportsFSpotDbFSpotRollsV5Behavior* data_imports_fspot_db_fspot_rolls_v5_behavior_new (void);
static DataImportsFSpotDbFSpotRollsV5Behavior* data_imports_fspot_db_fspot_rolls_v5_behavior_construct (GType object_type);
DataImportsFSpotDbFSpotRollsV5Behavior* data_imports_fspot_db_fspot_rolls_v5_behavior_get_instance (void);
static gchar* data_imports_fspot_db_fspot_rolls_v5_behavior_real_get_table_name (DataImportsFSpotDbFSpotTableBehavior* base);
static gchar** data_imports_fspot_db_fspot_rolls_v5_behavior_real_list_columns (DataImportsFSpotDbFSpotTableBehavior* base, int* result_length1);
static void data_imports_fspot_db_fspot_rolls_v5_behavior_real_build_row (DataImportsFSpotDbFSpotTableBehavior* base, sqlite3_stmt* stmt, DataImportsFSpotDbFSpotRollRow** row, gint offset);
static void data_imports_fspot_db_fspot_rolls_v5_behavior_finalize (GObject* obj);


DataImportsFSpotDbFSpotRollRow* data_imports_fspot_db_fspot_roll_row_construct (GType object_type) {
	DataImportsFSpotDbFSpotRollRow * self = NULL;
#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	self = (DataImportsFSpotDbFSpotRollRow*) g_object_new (object_type, NULL);
#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return self;
#line 258 "FSpotRollsTable.c"
}


DataImportsFSpotDbFSpotRollRow* data_imports_fspot_db_fspot_roll_row_new (void) {
#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return data_imports_fspot_db_fspot_roll_row_construct (DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW);
#line 265 "FSpotRollsTable.c"
}


static void data_imports_fspot_db_fspot_roll_row_class_init (DataImportsFSpotDbFSpotRollRowClass * klass) {
#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	data_imports_fspot_db_fspot_roll_row_parent_class = g_type_class_peek_parent (klass);
#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	G_OBJECT_CLASS (klass)->finalize = data_imports_fspot_db_fspot_roll_row_finalize;
#line 274 "FSpotRollsTable.c"
}


static void data_imports_fspot_db_fspot_roll_row_instance_init (DataImportsFSpotDbFSpotRollRow * self) {
}


static void data_imports_fspot_db_fspot_roll_row_finalize (GObject* obj) {
	DataImportsFSpotDbFSpotRollRow * self;
#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW, DataImportsFSpotDbFSpotRollRow);
#line 12 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	G_OBJECT_CLASS (data_imports_fspot_db_fspot_roll_row_parent_class)->finalize (obj);
#line 288 "FSpotRollsTable.c"
}


/**
 * The value object for the "rolls" table, representing a single database row.
 */
GType data_imports_fspot_db_fspot_roll_row_get_type (void) {
	static volatile gsize data_imports_fspot_db_fspot_roll_row_type_id__volatile = 0;
	if (g_once_init_enter (&data_imports_fspot_db_fspot_roll_row_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (DataImportsFSpotDbFSpotRollRowClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) data_imports_fspot_db_fspot_roll_row_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DataImportsFSpotDbFSpotRollRow), 0, (GInstanceInitFunc) data_imports_fspot_db_fspot_roll_row_instance_init, NULL };
		GType data_imports_fspot_db_fspot_roll_row_type_id;
		data_imports_fspot_db_fspot_roll_row_type_id = g_type_register_static (G_TYPE_OBJECT, "DataImportsFSpotDbFSpotRollRow", &g_define_type_info, 0);
		g_once_init_leave (&data_imports_fspot_db_fspot_roll_row_type_id__volatile, data_imports_fspot_db_fspot_roll_row_type_id);
	}
	return data_imports_fspot_db_fspot_roll_row_type_id__volatile;
}


DataImportsFSpotDbFSpotRollsTable* data_imports_fspot_db_fspot_rolls_table_construct (GType object_type, sqlite3* db, DataImportsFSpotDbFSpotDatabaseBehavior* db_behavior) {
	DataImportsFSpotDbFSpotRollsTable* self = NULL;
	sqlite3* _tmp0_ = NULL;
	DataImportsFSpotDbFSpotDatabaseBehavior* _tmp1_ = NULL;
	DataImportsFSpotDbFSpotTableBehavior* _tmp2_ = NULL;
	DataImportsFSpotDbFSpotTableBehavior* _tmp3_ = NULL;
#line 24 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	g_return_val_if_fail (db != NULL, NULL);
#line 24 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	g_return_val_if_fail (DATA_IMPORTS_FSPOT_DB_IS_FSPOT_DATABASE_BEHAVIOR (db_behavior), NULL);
#line 25 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp0_ = db;
#line 25 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	self = (DataImportsFSpotDbFSpotRollsTable*) data_imports_fspot_db_fspot_database_table_construct (object_type, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLL_ROW, (GBoxedCopyFunc) g_object_ref, g_object_unref, _tmp0_);
#line 26 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp1_ = db_behavior;
#line 26 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp2_ = data_imports_fspot_db_fspot_database_behavior_get_rolls_behavior (_tmp1_);
#line 26 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp3_ = _tmp2_;
#line 26 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	data_imports_fspot_db_fspot_database_table_set_behavior (G_TYPE_CHECK_INSTANCE_CAST (self, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTable), _tmp3_);
#line 26 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_g_object_unref0 (_tmp3_);
#line 24 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return self;
#line 333 "FSpotRollsTable.c"
}


DataImportsFSpotDbFSpotRollsTable* data_imports_fspot_db_fspot_rolls_table_new (sqlite3* db, DataImportsFSpotDbFSpotDatabaseBehavior* db_behavior) {
#line 24 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return data_imports_fspot_db_fspot_rolls_table_construct (DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_TABLE, db, db_behavior);
#line 340 "FSpotRollsTable.c"
}


DataImportsFSpotDbFSpotRollRow* data_imports_fspot_db_fspot_rolls_table_get_by_id (DataImportsFSpotDbFSpotRollsTable* self, gint64 roll_id, GError** error) {
	DataImportsFSpotDbFSpotRollRow* result = NULL;
	sqlite3_stmt* stmt = NULL;
	DataImportsFSpotDbFSpotRollRow* row = NULL;
	gchar* column_list = NULL;
	gchar* _tmp0_ = NULL;
	gchar* sql = NULL;
	const gchar* _tmp1_ = NULL;
	const gchar* _tmp2_ = NULL;
	gchar* _tmp3_ = NULL;
	gint res = 0;
	sqlite3* _tmp4_ = NULL;
	const gchar* _tmp5_ = NULL;
	sqlite3_stmt* _tmp6_ = NULL;
	gint _tmp7_ = 0;
	gint _tmp8_ = 0;
	sqlite3_stmt* _tmp13_ = NULL;
	gint64 _tmp14_ = 0LL;
	gint _tmp15_ = 0;
	gint _tmp16_ = 0;
	sqlite3_stmt* _tmp18_ = NULL;
	gint _tmp19_ = 0;
	gint _tmp20_ = 0;
	GError * _inner_error_ = NULL;
#line 29 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	g_return_val_if_fail (DATA_IMPORTS_FSPOT_DB_IS_FSPOT_ROLLS_TABLE (self), NULL);
#line 31 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	row = NULL;
#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp0_ = data_imports_fspot_db_fspot_database_table_get_joined_column_list (G_TYPE_CHECK_INSTANCE_CAST (self, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTable), FALSE);
#line 32 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	column_list = _tmp0_;
#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp1_ = column_list;
#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp2_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_IMPORTABLE_DATABASE_TABLE, ImportableDatabaseTable)->table_name;
#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp3_ = g_strdup_printf ("SELECT %s FROM %s WHERE id=?", _tmp1_, _tmp2_);
#line 33 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	sql = _tmp3_;
#line 35 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp4_ = G_TYPE_CHECK_INSTANCE_CAST (self, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTable)->fspot_db;
#line 35 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp5_ = sql;
#line 35 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp7_ = sqlite3_prepare_v2 (_tmp4_, _tmp5_, -1, &_tmp6_, NULL);
#line 35 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_sqlite3_finalize0 (stmt);
#line 35 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	stmt = _tmp6_;
#line 35 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	res = _tmp7_;
#line 36 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp8_ = res;
#line 36 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	if (_tmp8_ != SQLITE_OK) {
#line 400 "FSpotRollsTable.c"
		const gchar* _tmp9_ = NULL;
		gchar* _tmp10_ = NULL;
		gchar* _tmp11_ = NULL;
		gint _tmp12_ = 0;
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_tmp9_ = sql;
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_tmp10_ = g_strdup_printf ("Statement failed: %s", _tmp9_);
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_tmp11_ = _tmp10_;
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_tmp12_ = res;
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		importable_database_table_throw_error (_tmp11_, _tmp12_, &_inner_error_);
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_g_free0 (_tmp11_);
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
			if (_inner_error_->domain == DATABASE_ERROR) {
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				g_propagate_error (error, _inner_error_);
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_g_free0 (sql);
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_g_free0 (column_list);
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_g_object_unref0 (row);
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_sqlite3_finalize0 (stmt);
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				return NULL;
#line 433 "FSpotRollsTable.c"
			} else {
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_g_free0 (sql);
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_g_free0 (column_list);
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_g_object_unref0 (row);
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_sqlite3_finalize0 (stmt);
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.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 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				g_clear_error (&_inner_error_);
#line 37 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				return NULL;
#line 449 "FSpotRollsTable.c"
			}
		}
	}
#line 39 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp13_ = stmt;
#line 39 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp14_ = roll_id;
#line 39 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp15_ = sqlite3_bind_int64 (_tmp13_, 1, _tmp14_);
#line 39 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	res = _tmp15_;
#line 40 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp16_ = res;
#line 40 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	if (_tmp16_ != SQLITE_OK) {
#line 465 "FSpotRollsTable.c"
		gint _tmp17_ = 0;
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_tmp17_ = res;
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		importable_database_table_throw_error ("Bind failed for roll_id", _tmp17_, &_inner_error_);
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		if (G_UNLIKELY (_inner_error_ != NULL)) {
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
			if (_inner_error_->domain == DATABASE_ERROR) {
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				g_propagate_error (error, _inner_error_);
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_g_free0 (sql);
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_g_free0 (column_list);
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_g_object_unref0 (row);
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_sqlite3_finalize0 (stmt);
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				return NULL;
#line 487 "FSpotRollsTable.c"
			} else {
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_g_free0 (sql);
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_g_free0 (column_list);
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_g_object_unref0 (row);
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				_sqlite3_finalize0 (stmt);
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.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 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				g_clear_error (&_inner_error_);
#line 41 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
				return NULL;
#line 503 "FSpotRollsTable.c"
			}
		}
	}
#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp18_ = stmt;
#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp19_ = sqlite3_step (_tmp18_);
#line 43 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	res = _tmp19_;
#line 44 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp20_ = res;
#line 44 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	if (_tmp20_ == SQLITE_ROW) {
#line 517 "FSpotRollsTable.c"
		DataImportsFSpotDbFSpotTableBehavior* _tmp21_ = NULL;
		sqlite3_stmt* _tmp22_ = NULL;
		gpointer _tmp23_ = NULL;
#line 45 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_tmp21_ = G_TYPE_CHECK_INSTANCE_CAST (self, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, DataImportsFSpotDbFSpotDatabaseTable)->behavior;
#line 45 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_tmp22_ = stmt;
#line 45 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		data_imports_fspot_db_fspot_table_behavior_build_row (_tmp21_, _tmp22_, &_tmp23_, 0);
#line 45 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_g_object_unref0 (row);
#line 45 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		row = _tmp23_;
#line 531 "FSpotRollsTable.c"
	} else {
		gint _tmp24_ = 0;
#line 46 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_tmp24_ = res;
#line 46 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		if (_tmp24_ == SQLITE_DONE) {
#line 538 "FSpotRollsTable.c"
			gint64 _tmp25_ = 0LL;
#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
			_tmp25_ = roll_id;
#line 47 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
			g_message ("FSpotRollsTable.vala:47: Could not find roll row with ID %d", (gint) _tmp25_);
#line 544 "FSpotRollsTable.c"
		}
	}
#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	result = row;
#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_g_free0 (sql);
#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_g_free0 (column_list);
#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_sqlite3_finalize0 (stmt);
#line 49 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return result;
#line 557 "FSpotRollsTable.c"
}


static void data_imports_fspot_db_fspot_rolls_table_class_init (DataImportsFSpotDbFSpotRollsTableClass * klass) {
#line 20 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	data_imports_fspot_db_fspot_rolls_table_parent_class = g_type_class_peek_parent (klass);
#line 564 "FSpotRollsTable.c"
}


static void data_imports_fspot_db_fspot_rolls_table_instance_init (DataImportsFSpotDbFSpotRollsTable * self) {
}


/**
 * This class represents the F-Spot rolls table.
 */
GType data_imports_fspot_db_fspot_rolls_table_get_type (void) {
	static volatile gsize data_imports_fspot_db_fspot_rolls_table_type_id__volatile = 0;
	if (g_once_init_enter (&data_imports_fspot_db_fspot_rolls_table_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (DataImportsFSpotDbFSpotRollsTableClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) data_imports_fspot_db_fspot_rolls_table_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DataImportsFSpotDbFSpotRollsTable), 0, (GInstanceInitFunc) data_imports_fspot_db_fspot_rolls_table_instance_init, NULL };
		GType data_imports_fspot_db_fspot_rolls_table_type_id;
		data_imports_fspot_db_fspot_rolls_table_type_id = g_type_register_static (DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_DATABASE_TABLE, "DataImportsFSpotDbFSpotRollsTable", &g_define_type_info, 0);
		g_once_init_leave (&data_imports_fspot_db_fspot_rolls_table_type_id__volatile, data_imports_fspot_db_fspot_rolls_table_type_id);
	}
	return data_imports_fspot_db_fspot_rolls_table_type_id__volatile;
}


static DataImportsFSpotDbFSpotRollsV0Behavior* data_imports_fspot_db_fspot_rolls_v0_behavior_construct (GType object_type) {
	DataImportsFSpotDbFSpotRollsV0Behavior * self = NULL;
#line 57 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	self = (DataImportsFSpotDbFSpotRollsV0Behavior*) g_object_new (object_type, NULL);
#line 57 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return self;
#line 593 "FSpotRollsTable.c"
}


static DataImportsFSpotDbFSpotRollsV0Behavior* data_imports_fspot_db_fspot_rolls_v0_behavior_new (void) {
#line 57 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return data_imports_fspot_db_fspot_rolls_v0_behavior_construct (DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V0_BEHAVIOR);
#line 600 "FSpotRollsTable.c"
}


static gpointer _g_object_ref0 (gpointer self) {
#line 63 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return self ? g_object_ref (self) : NULL;
#line 607 "FSpotRollsTable.c"
}


DataImportsFSpotDbFSpotRollsV0Behavior* data_imports_fspot_db_fspot_rolls_v0_behavior_get_instance (void) {
	DataImportsFSpotDbFSpotRollsV0Behavior* result = NULL;
	DataImportsFSpotDbFSpotRollsV0Behavior* _tmp0_ = NULL;
	DataImportsFSpotDbFSpotRollsV0Behavior* _tmp2_ = NULL;
	DataImportsFSpotDbFSpotRollsV0Behavior* _tmp3_ = NULL;
#line 61 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp0_ = data_imports_fspot_db_fspot_rolls_v0_behavior_instance;
#line 61 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	if (_tmp0_ == NULL) {
#line 620 "FSpotRollsTable.c"
		DataImportsFSpotDbFSpotRollsV0Behavior* _tmp1_ = NULL;
#line 62 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_tmp1_ = data_imports_fspot_db_fspot_rolls_v0_behavior_new ();
#line 62 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_g_object_unref0 (data_imports_fspot_db_fspot_rolls_v0_behavior_instance);
#line 62 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		data_imports_fspot_db_fspot_rolls_v0_behavior_instance = _tmp1_;
#line 628 "FSpotRollsTable.c"
	}
#line 63 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp2_ = data_imports_fspot_db_fspot_rolls_v0_behavior_instance;
#line 63 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp3_ = _g_object_ref0 (_tmp2_);
#line 63 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	result = _tmp3_;
#line 63 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return result;
#line 638 "FSpotRollsTable.c"
}


static gchar* data_imports_fspot_db_fspot_rolls_v0_behavior_real_get_table_name (DataImportsFSpotDbFSpotTableBehavior* base) {
	DataImportsFSpotDbFSpotRollsV0Behavior * self;
	gchar* result = NULL;
	gchar* _tmp0_ = NULL;
#line 66 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V0_BEHAVIOR, DataImportsFSpotDbFSpotRollsV0Behavior);
#line 67 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp0_ = g_strdup (DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_TABLE_TABLE_NAME_PRE_V5);
#line 67 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	result = _tmp0_;
#line 67 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return result;
#line 654 "FSpotRollsTable.c"
}


static gchar** data_imports_fspot_db_fspot_rolls_v0_behavior_real_list_columns (DataImportsFSpotDbFSpotTableBehavior* base, int* result_length1) {
	DataImportsFSpotDbFSpotRollsV0Behavior * self;
	gchar** result = NULL;
	gchar* _tmp0_ = NULL;
	gchar* _tmp1_ = NULL;
	gchar** _tmp2_ = NULL;
	gchar** _tmp3_ = NULL;
	gint _tmp3__length1 = 0;
#line 70 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V0_BEHAVIOR, DataImportsFSpotDbFSpotRollsV0Behavior);
#line 71 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp0_ = g_strdup ("id");
#line 71 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp1_ = g_strdup ("time");
#line 71 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp2_ = g_new0 (gchar*, 2 + 1);
#line 71 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp2_[0] = _tmp0_;
#line 71 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp2_[1] = _tmp1_;
#line 71 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp3_ = _tmp2_;
#line 71 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp3__length1 = 2;
#line 71 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	if (result_length1) {
#line 71 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		*result_length1 = _tmp3__length1;
#line 686 "FSpotRollsTable.c"
	}
#line 71 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	result = _tmp3_;
#line 71 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return result;
#line 692 "FSpotRollsTable.c"
}


static void data_imports_fspot_db_fspot_rolls_v0_behavior_real_build_row (DataImportsFSpotDbFSpotTableBehavior* base, sqlite3_stmt* stmt, DataImportsFSpotDbFSpotRollRow** row, gint offset) {
	DataImportsFSpotDbFSpotRollsV0Behavior * self;
	DataImportsFSpotDbFSpotRollRow* _vala_row = NULL;
	DataImportsFSpotDbFSpotRollRow* _tmp0_ = NULL;
	sqlite3_stmt* _tmp1_ = NULL;
	gint _tmp2_ = 0;
	gint64 _tmp3_ = 0LL;
	sqlite3_stmt* _tmp4_ = NULL;
	gint _tmp5_ = 0;
	gint64 _tmp6_ = 0LL;
#line 74 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V0_BEHAVIOR, DataImportsFSpotDbFSpotRollsV0Behavior);
#line 74 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	g_return_if_fail (stmt != NULL);
#line 75 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp0_ = data_imports_fspot_db_fspot_roll_row_new ();
#line 75 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_g_object_unref0 (_vala_row);
#line 75 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_vala_row = _tmp0_;
#line 76 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp1_ = stmt;
#line 76 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp2_ = offset;
#line 76 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp3_ = sqlite3_column_int64 (_tmp1_, _tmp2_ + 0);
#line 76 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_vala_row->id = _tmp3_;
#line 77 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp4_ = stmt;
#line 77 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp5_ = offset;
#line 77 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp6_ = sqlite3_column_int64 (_tmp4_, _tmp5_ + 1);
#line 77 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_vala_row->time = (time_t) _tmp6_;
#line 74 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	if (row) {
#line 74 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		*row = _vala_row;
#line 736 "FSpotRollsTable.c"
	} else {
#line 74 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_g_object_unref0 (_vala_row);
#line 740 "FSpotRollsTable.c"
	}
}


static void data_imports_fspot_db_fspot_rolls_v0_behavior_class_init (DataImportsFSpotDbFSpotRollsV0BehaviorClass * klass) {
#line 54 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	data_imports_fspot_db_fspot_rolls_v0_behavior_parent_class = g_type_class_peek_parent (klass);
#line 54 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	G_OBJECT_CLASS (klass)->finalize = data_imports_fspot_db_fspot_rolls_v0_behavior_finalize;
#line 750 "FSpotRollsTable.c"
}


static void data_imports_fspot_db_fspot_rolls_v0_behavior_data_imports_fspot_db_fspot_table_behavior_interface_init (DataImportsFSpotDbFSpotTableBehaviorIface * iface) {
#line 54 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	data_imports_fspot_db_fspot_rolls_v0_behavior_data_imports_fspot_db_fspot_table_behavior_parent_iface = g_type_interface_peek_parent (iface);
#line 54 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	iface->get_table_name = (gchar* (*)(DataImportsFSpotDbFSpotTableBehavior*)) data_imports_fspot_db_fspot_rolls_v0_behavior_real_get_table_name;
#line 54 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	iface->list_columns = (gchar** (*)(DataImportsFSpotDbFSpotTableBehavior*, int*)) data_imports_fspot_db_fspot_rolls_v0_behavior_real_list_columns;
#line 54 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	iface->build_row = (void (*)(DataImportsFSpotDbFSpotTableBehavior*, sqlite3_stmt*, gpointer*, gint)) data_imports_fspot_db_fspot_rolls_v0_behavior_real_build_row;
#line 763 "FSpotRollsTable.c"
}


static void data_imports_fspot_db_fspot_rolls_v0_behavior_instance_init (DataImportsFSpotDbFSpotRollsV0Behavior * self) {
}


static void data_imports_fspot_db_fspot_rolls_v0_behavior_finalize (GObject* obj) {
	DataImportsFSpotDbFSpotRollsV0Behavior * self;
#line 54 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V0_BEHAVIOR, DataImportsFSpotDbFSpotRollsV0Behavior);
#line 54 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	G_OBJECT_CLASS (data_imports_fspot_db_fspot_rolls_v0_behavior_parent_class)->finalize (obj);
#line 777 "FSpotRollsTable.c"
}


GType data_imports_fspot_db_fspot_rolls_v0_behavior_get_type (void) {
	static volatile gsize data_imports_fspot_db_fspot_rolls_v0_behavior_type_id__volatile = 0;
	if (g_once_init_enter (&data_imports_fspot_db_fspot_rolls_v0_behavior_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (DataImportsFSpotDbFSpotRollsV0BehaviorClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) data_imports_fspot_db_fspot_rolls_v0_behavior_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DataImportsFSpotDbFSpotRollsV0Behavior), 0, (GInstanceInitFunc) data_imports_fspot_db_fspot_rolls_v0_behavior_instance_init, NULL };
		static const GInterfaceInfo data_imports_fspot_db_fspot_table_behavior_info = { (GInterfaceInitFunc) data_imports_fspot_db_fspot_rolls_v0_behavior_data_imports_fspot_db_fspot_table_behavior_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType data_imports_fspot_db_fspot_rolls_v0_behavior_type_id;
		data_imports_fspot_db_fspot_rolls_v0_behavior_type_id = g_type_register_static (G_TYPE_OBJECT, "DataImportsFSpotDbFSpotRollsV0Behavior", &g_define_type_info, 0);
		g_type_add_interface_static (data_imports_fspot_db_fspot_rolls_v0_behavior_type_id, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TABLE_BEHAVIOR, &data_imports_fspot_db_fspot_table_behavior_info);
		g_once_init_leave (&data_imports_fspot_db_fspot_rolls_v0_behavior_type_id__volatile, data_imports_fspot_db_fspot_rolls_v0_behavior_type_id);
	}
	return data_imports_fspot_db_fspot_rolls_v0_behavior_type_id__volatile;
}


static DataImportsFSpotDbFSpotRollsV5Behavior* data_imports_fspot_db_fspot_rolls_v5_behavior_construct (GType object_type) {
	DataImportsFSpotDbFSpotRollsV5Behavior * self = NULL;
#line 86 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	self = (DataImportsFSpotDbFSpotRollsV5Behavior*) g_object_new (object_type, NULL);
#line 86 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return self;
#line 801 "FSpotRollsTable.c"
}


static DataImportsFSpotDbFSpotRollsV5Behavior* data_imports_fspot_db_fspot_rolls_v5_behavior_new (void) {
#line 86 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return data_imports_fspot_db_fspot_rolls_v5_behavior_construct (DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V5_BEHAVIOR);
#line 808 "FSpotRollsTable.c"
}


DataImportsFSpotDbFSpotRollsV5Behavior* data_imports_fspot_db_fspot_rolls_v5_behavior_get_instance (void) {
	DataImportsFSpotDbFSpotRollsV5Behavior* result = NULL;
	DataImportsFSpotDbFSpotRollsV5Behavior* _tmp0_ = NULL;
	DataImportsFSpotDbFSpotRollsV5Behavior* _tmp2_ = NULL;
	DataImportsFSpotDbFSpotRollsV5Behavior* _tmp3_ = NULL;
#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp0_ = data_imports_fspot_db_fspot_rolls_v5_behavior_instance;
#line 90 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	if (_tmp0_ == NULL) {
#line 821 "FSpotRollsTable.c"
		DataImportsFSpotDbFSpotRollsV5Behavior* _tmp1_ = NULL;
#line 91 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_tmp1_ = data_imports_fspot_db_fspot_rolls_v5_behavior_new ();
#line 91 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_g_object_unref0 (data_imports_fspot_db_fspot_rolls_v5_behavior_instance);
#line 91 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		data_imports_fspot_db_fspot_rolls_v5_behavior_instance = _tmp1_;
#line 829 "FSpotRollsTable.c"
	}
#line 92 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp2_ = data_imports_fspot_db_fspot_rolls_v5_behavior_instance;
#line 92 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp3_ = _g_object_ref0 (_tmp2_);
#line 92 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	result = _tmp3_;
#line 92 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return result;
#line 839 "FSpotRollsTable.c"
}


static gchar* data_imports_fspot_db_fspot_rolls_v5_behavior_real_get_table_name (DataImportsFSpotDbFSpotTableBehavior* base) {
	DataImportsFSpotDbFSpotRollsV5Behavior * self;
	gchar* result = NULL;
	gchar* _tmp0_ = NULL;
#line 95 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V5_BEHAVIOR, DataImportsFSpotDbFSpotRollsV5Behavior);
#line 96 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp0_ = g_strdup (DATA_IMPORTS_FSPOT_DB_FSPOT_ROLLS_TABLE_TABLE_NAME);
#line 96 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	result = _tmp0_;
#line 96 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return result;
#line 855 "FSpotRollsTable.c"
}


static gchar** data_imports_fspot_db_fspot_rolls_v5_behavior_real_list_columns (DataImportsFSpotDbFSpotTableBehavior* base, int* result_length1) {
	DataImportsFSpotDbFSpotRollsV5Behavior * self;
	gchar** result = NULL;
	gchar* _tmp0_ = NULL;
	gchar* _tmp1_ = NULL;
	gchar** _tmp2_ = NULL;
	gchar** _tmp3_ = NULL;
	gint _tmp3__length1 = 0;
#line 99 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V5_BEHAVIOR, DataImportsFSpotDbFSpotRollsV5Behavior);
#line 100 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp0_ = g_strdup ("id");
#line 100 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp1_ = g_strdup ("time");
#line 100 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp2_ = g_new0 (gchar*, 2 + 1);
#line 100 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp2_[0] = _tmp0_;
#line 100 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp2_[1] = _tmp1_;
#line 100 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp3_ = _tmp2_;
#line 100 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp3__length1 = 2;
#line 100 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	if (result_length1) {
#line 100 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		*result_length1 = _tmp3__length1;
#line 887 "FSpotRollsTable.c"
	}
#line 100 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	result = _tmp3_;
#line 100 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	return result;
#line 893 "FSpotRollsTable.c"
}


static void data_imports_fspot_db_fspot_rolls_v5_behavior_real_build_row (DataImportsFSpotDbFSpotTableBehavior* base, sqlite3_stmt* stmt, DataImportsFSpotDbFSpotRollRow** row, gint offset) {
	DataImportsFSpotDbFSpotRollsV5Behavior * self;
	DataImportsFSpotDbFSpotRollRow* _vala_row = NULL;
	DataImportsFSpotDbFSpotRollRow* _tmp0_ = NULL;
	sqlite3_stmt* _tmp1_ = NULL;
	gint _tmp2_ = 0;
	gint64 _tmp3_ = 0LL;
	sqlite3_stmt* _tmp4_ = NULL;
	gint _tmp5_ = 0;
	gint64 _tmp6_ = 0LL;
#line 103 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (base, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V5_BEHAVIOR, DataImportsFSpotDbFSpotRollsV5Behavior);
#line 103 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	g_return_if_fail (stmt != NULL);
#line 104 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp0_ = data_imports_fspot_db_fspot_roll_row_new ();
#line 104 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_g_object_unref0 (_vala_row);
#line 104 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_vala_row = _tmp0_;
#line 105 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp1_ = stmt;
#line 105 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp2_ = offset;
#line 105 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp3_ = sqlite3_column_int64 (_tmp1_, _tmp2_ + 0);
#line 105 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_vala_row->id = _tmp3_;
#line 106 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp4_ = stmt;
#line 106 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp5_ = offset;
#line 106 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_tmp6_ = sqlite3_column_int64 (_tmp4_, _tmp5_ + 1);
#line 106 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	_vala_row->time = (time_t) _tmp6_;
#line 103 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	if (row) {
#line 103 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		*row = _vala_row;
#line 937 "FSpotRollsTable.c"
	} else {
#line 103 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
		_g_object_unref0 (_vala_row);
#line 941 "FSpotRollsTable.c"
	}
}


static void data_imports_fspot_db_fspot_rolls_v5_behavior_class_init (DataImportsFSpotDbFSpotRollsV5BehaviorClass * klass) {
#line 83 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	data_imports_fspot_db_fspot_rolls_v5_behavior_parent_class = g_type_class_peek_parent (klass);
#line 83 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	G_OBJECT_CLASS (klass)->finalize = data_imports_fspot_db_fspot_rolls_v5_behavior_finalize;
#line 951 "FSpotRollsTable.c"
}


static void data_imports_fspot_db_fspot_rolls_v5_behavior_data_imports_fspot_db_fspot_table_behavior_interface_init (DataImportsFSpotDbFSpotTableBehaviorIface * iface) {
#line 83 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	data_imports_fspot_db_fspot_rolls_v5_behavior_data_imports_fspot_db_fspot_table_behavior_parent_iface = g_type_interface_peek_parent (iface);
#line 83 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	iface->get_table_name = (gchar* (*)(DataImportsFSpotDbFSpotTableBehavior*)) data_imports_fspot_db_fspot_rolls_v5_behavior_real_get_table_name;
#line 83 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	iface->list_columns = (gchar** (*)(DataImportsFSpotDbFSpotTableBehavior*, int*)) data_imports_fspot_db_fspot_rolls_v5_behavior_real_list_columns;
#line 83 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	iface->build_row = (void (*)(DataImportsFSpotDbFSpotTableBehavior*, sqlite3_stmt*, gpointer*, gint)) data_imports_fspot_db_fspot_rolls_v5_behavior_real_build_row;
#line 964 "FSpotRollsTable.c"
}


static void data_imports_fspot_db_fspot_rolls_v5_behavior_instance_init (DataImportsFSpotDbFSpotRollsV5Behavior * self) {
}


static void data_imports_fspot_db_fspot_rolls_v5_behavior_finalize (GObject* obj) {
	DataImportsFSpotDbFSpotRollsV5Behavior * self;
#line 83 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_ROLLS_V5_BEHAVIOR, DataImportsFSpotDbFSpotRollsV5Behavior);
#line 83 "/home/jens/Source/shotwell/plugins/shotwell-data-imports/FSpotRollsTable.vala"
	G_OBJECT_CLASS (data_imports_fspot_db_fspot_rolls_v5_behavior_parent_class)->finalize (obj);
#line 978 "FSpotRollsTable.c"
}


GType data_imports_fspot_db_fspot_rolls_v5_behavior_get_type (void) {
	static volatile gsize data_imports_fspot_db_fspot_rolls_v5_behavior_type_id__volatile = 0;
	if (g_once_init_enter (&data_imports_fspot_db_fspot_rolls_v5_behavior_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (DataImportsFSpotDbFSpotRollsV5BehaviorClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) data_imports_fspot_db_fspot_rolls_v5_behavior_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DataImportsFSpotDbFSpotRollsV5Behavior), 0, (GInstanceInitFunc) data_imports_fspot_db_fspot_rolls_v5_behavior_instance_init, NULL };
		static const GInterfaceInfo data_imports_fspot_db_fspot_table_behavior_info = { (GInterfaceInitFunc) data_imports_fspot_db_fspot_rolls_v5_behavior_data_imports_fspot_db_fspot_table_behavior_interface_init, (GInterfaceFinalizeFunc) NULL, NULL};
		GType data_imports_fspot_db_fspot_rolls_v5_behavior_type_id;
		data_imports_fspot_db_fspot_rolls_v5_behavior_type_id = g_type_register_static (G_TYPE_OBJECT, "DataImportsFSpotDbFSpotRollsV5Behavior", &g_define_type_info, 0);
		g_type_add_interface_static (data_imports_fspot_db_fspot_rolls_v5_behavior_type_id, DATA_IMPORTS_FSPOT_DB_TYPE_FSPOT_TABLE_BEHAVIOR, &data_imports_fspot_db_fspot_table_behavior_info);
		g_once_init_leave (&data_imports_fspot_db_fspot_rolls_v5_behavior_type_id__volatile, data_imports_fspot_db_fspot_rolls_v5_behavior_type_id);
	}
	return data_imports_fspot_db_fspot_rolls_v5_behavior_type_id__volatile;
}