|  | Ansel 0.0
    A darktable fork - bloat + design vision | 
#include "glib.h"#include "bauhaus/bauhaus.h"#include "common/imagebuf.h"#include "control/control.h"#include "develop/develop.h"#include "develop/imageop.h"#include "develop/imageop_math.h"#include "develop/imageop_gui.h"#include "develop/tiling.h"#include "gui/gtk.h"#include "iop/iop_api.h"#include <assert.h>#include <math.h>#include <stdlib.h>#include <string.h>#include "iop/Permutohedral.h"#include <gtk/gtk.h>#include <inttypes.h> Include dependency graph for bilateral.cc:
 Include dependency graph for bilateral.cc:| Data Structures | |
| struct | dt_iop_bilateral_params_t | 
| struct | dt_iop_bilateral_gui_data_t | 
| struct | dt_iop_bilateral_data_t | 
| Macros | |
| #define | __STDC_FORMAT_MACROS | 
| Typedefs | |
| typedef struct dt_iop_bilateral_params_t | dt_iop_bilateral_params_t | 
| typedef struct dt_iop_bilateral_gui_data_t | dt_iop_bilateral_gui_data_t | 
| typedef struct dt_iop_bilateral_data_t | dt_iop_bilateral_data_t | 
| Functions | |
| const char * | name () | 
| const char * | aliases () | 
| int | default_group () | 
| int | flags () | 
| int | default_colorspace (dt_iop_module_t *self, dt_dev_pixelpipe_t *pipe, dt_dev_pixelpipe_iop_t *piece) | 
| const char ** | description (struct dt_iop_module_t *self) | 
| void | process (struct dt_iop_module_t *self, 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) | 
| void | commit_params (struct dt_iop_module_t *self, dt_iop_params_t *p1, dt_dev_pixelpipe_t *pipe, dt_dev_pixelpipe_iop_t *piece) | 
| void | init_pipe (struct dt_iop_module_t *self, dt_dev_pixelpipe_t *pipe, dt_dev_pixelpipe_iop_t *piece) | 
| void | cleanup_pipe (struct dt_iop_module_t *self, dt_dev_pixelpipe_t *pipe, dt_dev_pixelpipe_iop_t *piece) | 
| 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) | 
| void | gui_init (dt_iop_module_t *self) | 
| #define __STDC_FORMAT_MACROS | 
| typedef struct dt_iop_bilateral_data_t dt_iop_bilateral_data_t | 
| typedef struct dt_iop_bilateral_gui_data_t dt_iop_bilateral_gui_data_t | 
| typedef struct dt_iop_bilateral_params_t dt_iop_bilateral_params_t | 
implementation of the 5d-color bilateral filter using andrew adams et al.'s permutohedral lattice, which they kindly provided online as c++ code, under new bsd license.
| const char * aliases | ( | ) | 
| void cleanup_pipe | ( | struct dt_iop_module_t * | self, | 
| dt_dev_pixelpipe_t * | pipe, | ||
| dt_dev_pixelpipe_iop_t * | piece | ||
| ) | 
References dt_dev_pixelpipe_iop_t::data.
| void commit_params | ( | struct dt_iop_module_t * | self, | 
| dt_iop_params_t * | p1, | ||
| dt_dev_pixelpipe_t * | pipe, | ||
| dt_dev_pixelpipe_iop_t * | piece | ||
| ) | 
References dt_dev_pixelpipe_iop_t::data, and dt_iop_bilateral_data_t::sigma.
| int default_colorspace | ( | dt_iop_module_t * | self, | 
| dt_dev_pixelpipe_t * | pipe, | ||
| dt_dev_pixelpipe_iop_t * | piece | ||
| ) | 
References IOP_CS_RGB.
| int default_group | ( | ) | 
References IOP_GROUP_REPAIR.
| const char ** description | ( | struct dt_iop_module_t * | self | ) | 
References dt_iop_set_description().
| int flags | ( | ) | 
References IOP_FLAGS_ALLOW_TILING, and IOP_FLAGS_SUPPORTS_BLENDING.
| void gui_init | ( | dt_iop_module_t * | self | ) | 
| void init_pipe | ( | struct dt_iop_module_t * | self, | 
| dt_dev_pixelpipe_t * | pipe, | ||
| dt_dev_pixelpipe_iop_t * | piece | ||
| ) | 
References dt_dev_pixelpipe_iop_t::data.
| const char * name | ( | ) | 
| void process | ( | struct dt_iop_module_t * | self, | 
| 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 | ||
| ) | 
References PermutohedralLattice< D, VD >::blur(), dt_dev_pixelpipe_iop_t::colors, darktable, dt_dev_pixelpipe_iop_t::data, DT_ALIGNED_PIXEL, dt_alloc_perthread_float(), DT_DEV_PIXELPIPE_THUMBNAIL, dt_free_align, dt_get_perthread, dt_get_thread_num(), dt_iop_alpha_copy(), dt_iop_image_copy_by_size(), for_each_channel, dt_iop_roi_t::height, m, PermutohedralLattice< D, VD >::merge_splat_threads(), darktable_t::num_openmp_threads, dt_dev_pixelpipe_iop_t::pipe, dt_iop_roi_t::scale, dt_iop_bilateral_data_t::sigma, PermutohedralLattice< D, VD >::slice(), PermutohedralLattice< D, VD >::splat(), weight(), and dt_iop_roi_t::width.
| 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 | ||
| ) | 
References dt_dev_pixelpipe_iop_t::data, dt_iop_roi_t::scale, and dt_iop_bilateral_data_t::sigma.