Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
dev_snapshot.c File Reference
+ Include dependency graph for dev_snapshot.c:

Go to the source code of this file.

Data Structures

struct  dt_dev_snapshot_engine_t
 

Typedefs

typedef struct dt_dev_snapshot_engine_t dt_dev_snapshot_engine_t
 

Functions

static void _engine_free (dt_dev_snapshot_engine_t *engine)
 
static void _engine_unref (dt_dev_snapshot_engine_t *engine)
 
static void _recompute_job_cleanup (void *params)
 
void dt_dev_snapshot_clear (dt_dev_snapshot_t *snap)
 
gboolean dt_dev_snapshot_is_valid (const dt_dev_snapshot_t *snap)
 
static gboolean _compute_main_roi (const dt_develop_t *dev, const dt_dev_pixelpipe_t *pipe, dt_iop_roi_t *roi)
 
static gboolean _compute_preview_roi (const dt_develop_t *dev, const dt_dev_pixelpipe_t *pipe, dt_iop_roi_t *roi)
 
static gboolean _roi_equal (const dt_iop_roi_t *a, const dt_iop_roi_t *b)
 
static gboolean _process_at_roi (dt_dev_snapshot_engine_t *engine, dt_dev_pixelpipe_t *pipe, const dt_iop_roi_t *roi)
 
static void _sync_preview_now (dt_dev_snapshot_engine_t *engine, dt_develop_t *dev)
 
static gboolean _sync_main_now (dt_dev_snapshot_engine_t *engine, const dt_iop_roi_t *roi)
 
static int32_t _recompute_job_run (dt_job_t *job)
 
static void _schedule_main_recompute (dt_dev_snapshot_engine_t *engine, const dt_iop_roi_t *roi)
 
static void _draw_preview_fallback (dt_dev_snapshot_engine_t *engine, dt_develop_t *dev, cairo_t *cr, int width, int height)
 
gboolean dt_dev_snapshot_capture (dt_dev_snapshot_t *snap, dt_develop_t *dev, int32_t imgid, GList *history_override, GList *iop_order_override, int32_t history_end_override)
 
void dt_dev_snapshot_draw (dt_dev_snapshot_t *snap, cairo_t *cri, struct dt_develop_t *dev, int32_t width, int32_t height, double clip_x, double clip_y, double clip_w, double clip_h)
 

Typedef Documentation

◆ dt_dev_snapshot_engine_t

Function Documentation

◆ _compute_main_roi()

◆ _compute_preview_roi()

◆ _draw_preview_fallback()

◆ _engine_free()

◆ _engine_unref()

◆ _process_at_roi()

◆ _recompute_job_cleanup()

static void _recompute_job_cleanup ( void params)
static

Definition at line 118 of file dev_snapshot.c.

References _engine_unref().

Referenced by _schedule_main_recompute().

◆ _recompute_job_run()

◆ _roi_equal()

static gboolean _roi_equal ( const dt_iop_roi_t a,
const dt_iop_roi_t b 
)
static

Definition at line 188 of file dev_snapshot.c.

Referenced by _sync_preview_now(), and dt_dev_snapshot_draw().

◆ _schedule_main_recompute()

◆ _sync_main_now()

◆ _sync_preview_now()

◆ dt_dev_snapshot_capture()

gboolean dt_dev_snapshot_capture ( dt_dev_snapshot_t snap,
dt_develop_t dev,
int32_t  imgid,
GList *  history_override,
GList *  iop_order_override,
int32_t  history_end_override 
)

Definition at line 341 of file dev_snapshot.c.

References _compute_main_roi(), _engine_unref(), _sync_main_now(), _sync_preview_now(), dt_mipmap_buffer_t::buf, dt_dev_snapshot_engine_t::captured, dt_dev_snapshot_engine_t::destroying, dt_atomic_set_int(), DT_DEBUG_DEV, dt_dev_cleanup(), dt_dev_create_module_instance(), dt_dev_get_global(), dt_dev_get_module_instance(), dt_dev_history_compute_hash(), dt_dev_history_free_history(), dt_dev_init(), dt_dev_load_image(), dt_dev_pixelpipe_cleanup(), dt_dev_pixelpipe_create_nodes(), dt_dev_pixelpipe_get_roi_out(), dt_dev_pixelpipe_init(), dt_dev_pixelpipe_propagate_formats(), dt_dev_pixelpipe_set_icc(), dt_dev_pixelpipe_set_input(), dt_dev_pixelpipe_synch_all, dt_dev_set_history_end_ext(), dt_dev_set_history_hash(), dt_dev_snapshot_clear(), dt_free, dt_free_gpointer(), dt_iop_get_module_by_op_priority(), dt_masks_replace_current_forms(), DT_MIPMAP_BLOCKING, dt_mipmap_cache_get, dt_mipmap_cache_release, DT_MIPMAP_FULL, dt_print(), dt_pthread_mutex_destroy(), dt_pthread_mutex_init(), dt_dev_snapshot_t::engine, FALSE, dt_dev_history_item_t::forms, dt_dev_snapshot_engine_t::frozen, dt_mipmap_buffer_t::height, dt_develop_t::history, i, dt_dev_pixelpipe_t::icc_filename, dt_dev_pixelpipe_t::icc_intent, dt_dev_pixelpipe_t::icc_type, dt_image_t::id, dt_develop_t::image_storage, dt_develop_t::iop, dt_develop_t::iop_order_list, IS_NULL_PTR, dt_mipmap_buffer_t::iscale, dt_dev_snapshot_engine_t::lock, dt_dev_history_item_t::multi_name, dt_dev_history_item_t::multi_priority, dt_dev_history_item_t::op_name, p, dt_dev_snapshot_engine_t::pipe, dt_dev_snapshot_engine_t::preview_pipe, dt_develop_t::preview_pipe, dt_dev_snapshot_engine_t::raw_height, dt_dev_snapshot_engine_t::raw_iscale, dt_dev_snapshot_engine_t::raw_width, dt_dev_snapshot_engine_t::ref_count, TRUE, and dt_mipmap_buffer_t::width.

Referenced by _lib_duplicate_thumb_press_callback(), and _lib_snapshot_capture_state().

◆ dt_dev_snapshot_clear()

◆ dt_dev_snapshot_draw()

◆ dt_dev_snapshot_is_valid()

gboolean dt_dev_snapshot_is_valid ( const dt_dev_snapshot_t snap)