![]() |
Ansel 0.0
A darktable fork - bloat + design vision
|
#include "bauhaus/bauhaus.h"
#include "common/nlmeans_core.h"
#include "common/opencl.h"
#include "control/control.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 <gtk/gtk.h>
#include <stdlib.h>
Data Structures | |
struct | dt_iop_nlmeans_params_v1_t |
struct | dt_iop_nlmeans_params_t |
struct | dt_iop_nlmeans_gui_data_t |
struct | dt_iop_nlmeans_global_data_t |
Macros | |
#define | USE_NEW_IMPL_CL 0 |
#define | NUM_BUCKETS 4 |
Typedefs | |
typedef struct dt_iop_nlmeans_params_v1_t | dt_iop_nlmeans_params_v1_t |
typedef struct dt_iop_nlmeans_params_t | dt_iop_nlmeans_params_t |
typedef struct dt_iop_nlmeans_gui_data_t | dt_iop_nlmeans_gui_data_t |
typedef dt_iop_nlmeans_params_t | dt_iop_nlmeans_data_t |
typedef struct dt_iop_nlmeans_global_data_t | dt_iop_nlmeans_global_data_t |
Functions | |
const char * | name () |
const char * | aliases () |
const char ** | description (struct dt_iop_module_t *self) |
int | default_colorspace (dt_iop_module_t *self, dt_dev_pixelpipe_t *pipe, dt_dev_pixelpipe_iop_t *piece) |
int | legacy_params (dt_iop_module_t *self, const void *const old_params, const int old_version, void *new_params, const int new_version) |
int | default_group () |
int | flags () |
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) |
static void | process_cpu (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(*denoiser)(const float *const inbuf, float *const outbuf, const dt_iop_roi_t *const roi_in, const dt_iop_roi_t *const roi_out, const dt_nlmeans_param_t *const params)) |
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 | init_global (dt_iop_module_so_t *module) |
void | cleanup_global (dt_iop_module_so_t *module) |
void | commit_params (struct dt_iop_module_t *self, dt_iop_params_t *params, 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 | gui_init (dt_iop_module_t *self) |
#define NUM_BUCKETS 4 |
#define USE_NEW_IMPL_CL 0 |
typedef struct dt_iop_nlmeans_global_data_t dt_iop_nlmeans_global_data_t |
typedef struct dt_iop_nlmeans_gui_data_t dt_iop_nlmeans_gui_data_t |
typedef struct dt_iop_nlmeans_params_t dt_iop_nlmeans_params_t |
typedef struct dt_iop_nlmeans_params_v1_t dt_iop_nlmeans_params_v1_t |
const char * aliases | ( | ) |
void cleanup_global | ( | dt_iop_module_so_t * | module | ) |
References dt_iop_module_so_t::data, dt_opencl_free_kernel(), dt_iop_nlmeans_global_data_t::kernel_nlmeans_accu, dt_iop_nlmeans_global_data_t::kernel_nlmeans_dist, dt_iop_nlmeans_global_data_t::kernel_nlmeans_finish, dt_iop_nlmeans_global_data_t::kernel_nlmeans_horiz, dt_iop_nlmeans_global_data_t::kernel_nlmeans_init, and dt_iop_nlmeans_global_data_t::kernel_nlmeans_vert.
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 * | params, | ||
dt_dev_pixelpipe_t * | pipe, | ||
dt_dev_pixelpipe_iop_t * | piece | ||
) |
commit is the synch point between core and gui, so it copies params to pipe data.
References dt_iop_nlmeans_params_t::chroma, dt_dev_pixelpipe_iop_t::data, dt_iop_nlmeans_params_t::luma, and MAX.
int default_colorspace | ( | dt_iop_module_t * | self, |
dt_dev_pixelpipe_t * | pipe, | ||
dt_dev_pixelpipe_iop_t * | piece | ||
) |
References IOP_CS_LAB.
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_global | ( | dt_iop_module_so_t * | module | ) |
References dt_opencl_create_kernel(), dt_iop_nlmeans_global_data_t::kernel_nlmeans_accu, dt_iop_nlmeans_global_data_t::kernel_nlmeans_dist, dt_iop_nlmeans_global_data_t::kernel_nlmeans_finish, dt_iop_nlmeans_global_data_t::kernel_nlmeans_horiz, dt_iop_nlmeans_global_data_t::kernel_nlmeans_init, and dt_iop_nlmeans_global_data_t::kernel_nlmeans_vert.
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, and dt_dev_pixelpipe_iop_t::data_size.
int legacy_params | ( | dt_iop_module_t * | self, |
const void *const | old_params, | ||
const int | old_version, | ||
void * | new_params, | ||
const int | new_version | ||
) |
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 nlmeans_denoise(), and process_cpu().
|
static |
References dt_iop_nlmeans_params_t::chroma, dt_dev_pixelpipe_iop_t::colors, dt_dev_pixelpipe_iop_t::data, DT_DEV_PIXELPIPE_DISPLAY_MASK, DT_DEV_PIXELPIPE_PREVIEW, DT_DEV_PIXELPIPE_THUMBNAIL, dt_iop_alpha_copy(), dt_iop_have_required_input_format(), dt_iop_roi_t::height, dt_dev_pixelpipe_iop_t::iscale, dt_iop_nlmeans_params_t::luma, P, dt_dev_pixelpipe_iop_t::pipe, dt_iop_nlmeans_params_t::radius, dt_iop_roi_t::scale, dt_iop_nlmeans_params_t::strength, and dt_iop_roi_t::width.
Referenced by process().
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_dev_pixelpipe_iop_t::iscale, NUM_BUCKETS, P, dt_iop_nlmeans_params_t::radius, and dt_iop_roi_t::scale.