Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
lowlight.c File Reference
#include "bauhaus/bauhaus.h"
#include "common/colorspaces_inline_conversions.h"
#include "common/darktable.h"
#include "common/debug.h"
#include "common/opencl.h"
#include "control/conf.h"
#include "control/control.h"
#include "develop/develop.h"
#include "develop/imageop_gui.h"
#include "dtgtk/drawingarea.h"
#include "gui/draw.h"
#include "gui/gtk.h"
#include "gui/presets.h"
#include "iop/iop_api.h"
#include <inttypes.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
+ Include dependency graph for lowlight.c:

Data Structures

struct  dt_iop_lowlight_params_t
 
struct  dt_iop_lowlight_gui_data_t
 
struct  dt_iop_lowlight_data_t
 
struct  dt_iop_lowlight_global_data_t
 

Macros

#define DT_IOP_LOWLIGHT_INSET   DT_PIXEL_APPLY_DPI(5)
 
#define DT_IOP_LOWLIGHT_RES   64
 
#define DT_IOP_LOWLIGHT_BANDS   6
 
#define DT_IOP_LOWLIGHT_LUT_RES   0x10000
 

Typedefs

typedef struct dt_iop_lowlight_params_t dt_iop_lowlight_params_t
 
typedef struct dt_iop_lowlight_gui_data_t dt_iop_lowlight_gui_data_t
 
typedef struct dt_iop_lowlight_data_t dt_iop_lowlight_data_t
 
typedef struct dt_iop_lowlight_global_data_t dt_iop_lowlight_global_data_t
 

Functions

const char * name ()
 
const char ** description (struct dt_iop_module_t *self)
 
int flags ()
 
int default_group ()
 
int default_colorspace (dt_iop_module_t *self, dt_dev_pixelpipe_t *pipe, dt_dev_pixelpipe_iop_t *piece)
 
static float lookup (const float *lut, const float i)
 
void process (struct dt_iop_module_t *self, dt_dev_pixelpipe_iop_t *piece, const void *const i, void *const o, 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 *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 gui_update (struct dt_iop_module_t *self)
 
void init (dt_iop_module_t *module)
 
void init_presets (dt_iop_module_so_t *self)
 
static void dt_iop_lowlight_get_params (dt_iop_lowlight_params_t *p, const double mouse_x, const double mouse_y, const float rad)
 
static gboolean lowlight_draw (GtkWidget *widget, cairo_t *crf, gpointer user_data)
 
static gboolean lowlight_motion_notify (GtkWidget *widget, GdkEventMotion *event, gpointer user_data)
 
static gboolean lowlight_button_press (GtkWidget *widget, GdkEventButton *event, gpointer user_data)
 
static gboolean lowlight_button_release (GtkWidget *widget, GdkEventButton *event, gpointer user_data)
 
static gboolean lowlight_leave_notify (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data)
 
static gboolean lowlight_scrolled (GtkWidget *widget, GdkEventScroll *event, gpointer user_data)
 
void gui_init (struct dt_iop_module_t *self)
 
void gui_cleanup (struct dt_iop_module_t *self)
 

Macro Definition Documentation

◆ DT_IOP_LOWLIGHT_BANDS

#define DT_IOP_LOWLIGHT_BANDS   6

◆ DT_IOP_LOWLIGHT_INSET

#define DT_IOP_LOWLIGHT_INSET   DT_PIXEL_APPLY_DPI(5)

◆ DT_IOP_LOWLIGHT_LUT_RES

#define DT_IOP_LOWLIGHT_LUT_RES   0x10000

◆ DT_IOP_LOWLIGHT_RES

#define DT_IOP_LOWLIGHT_RES   64

Typedef Documentation

◆ dt_iop_lowlight_data_t

◆ dt_iop_lowlight_global_data_t

◆ dt_iop_lowlight_gui_data_t

◆ dt_iop_lowlight_params_t

Function Documentation

◆ cleanup_global()

◆ cleanup_pipe()

◆ commit_params()

◆ default_colorspace()

int default_colorspace ( dt_iop_module_t self,
dt_dev_pixelpipe_t pipe,
dt_dev_pixelpipe_iop_t piece 
)

References IOP_CS_LAB.

◆ default_group()

int default_group ( )

References IOP_GROUP_EFFECTS.

◆ description()

const char ** description ( struct dt_iop_module_t self)

◆ dt_iop_lowlight_get_params()

static void dt_iop_lowlight_get_params ( dt_iop_lowlight_params_t p,
const double  mouse_x,
const double  mouse_y,
const float  rad 
)
static

References DT_IOP_LOWLIGHT_BANDS, and f().

Referenced by lowlight_draw(), and lowlight_motion_notify().

◆ flags()

◆ gui_cleanup()

◆ gui_init()

◆ gui_update()

◆ init()

◆ init_global()

◆ init_pipe()

◆ init_presets()

◆ lookup()

static float lookup ( const float *  lut,
const float  i 
)
static

References DT_IOP_LOWLIGHT_LUT_RES, f(), MAX, and MIN.

Referenced by process().

◆ lowlight_button_press()

◆ lowlight_button_release()

static gboolean lowlight_button_release ( GtkWidget *  widget,
GdkEventButton *  event,
gpointer  user_data 
)
static

References FALSE, dt_iop_module_t::gui_data, and TRUE.

Referenced by gui_init().

◆ lowlight_draw()

◆ lowlight_leave_notify()

static gboolean lowlight_leave_notify ( GtkWidget *  widget,
GdkEventCrossing *  event,
gpointer  user_data 
)
static

References dt_iop_module_t::gui_data, and TRUE.

Referenced by gui_init().

◆ lowlight_motion_notify()

static gboolean lowlight_motion_notify ( GtkWidget *  widget,
GdkEventMotion *  event,
gpointer  user_data 
)
static

◆ lowlight_scrolled()

static gboolean lowlight_scrolled ( GtkWidget *  widget,
GdkEventScroll *  event,
gpointer  user_data 
)
static

◆ name()

const char * name ( )

◆ process()