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, const struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece, const void *const ivoid, void *const ovoid, const int bpp)
 
int process_tiling_cl (struct dt_iop_module_t *self, const struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece, const void *const ivoid, void *const ovoid, const int bpp)
 
int default_process_tiling (struct dt_iop_module_t *self, const struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece, const void *const ivoid, void *const ovid, const int bpp)
 
int process_tiling (struct dt_iop_module_t *self, const struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece, const void *const ivoid, void *const ovoid, const int bpp)
 
void default_tiling_callback (struct dt_iop_module_t *self, const struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece, struct dt_develop_tiling_t *tiling)
 
void tiling_callback_blendop (struct dt_iop_module_t *self, const struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece, struct dt_develop_tiling_t *tiling)
 
void tiling_callback (struct dt_iop_module_t *self, const struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece, 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()

int default_process_tiling ( struct dt_iop_module_t self,
const struct dt_dev_pixelpipe_t pipe,
const struct dt_dev_pixelpipe_iop_t piece,
const void *const  ivoid,
void *const  ovid,
const int  bpp 
)

◆ default_process_tiling_cl()

int default_process_tiling_cl ( struct dt_iop_module_t self,
const struct dt_dev_pixelpipe_t pipe,
const struct dt_dev_pixelpipe_iop_t piece,
const void *const  ivoid,
void *const  ovoid,
const int  bpp 
)

References FALSE, and void().

◆ default_tiling_callback()

◆ 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()

int process_tiling ( struct dt_iop_module_t self,
const struct dt_dev_pixelpipe_t pipe,
const struct dt_dev_pixelpipe_iop_t piece,
const void *const  ivoid,
void *const  ovoid,
const int  bpp 
)

◆ process_tiling_cl()

int process_tiling_cl ( struct dt_iop_module_t self,
const struct dt_dev_pixelpipe_t pipe,
const struct dt_dev_pixelpipe_iop_t piece,
const void *const  ivoid,
void *const  ovoid,
const int  bpp 
)

◆ tiling_callback()

void tiling_callback ( struct dt_iop_module_t self,
const struct dt_dev_pixelpipe_t pipe,
const struct dt_dev_pixelpipe_iop_t piece,
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_buffer_dsc_t::channels, dt_iop_demosaic_data_t::color_smoothing, d, darktable, dt_dev_pixelpipe_iop_t::data, DEMOSAIC_DUAL, dt_iop_demosaic_data_t::demosaicing_method, dt_iop_module_t::dev, DS_FACTOR, dt_dev_pixelpipe_iop_t::dsc_in, 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_buffer_dsc_t::filters, get_scales(), get_scales(), dt_iop_demosaic_data_t::green_eq, h, height, dt_image_t::height, dt_mipmap_buffer_t::height, dt_iop_roi_t::height, dt_image_t::id, dt_dev_pixelpipe_iop_t::iheight, dt_dev_pixelpipe_t::iheight, dt_dev_pixelpipe_t::image, dt_develop_t::image_storage, dt_dev_pixelpipe_iop_t::iwidth, dt_dev_pixelpipe_t::iwidth, LMMSE_GRP, local_laplacian_memory_use(), local_laplacian_singlebuffer_size(), LOWPASS_ALGO_BILATERAL, MAX, MAX_NUM_SCALES, MAX_RADIUS, MAXR, MIN, darktable_t::mipmap_cache, MODE_NLMEANS, MODE_NLMEANS_AUTO, NUM_BUCKETS, darktable_t::num_openmp_threads, num_steps_to_reach_equivalent_sigma(), p, P, dt_iop_module_t::params, dt_iop_diffuse_params_t::radius, dt_iop_diffuse_params_t::radius_center, RCD_TILESIZE, dt_dev_pixelpipe_iop_t::roi_in, dt_dev_pixelpipe_iop_t::roi_out, s_mode_bilateral, dt_iop_roi_t::scale, SHADHI_ALGO_BILATERAL, dt_iop_bilateral_data_t::sigma, sigma_r, sigma_s, t, thrs, void(), width, dt_image_t::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,
const struct dt_dev_pixelpipe_t pipe,
const struct dt_dev_pixelpipe_iop_t piece,
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().