Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
crawler.h
Go to the documentation of this file.
1/*
2 This file is part of darktable,
3 Copyright (C) 2014, 2016 Tobias Ellinghaus.
4 Copyright (C) 2020 Pascal Obry.
5 Copyright (C) 2022 Martin Baƙinka.
6
7 darktable is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
11
12 darktable is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with darktable. If not, see <http://www.gnu.org/licenses/>.
19*/
20
21#ifndef DT_CONTROL_CRAWLER_H
22#define DT_CONTROL_CRAWLER_H
23
24#include <glib.h>
25
26// this function iterates over ALL images from the database and checks whether
27// - the XMP file on disk is newer than the timestamp from db
28// - there is a .txt or .wav file associated with the image and mark so in the db
29// or if such a file no longer exists
30// it returns the list of images with a (supposedly) updated xmp file to let the user decide
31//
32// It costs one directory listing per film roll, so it is bounded by filesystem latency and by
33// the size of the library -- NOT fast, whatever the comment here used to claim. Call it
34// synchronously only from a user action that asked for it; the startup path uses the
35// background form below.
37
38// the same crawl, as a background job: it shows the popup itself, on the GUI thread, if
39// anything turned up. This is what startup uses -- waiting for the crawl before building the
40// main window held it back for 102 s on a network-mounted library of 1969 images.
42
43// show a popup with the images, let the user decide what to do and free the list afterwards
44void dt_control_crawler_show_image_list(GList *images);
45
46#endif // DT_CONTROL_CRAWLER_H
47
48// clang-format off
49// modelines: These editor modelines have been set for all relevant files by tools/update_modelines.py
50// vim: shiftwidth=2 expandtab tabstop=2 cindent
51// kate: tab-indents: off; indent-width 2; replace-tabs on; indent-mode cstyle; remove-trailing-spaces modified;
52// clang-format on
53
void dt_control_crawler_show_image_list(GList *images)
Definition crawler.c:989
GList * dt_control_crawler_run()
Definition crawler.c:533
void dt_control_crawler_run_in_background(void)
Definition crawler.c:569