Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
control_jobs.c File Reference
#include "control/jobs/control_jobs.h"
#include "common/collection.h"
#include "common/darktable.h"
#include "common/debug.h"
#include "common/exif.h"
#include "common/film.h"
#include "common/gpx.h"
#include "common/history.h"
#include "common/image.h"
#include "common/image_cache.h"
#include "common/imageio.h"
#include "common/imageio_dng.h"
#include "common/imageio_module.h"
#include "common/mipmap_cache.h"
#include "common/tags.h"
#include "common/undo.h"
#include "common/grouping.h"
#include "common/utility.h"
#include "common/datetime.h"
#include "control/conf.h"
#include "develop/imageop_math.h"
#include "develop/develop.h"
#include "common/selection.h"
#include "gui/gtk.h"
#include <gio/gio.h>
#include <glib.h>
#include <glib/gstdio.h>
#include <glob.h>
+ Include dependency graph for control_jobs.c:

Data Structures

struct  dt_control_datetime_t
 
struct  dt_control_gpx_apply_t
 
struct  dt_control_export_t
 
struct  dt_control_merge_hdr_t
 
struct  dt_control_merge_hdr_format_t
 
struct  _dt_delete_modal_dialog_t
 

Macros

#define INIT_UPDATE_INTERVAL   2
 
#define MAX_UPDATE_INTERVAL   3.0
 
#define PROGRESS_UPDATE_INTERVAL   1
 

Typedefs

typedef struct dt_control_datetime_t dt_control_datetime_t
 
typedef struct dt_control_gpx_apply_t dt_control_gpx_apply_t
 
typedef struct dt_control_export_t dt_control_export_t
 
typedef struct dt_control_merge_hdr_t dt_control_merge_hdr_t
 
typedef struct dt_control_merge_hdr_format_t dt_control_merge_hdr_format_t
 
typedef struct _dt_delete_modal_dialog_t _dt_delete_modal_dialog_t
 

Enumerations

enum  progress_type_t {
  PROGRESS_NONE ,
  PROGRESS_SIMPLE ,
  PROGRESS_CANCELLABLE
}
 
enum  _dt_delete_status {
  _DT_DELETE_STATUS_UNKNOWN = 0 ,
  _DT_DELETE_STATUS_OK_TO_REMOVE = 1 ,
  _DT_DELETE_STATUS_SKIP_FILE = 2 ,
  _DT_DELETE_STATUS_STOP_PROCESSING = 3
}
 
enum  _dt_delete_dialog_choice {
  _DT_DELETE_DIALOG_CHOICE_DELETE = 1 ,
  _DT_DELETE_DIALOG_CHOICE_DELETE_ALL = 2 ,
  _DT_DELETE_DIALOG_CHOICE_REMOVE = 3 ,
  _DT_DELETE_DIALOG_CHOICE_CONTINUE = 4 ,
  _DT_DELETE_DIALOG_CHOICE_STOP = 5
}
 

Functions

static void dt_control_image_enumerator_job_film_init (dt_control_image_enumerator_t *t, int32_t filmid)
 
static int32_t _generic_dt_control_fileop_images_job_run (dt_job_t *job, int32_t(*fileop_callback)(const int32_t, const int32_t), const char *desc, const char *desc_pl)
 
voiddt_control_image_enumerator_alloc ()
 
void dt_control_image_enumerator_cleanup (void *p)
 
static dt_job_tdt_control_generic_images_job_create (dt_job_execute_callback execute, const char *message, int flag, gpointer data, progress_type_t progress_type, gboolean only_visible)
 
static dt_job_tdt_control_generic_image_job_create (dt_job_execute_callback execute, const char *message, int flag, gpointer data, progress_type_t progress_type, int32_t imgid)
 
static int32_t dt_control_write_sidecar_files_job_run (dt_job_t *job)
 
void dt_control_write_sidecar_files ()
 
static int dt_control_merge_hdr_bpp (dt_imageio_module_data_t *data)
 
static int dt_control_merge_hdr_levels (dt_imageio_module_data_t *data)
 
static const char * dt_control_merge_hdr_mime (dt_imageio_module_data_t *data)
 
static float envelope (const float xx)
 
static int dt_control_merge_hdr_process (dt_imageio_module_data_t *datai, const char *filename, const void *const ivoid, dt_colorspaces_color_profile_type_t over_type, const char *over_filename, void *exif, int exif_len, int32_t imgid, int num, int total, dt_dev_pixelpipe_t *pipe, const gboolean export_masks)
 
static int32_t dt_control_merge_hdr_job_run (dt_job_t *job)
 
static int32_t dt_control_duplicate_images_job_run (dt_job_t *job)
 
static int32_t dt_control_flip_images_job_run (dt_job_t *job)
 
static int32_t dt_control_monochrome_images_job_run (dt_job_t *job)
 
static char * _get_image_list (GList *l)
 
static void _set_remove_flag (char *imgs)
 
static GList * _get_full_pathname (char *imgs)
 
static int32_t dt_control_remove_images_job_run (dt_job_t *job)
 
static gboolean _dt_delete_dialog_main_thread (gpointer user_data)
 
static gint _dt_delete_file_display_modal_dialog (int send_to_trash, const char *filename, const char *error_message)
 
static enum _dt_delete_status delete_file_from_disk (const char *filename, gboolean *delete_on_trash_error)
 
static int32_t dt_control_delete_images_job_run (dt_job_t *job)
 
static int32_t dt_control_gpx_apply_job_run (dt_job_t *job)
 
static int32_t dt_control_move_images_job_run (dt_job_t *job)
 
static int32_t dt_control_copy_images_job_run (dt_job_t *job)
 
static int32_t dt_control_local_copy_images_job_run (dt_job_t *job)
 
static int32_t dt_control_refresh_exif_run (dt_job_t *job)
 
static int32_t dt_control_export_job_run (dt_job_t *job)
 
static dt_control_image_enumerator_tdt_control_gpx_apply_alloc ()
 
static void dt_control_gpx_apply_job_cleanup (void *p)
 
static dt_job_t_control_gpx_apply_job_create (const gchar *filename, int32_t filmid, const gchar *tz, GList *imgs)
 
static int32_t dt_dev_save_xmp_job_run (dt_job_t *job)
 
void dt_control_save_xmp (const int32_t imgid)
 
void dt_control_merge_hdr ()
 
void dt_control_gpx_apply (const gchar *filename, int32_t filmid, const gchar *tz, GList *imgs)
 
void dt_control_duplicate_images (gboolean virgin)
 
void dt_control_flip_images (const int32_t cw)
 
void dt_control_monochrome_images (const int32_t mode)
 
gboolean dt_control_remove_images ()
 
void dt_control_delete_images ()
 
void dt_control_delete_image (int32_t imgid)
 
void dt_control_move_images ()
 
void dt_control_copy_images ()
 
void dt_control_set_local_copy_images ()
 
void dt_control_reset_local_copy_images ()
 
void dt_control_refresh_exif ()
 
static dt_control_image_enumerator_tdt_control_export_alloc ()
 
static void dt_control_export_cleanup (void *p)
 
void dt_control_export (GList *imgid_list, int max_width, int max_height, int format_index, int storage_index, gboolean high_quality, gboolean export_masks, char *style, dt_colorspaces_color_profile_type_t icc_type, const gchar *icc_filename, dt_iop_color_intent_t icc_intent, const gchar *metadata_export)
 
static void _add_datetime_offset (const char *odt, const long int offset, char *ndt)
 
static int32_t dt_control_datetime_job_run (dt_job_t *job)
 
static voiddt_control_datetime_alloc ()
 
static void dt_control_datetime_job_cleanup (void *p)
 
static dt_job_tdt_control_datetime_job_create (const GTimeSpan offset, const char *datetime, GList *imgs)
 
void dt_control_datetime (const GTimeSpan offset, const char *datetime, GList *imgs)
 

Macro Definition Documentation

◆ INIT_UPDATE_INTERVAL

#define INIT_UPDATE_INTERVAL   2

◆ MAX_UPDATE_INTERVAL

#define MAX_UPDATE_INTERVAL   3.0

◆ PROGRESS_UPDATE_INTERVAL

#define PROGRESS_UPDATE_INTERVAL   1

Typedef Documentation

◆ _dt_delete_modal_dialog_t

◆ dt_control_datetime_t

◆ dt_control_export_t

◆ dt_control_gpx_apply_t

◆ dt_control_merge_hdr_format_t

◆ dt_control_merge_hdr_t

Enumeration Type Documentation

◆ _dt_delete_dialog_choice

Enumerator
_DT_DELETE_DIALOG_CHOICE_DELETE 
_DT_DELETE_DIALOG_CHOICE_DELETE_ALL 
_DT_DELETE_DIALOG_CHOICE_REMOVE 
_DT_DELETE_DIALOG_CHOICE_CONTINUE 
_DT_DELETE_DIALOG_CHOICE_STOP 

◆ _dt_delete_status

Enumerator
_DT_DELETE_STATUS_UNKNOWN 
_DT_DELETE_STATUS_OK_TO_REMOVE 
_DT_DELETE_STATUS_SKIP_FILE 
_DT_DELETE_STATUS_STOP_PROCESSING 

◆ progress_type_t

Enumerator
PROGRESS_NONE 
PROGRESS_SIMPLE 
PROGRESS_CANCELLABLE 

Function Documentation

◆ _add_datetime_offset()

static void _add_datetime_offset ( const char *  odt,
const long int  offset,
char *  ndt 
)
static

◆ _control_gpx_apply_job_create()

◆ _dt_delete_dialog_main_thread()

◆ _dt_delete_file_display_modal_dialog()

◆ _generic_dt_control_fileop_images_job_run()

◆ _get_full_pathname()

◆ _get_image_list()

static char * _get_image_list ( GList *  l)
static

◆ _set_remove_flag()

◆ delete_file_from_disk()

◆ dt_control_copy_images()

◆ dt_control_copy_images_job_run()

static int32_t dt_control_copy_images_job_run ( dt_job_t job)
static

◆ dt_control_datetime()

void dt_control_datetime ( const GTimeSpan  offset,
const char *  datetime,
GList *  imgs 
)

◆ dt_control_datetime_alloc()

static void * dt_control_datetime_alloc ( )
static

◆ dt_control_datetime_job_cleanup()

static void dt_control_datetime_job_cleanup ( void p)
static

◆ dt_control_datetime_job_create()

◆ dt_control_datetime_job_run()

◆ dt_control_delete_image()

◆ dt_control_delete_images()

◆ dt_control_delete_images_job_run()

◆ dt_control_duplicate_images()

◆ dt_control_duplicate_images_job_run()

◆ dt_control_export()

◆ dt_control_export_alloc()

static dt_control_image_enumerator_t * dt_control_export_alloc ( )
static

◆ dt_control_export_cleanup()

◆ dt_control_export_job_run()

◆ dt_control_flip_images()

◆ dt_control_flip_images_job_run()

◆ dt_control_generic_image_job_create()

static dt_job_t * dt_control_generic_image_job_create ( dt_job_execute_callback  execute,
const char *  message,
int  flag,
gpointer  data,
progress_type_t  progress_type,
int32_t  imgid 
)
static

◆ dt_control_generic_images_job_create()

◆ dt_control_gpx_apply()

void dt_control_gpx_apply ( const gchar *  filename,
int32_t  filmid,
const gchar *  tz,
GList *  imgs 
)

◆ dt_control_gpx_apply_alloc()

◆ dt_control_gpx_apply_job_cleanup()

static void dt_control_gpx_apply_job_cleanup ( void p)
static

◆ dt_control_gpx_apply_job_run()

◆ dt_control_image_enumerator_alloc()

◆ dt_control_image_enumerator_cleanup()

◆ dt_control_image_enumerator_job_film_init()

static void dt_control_image_enumerator_job_film_init ( dt_control_image_enumerator_t t,
int32_t  filmid 
)
static

◆ dt_control_local_copy_images_job_run()

◆ dt_control_merge_hdr()

◆ dt_control_merge_hdr_bpp()

static int dt_control_merge_hdr_bpp ( dt_imageio_module_data_t data)
static

◆ dt_control_merge_hdr_job_run()

◆ dt_control_merge_hdr_levels()

static int dt_control_merge_hdr_levels ( dt_imageio_module_data_t data)
static

References IMAGEIO_FLOAT, and IMAGEIO_RGB.

Referenced by dt_control_merge_hdr_job_run().

◆ dt_control_merge_hdr_mime()

static const char * dt_control_merge_hdr_mime ( dt_imageio_module_data_t data)
static

◆ dt_control_merge_hdr_process()

static int dt_control_merge_hdr_process ( dt_imageio_module_data_t datai,
const char *  filename,
const void *const  ivoid,
dt_colorspaces_color_profile_type_t  over_type,
const char *  over_filename,
void exif,
int  exif_len,
int32_t  imgid,
int  num,
int  total,
dt_dev_pixelpipe_t pipe,
const gboolean  export_masks 
)
static

◆ dt_control_monochrome_images()

◆ dt_control_monochrome_images_job_run()

◆ dt_control_move_images()

◆ dt_control_move_images_job_run()

static int32_t dt_control_move_images_job_run ( dt_job_t job)
static

◆ dt_control_refresh_exif()

◆ dt_control_refresh_exif_run()

◆ dt_control_remove_images()

◆ dt_control_remove_images_job_run()

◆ dt_control_reset_local_copy_images()

◆ dt_control_save_xmp()

◆ dt_control_set_local_copy_images()

◆ dt_control_write_sidecar_files()

◆ dt_control_write_sidecar_files_job_run()

◆ dt_dev_save_xmp_job_run()

static int32_t dt_dev_save_xmp_job_run ( dt_job_t job)
static

◆ envelope()

static float envelope ( const float  xx)
static

References CLAMPS.

Referenced by dt_control_merge_hdr_process().