Ansel
0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
lut_viewer.h
Go to the documentation of this file.
1
/*
2
This file is part of Ansel,
3
Copyright (C) 2026 Aurélien PIERRE.
4
5
Ansel is free software: you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation, either version 3 of the License, or
8
(at your option) any later version.
9
10
Ansel is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU General Public License for more details.
14
15
You should have received a copy of the GNU General Public License
16
along with darktable. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
#pragma once
20
21
#include "
common/dtpthread.h
"
22
#include "
common/gui_module_api.h
"
23
#include "
common/iop_profile.h
"
24
25
#include <stddef.h>
26
#include <gtk/gtk.h>
27
28
typedef
struct
dt_lut_viewer_t
dt_lut_viewer_t
;
29
30
typedef
struct
dt_lut_viewer_control_node_t
31
{
32
float
input_rgb
[3];
33
float
output_rgb
[3];
34
}
dt_lut_viewer_control_node_t
;
35
40
dt_lut_viewer_t
*
dt_lut_viewer_new
(
dt_gui_module_t
*module);
41
46
void
dt_lut_viewer_destroy
(
dt_lut_viewer_t
**viewer);
47
51
GtkWidget
*
dt_lut_viewer_get_widget
(
dt_lut_viewer_t
*viewer);
52
59
void
dt_lut_viewer_set_lut
(
dt_lut_viewer_t
*viewer,
const
float
*clut, uint16_t level,
60
dt_pthread_rwlock_t
*clut_lock,
61
const
dt_iop_order_iccprofile_info_t
*lut_profile,
62
const
dt_iop_order_iccprofile_info_t
*display_profile);
63
69
void
dt_lut_viewer_set_control_nodes
(
dt_lut_viewer_t
*viewer,
70
const
dt_lut_viewer_control_node_t
*control_nodes,
71
size_t
control_node_count);
72
76
void
dt_lut_viewer_queue_draw
(
dt_lut_viewer_t
*viewer);
dtpthread.h
dt_pthread_rwlock_t
#define dt_pthread_rwlock_t
Definition
dtpthread.h:389
gui_module_api.h
iop_profile.h
dt_lut_viewer_destroy
void dt_lut_viewer_destroy(dt_lut_viewer_t **viewer)
Definition
lut_viewer.c:1379
dt_lut_viewer_queue_draw
void dt_lut_viewer_queue_draw(dt_lut_viewer_t *viewer)
Definition
lut_viewer.c:1433
dt_lut_viewer_set_control_nodes
void dt_lut_viewer_set_control_nodes(dt_lut_viewer_t *viewer, const dt_lut_viewer_control_node_t *control_nodes, size_t control_node_count)
Definition
lut_viewer.c:1413
dt_lut_viewer_get_widget
GtkWidget * dt_lut_viewer_get_widget(dt_lut_viewer_t *viewer)
Definition
lut_viewer.c:1392
dt_lut_viewer_new
dt_lut_viewer_t * dt_lut_viewer_new(dt_gui_module_t *module)
Definition
lut_viewer.c:1275
dt_lut_viewer_set_lut
void dt_lut_viewer_set_lut(dt_lut_viewer_t *viewer, const float *clut, uint16_t level, dt_pthread_rwlock_t *clut_lock, const dt_iop_order_iccprofile_info_t *lut_profile, const dt_iop_order_iccprofile_info_t *display_profile)
Definition
lut_viewer.c:1397
GtkWidget
struct _GtkWidget GtkWidget
Definition
splash.h:29
dt_gui_module_t
The dt_gui_module_t type is the intersection between a dt_lib_module_t and a dt_iop_module_t structur...
Definition
gui_module_api.h:42
dt_iop_order_iccprofile_info_t
Definition
iop_profile.h:52
dt_lut_viewer_control_node_t
Definition
lut_viewer.h:31
dt_lut_viewer_control_node_t::input_rgb
float input_rgb[3]
Definition
lut_viewer.h:32
dt_lut_viewer_control_node_t::output_rgb
float output_rgb[3]
Definition
lut_viewer.h:33
dt_lut_viewer_t
Definition
lut_viewer.c:73
src
common
lut_viewer.h
Generated by
1.9.8