Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
database.h File Reference
#include <glib.h>
#include <sqlite3.h>
+ Include dependency graph for common/database.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define dt_database_start_transaction(db)   DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_SQL, dt_database_start_transaction_debug, (db))
 
#define dt_database_release_transaction(db)   DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_SQL, dt_database_release_transaction_debug, (db))
 

Functions

struct dt_database_tdt_database_init (const char *alternative, const gboolean load_data, const gboolean has_gui)
 
void dt_database_destroy (const struct dt_database_t *)
 
sqlite3 * dt_database_get (const struct dt_database_t *)
 
const gchar * dt_database_get_path (const struct dt_database_t *db)
 
gboolean dt_database_get_lock_acquired (const struct dt_database_t *db)
 
void dt_database_show_error (const struct dt_database_t *db)
 
void dt_database_optimize (const struct dt_database_t *)
 
gboolean dt_database_maybe_maintenance (const struct dt_database_t *db, const gboolean has_gui, const gboolean closing_time)
 
void dt_database_perform_maintenance (const struct dt_database_t *db)
 
void dt_database_cleanup_busy_statements (const struct dt_database_t *db)
 
gboolean dt_database_snapshot (const struct dt_database_t *db)
 
gboolean dt_database_maybe_snapshot (const struct dt_database_t *db)
 
char ** dt_database_snaps_to_remove (const struct dt_database_t *db)
 
gchar * dt_database_get_most_recent_snap (const char *db_filename)
 
void dt_database_start_transaction_debug (const struct dt_database_t *db)
 
void dt_database_release_transaction_debug (const struct dt_database_t *db)
 
void dt_database_rollback_transaction (const struct dt_database_t *db)
 

Macro Definition Documentation

◆ dt_database_release_transaction

#define dt_database_release_transaction (   db)    DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_SQL, dt_database_release_transaction_debug, (db))

◆ dt_database_start_transaction

#define dt_database_start_transaction (   db)    DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_SQL, dt_database_start_transaction_debug, (db))

Function Documentation

◆ dt_database_cleanup_busy_statements()

void dt_database_cleanup_busy_statements ( const struct dt_database_t db)

cleanup busy statements on closing dt, just before performing maintenance

References DT_DEBUG_SQL, dt_print(), and dt_database_t::handle.

Referenced by dt_cleanup().

◆ dt_database_destroy()

void dt_database_destroy ( const struct dt_database_t )

closes down database and frees memory

◆ dt_database_get()

sqlite3 * dt_database_get ( const struct dt_database_t )

get handle

◆ dt_database_get_lock_acquired()

gboolean dt_database_get_lock_acquired ( const struct dt_database_t db)

test if database was already locked by another instance

◆ dt_database_get_most_recent_snap()

gchar * dt_database_get_most_recent_snap ( const char *  db_filename)

get possibly the freshest snapshot to restore

References DT_DEBUG_SQL, dt_print(), and error().

Referenced by dt_database_init().

◆ dt_database_get_path()

const gchar * dt_database_get_path ( const struct dt_database_t db)

Returns database path

References dt_database_t::dbfilename_library.

Referenced by dt_mipmap_cache_get_filename().

◆ dt_database_init()

◆ dt_database_maybe_maintenance()

gboolean dt_database_maybe_maintenance ( const struct dt_database_t db,
const gboolean  has_gui,
const gboolean  closing_time 
)

◆ dt_database_maybe_snapshot()

gboolean dt_database_maybe_snapshot ( const struct dt_database_t db)

check if creating database snapshot is recommended

References _is_mem_db(), dt_database_t::dbfilename_library, dt_conf_get_string_const(), DT_DEBUG_SQL, dt_print(), error(), FALSE, and TRUE.

Referenced by dt_cleanup().

◆ dt_database_optimize()

void dt_database_optimize ( const struct dt_database_t db)

perform pre-db-close optimizations (always call when quiting darktable)

References _is_mem_db(), DT_DEBUG_SQLITE3_EXEC, and dt_database_t::handle.

Referenced by dt_cleanup().

◆ dt_database_perform_maintenance()

void dt_database_perform_maintenance ( const struct dt_database_t db)

◆ dt_database_release_transaction_debug()

void dt_database_release_transaction_debug ( const struct dt_database_t db)

◆ dt_database_rollback_transaction()

◆ dt_database_show_error()

void dt_database_show_error ( const struct dt_database_t db)

show an error popup. this has to be postponed until after we tried using dbus to reach another instance

◆ dt_database_snaps_to_remove()

char ** dt_database_snaps_to_remove ( const struct dt_database_t db)

get list of snapshot files to remove after successful snapshot

References _db_snap_sort(), _is_mem_db(), dt_database_t::dbfilename_data, dt_database_t::dbfilename_library, dt_conf_get_int(), DT_DEBUG_SQL, dt_print(), error(), and FALSE.

Referenced by dt_cleanup().

◆ dt_database_snapshot()

gboolean dt_database_snapshot ( const struct dt_database_t db)

◆ dt_database_start_transaction_debug()

void dt_database_start_transaction_debug ( const struct dt_database_t db)