57 && a->
valid == b->valid;
63 memset(&request, 0,
sizeof(request));
82 memset(&request, 0,
sizeof(request));
90 if(before & 1)
continue;
92 request =
store->value;
95 if(before == after)
break;
184 if(before & 1)
continue;
189 if(before == after)
break;
uint64_t dt_atomic_get_uint64(const dt_atomic_uint64 *var)
void dt_atomic_set_uint64(dt_atomic_uint64 *var, uint64_t value)
dt_dev_image_geometry_t dt_dev_geometry_snapshot(const dt_develop_t *dev)
dt_dev_roi_request_t dt_dev_roi_request_neutral(void)
The value a pipe carries before the worker has latched anything.
int32_t dt_dev_roi_request_preview_height(const dt_develop_t *dev)
void dt_dev_roi_request_latch(dt_dev_pixelpipe_t *pipe, const dt_dev_roi_request_t *request)
Publish onto a pipe the request its next run is planned from. Darkroom worker only.
float dt_dev_roi_request_natural_scale(const dt_develop_t *dev)
int32_t dt_dev_roi_request_preview_width(const dt_develop_t *dev)
dt_dev_roi_request_t dt_dev_roi_request_of_pipe(const dt_dev_pixelpipe_t *pipe)
static gboolean _payload_equal(const dt_dev_roi_request_t *a, const dt_dev_roi_request_t *b)
Do these two records carry the same numbers, ignoring the generation stamp?
uint64_t dt_dev_roi_request_publish(dt_develop_t *dev)
Recompute the derived members from the viewport and the geometry record, and publish if anything chan...
void dt_dev_roi_request_init(dt_develop_t *dev)
gboolean dt_dev_roi_request_valid(const dt_develop_t *dev)
dt_dev_roi_request_t dt_dev_roi_request_get(const dt_develop_t *dev)
static float dt_dev_roi_natural_scale(const int32_t box_width, const int32_t box_height, const int32_t processed_width, const int32_t processed_height)
natural scaling = MIN(box / processed, 1): the image fits the widget minus its borders.
dt_dev_viewport_state_t dt_dev_viewport_get(const dt_develop_t *dev)
int store(dt_imageio_module_storage_t *self, dt_imageio_module_data_t *sdata, const int32_t imgid, dt_imageio_module_format_t *format, dt_imageio_module_data_t *fdata, const int num, const int total, const gboolean high_quality, const gboolean export_masks, dt_colorspaces_color_profile_type_t icc_type, const gchar *icc_filename, dt_iop_color_intent_t icc_intent, dt_export_metadata_t *metadata)
#define IS_NULL_PTR(p)
C is way too permissive with !=, == and if(var) checks, which can mean too many things depending on w...
unsigned __int64 uint64_t
Objective facts about the image a dev is working on.
gboolean processed_inited
dt_dev_roi_request_store_t roi_request
The viewport snapshot this run was planned from.
dt_atomic_uint64 generation
dt_dev_roi_request_t value
The coherent set of numbers a darkroom pipe plans its ROI from.
What the darkroom view asks the pipeline to show: the window onto the image.
dt_dev_roi_request_store_t roi_request
What the darkroom pipes plan their ROI from: the viewport and the geometry, combined and derived once...