Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
tiling.h File Reference
#include "develop/develop.h"
#include "develop/imageop.h"
#include "develop/pixelpipe.h"
+ Include dependency graph for tiling.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  dt_develop_tiling_t
 

Typedefs

typedef struct dt_develop_tiling_t dt_develop_tiling_t
 

Functions

int default_process_tiling_cl (struct dt_iop_module_t *self, struct dt_dev_pixelpipe_iop_t *piece, const void *const ivoid, void *const ovoid, const dt_iop_roi_t *const roi_in, const dt_iop_roi_t *const roi_out, const int bpp)
 
int process_tiling_cl (struct dt_iop_module_t *self, struct dt_dev_pixelpipe_iop_t *piece, const void *const ivoid, void *const ovoid, const dt_iop_roi_t *const roi_in, const dt_iop_roi_t *const roi_out, const int bpp)
 
void default_process_tiling (struct dt_iop_module_t *self, struct dt_dev_pixelpipe_iop_t *piece, const void *const ivoid, void *const ovid, const dt_iop_roi_t *const roi_in, const dt_iop_roi_t *const roi_out, const int bpp)
 
void process_tiling (struct dt_iop_module_t *self, struct dt_dev_pixelpipe_iop_t *piece, const void *const ivoid, void *const ovoid, const dt_iop_roi_t *const roi_in, const dt_iop_roi_t *const roi_out, const int bpp)
 
void default_tiling_callback (struct dt_iop_module_t *self, struct dt_dev_pixelpipe_iop_t *piece, const dt_iop_roi_t *roi_in, const dt_iop_roi_t *roi_out, struct dt_develop_tiling_t *tiling)
 
void tiling_callback_blendop (struct dt_iop_module_t *self, struct dt_dev_pixelpipe_iop_t *piece, const dt_iop_roi_t *roi_in, const dt_iop_roi_t *roi_out, struct dt_develop_tiling_t *tiling)
 
void tiling_callback (struct dt_iop_module_t *self, struct dt_dev_pixelpipe_iop_t *piece, const dt_iop_roi_t *roi_in, const dt_iop_roi_t *roi_out, struct dt_develop_tiling_t *tiling)
 
int dt_tiling_piece_fits_host_memory (const size_t width, const size_t height, const unsigned bpp, const float factor, const size_t overhead)
 

Typedef Documentation

◆ dt_develop_tiling_t

Function Documentation

◆ default_process_tiling()

void default_process_tiling ( struct dt_iop_module_t self,
struct dt_dev_pixelpipe_iop_t piece,
const void *const  ivoid,
void *const  ovid,
const dt_iop_roi_t *const  roi_in,
const dt_iop_roi_t *const  roi_out,
const int  bpp 
)

◆ default_process_tiling_cl()

int default_process_tiling_cl ( struct dt_iop_module_t self,
struct dt_dev_pixelpipe_iop_t piece,
const void *const  ivoid,
void *const  ovoid,
const dt_iop_roi_t *const  roi_in,
const dt_iop_roi_t *const  roi_out,
const int  bpp 
)

References FALSE.

◆ default_tiling_callback()

void default_tiling_callback ( struct dt_iop_module_t self,
struct dt_dev_pixelpipe_iop_t piece,
const dt_iop_roi_t roi_in,
const dt_iop_roi_t roi_out,
struct dt_develop_tiling_t tiling 
)

◆ dt_tiling_piece_fits_host_memory()

int dt_tiling_piece_fits_host_memory ( const size_t  width,
const size_t  height,
const unsigned  bpp,
const float  factor,
const size_t  overhead 
)

◆ process_tiling()

void process_tiling ( struct dt_iop_module_t self,
struct dt_dev_pixelpipe_iop_t piece,
const void *const  ivoid,
void *const  ovoid,
const dt_iop_roi_t *const  roi_in,
const dt_iop_roi_t *const  roi_out,
const int  bpp 
)

◆ process_tiling_cl()

int process_tiling_cl ( struct dt_iop_module_t self,
struct dt_dev_pixelpipe_iop_t piece,
const void *const  ivoid,
void *const  ovoid,
const dt_iop_roi_t *const  roi_in,
const dt_iop_roi_t *const  roi_out,
const int  bpp 
)

◆ tiling_callback()

void tiling_callback ( struct dt_iop_module_t self,
struct dt_dev_pixelpipe_iop_t piece,
const dt_iop_roi_t roi_in,
const dt_iop_roi_t roi_out,
struct dt_develop_tiling_t tiling 
)
Todo:
: check if that's sufficiently large
Todo:
the above are worst case values, we might iterate through the dt_iop_retouch_form_data_t to get

References B_SPLINE_SIGMA, BOX_ITERATIONS, dt_mipmap_buffer_t::buf, dt_dev_pixelpipe_iop_t::buf_in, dt_iop_demosaic_data_t::color_smoothing, dt_dev_pixelpipe_iop_t::colors, darktable, dt_dev_pixelpipe_iop_t::data, DEMOSAIC_DUAL, DEMOSAIC_FULL_SCALE, demosaic_qual_flags(), DEMOSAIC_XTRANS_FULL, dt_iop_demosaic_data_t::demosaicing_method, dt_iop_global_tonemap_data_t::detail, dt_iop_module_t::dev, DS_FACTOR, dt_bilateral_memory_use(), dt_bilateral_memory_use2(), dt_bilateral_singlebuffer_size(), dt_bilateral_singlebuffer_size2(), dt_gaussian_memory_use(), dt_gaussian_singlebuffer_size(), dt_iop_colorreconstruct_bilateral_memory_use(), dt_iop_colorreconstruct_bilateral_singlebuffer_size(), DT_IOP_DEMOSAIC_AMAZE, DT_IOP_DEMOSAIC_FDC, DT_IOP_DEMOSAIC_LMMSE, DT_IOP_DEMOSAIC_MARKESTEIJN, DT_IOP_DEMOSAIC_MARKESTEIJN_3, DT_IOP_DEMOSAIC_PASSTHROUGH_COLOR, DT_IOP_DEMOSAIC_PASSTHROUGH_MONOCHROME, DT_IOP_DEMOSAIC_PPG, DT_IOP_DEMOSAIC_RCD, DT_IOP_DENOISE_PROFILE_BANDS, DT_IOP_GREEN_EQ_NO, DT_IOP_HIGHLIGHTS_LAPLACIAN, DT_IOP_HIGHLIGHTS_LCH, dt_log2f(), DT_MIPMAP_BLOCKING, dt_mipmap_cache_get, dt_mipmap_cache_release, DT_MIPMAP_FULL, dt_iop_basecurve_data_t::exposure_fusion, get_scales(), get_scales(), dt_iop_demosaic_data_t::green_eq, height, dt_mipmap_buffer_t::height, dt_iop_roi_t::height, dt_image_t::id, dt_dev_pixelpipe_iop_t::iheight, dt_develop_t::image_storage, dt_dev_pixelpipe_iop_t::iscale, dt_dev_pixelpipe_iop_t::iwidth, LMMSE_GRP, local_laplacian_memory_use(), local_laplacian_singlebuffer_size(), dt_iop_lowpass_data_t::lowpass_algo, LOWPASS_ALGO_BILATERAL, MAX, MAX_NUM_SCALES, MAX_RADIUS, MAXR, MIN, darktable_t::mipmap_cache, dt_iop_bilat_params_t::mode, dt_iop_denoiseprofile_params_t::mode, dt_iop_highlights_params_t::mode, MODE_NLMEANS, MODE_NLMEANS_AUTO, dt_iop_denoiseprofile_params_t::nbhood, NUM_BUCKETS, darktable_t::num_openmp_threads, num_steps_to_reach_equivalent_sigma(), P, dt_iop_module_t::params, dt_dev_pixelpipe_iop_t::pipe, dt_iop_denoiseprofile_params_t::radius, dt_iop_diffuse_params_t::radius, dt_iop_lowpass_data_t::radius, dt_iop_nlmeans_params_t::radius, dt_iop_shadhi_data_t::radius, dt_iop_sharpen_data_t::radius, dt_iop_diffuse_params_t::radius_center, dt_iop_colorreconstruct_data_t::range, RCD_TILESIZE, s_mode_bilateral, dt_iop_roi_t::scale, dt_iop_highlights_params_t::scales, dt_iop_denoiseprofile_params_t::scattering, dt_iop_shadhi_data_t::shadhi_algo, SHADHI_ALGO_BILATERAL, dt_iop_highpass_data_t::sharpness, dt_iop_bilateral_data_t::sigma, sigma_r, dt_iop_bilat_params_t::sigma_r, sigma_s, dt_iop_bilat_params_t::sigma_s, dt_iop_bloom_data_t::size, dt_iop_soften_data_t::size, dt_iop_colorreconstruct_data_t::spatial, thrs, width, dt_mipmap_buffer_t::width, dt_iop_roi_t::width, and XTRANS_SNAPPER.

◆ tiling_callback_blendop()

void tiling_callback_blendop ( struct dt_iop_module_t self,
struct dt_dev_pixelpipe_iop_t piece,
const dt_iop_roi_t roi_in,
const dt_iop_roi_t roi_out,
struct dt_develop_tiling_t tiling 
)

report back specific memory requirements for blend step (only relevant for OpenCL path)

References dt_dev_pixelpipe_iop_t::blendop_data, and dt_develop_blend_params_t::details.

Referenced by dt_dev_pixelpipe_process_rec().