Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
format.h
Go to the documentation of this file.
1/*
2 This file is part of darktable,
3 Copyright (C) 2010-2011 Henrik Andersson.
4 Copyright (C) 2010 johannes hanika.
5 Copyright (C) 2010 Pascal de Bruijn.
6 Copyright (C) 2012 Richard Wonka.
7 Copyright (C) 2013-2014 Jérémy Rosen.
8 Copyright (C) 2014-2015, 2020 Pascal Obry.
9 Copyright (C) 2015-2016 Tobias Ellinghaus.
10 Copyright (C) 2016 Roman Lebedev.
11 Copyright (C) 2018 Edgardo Hoszowski.
12 Copyright (C) 2020 Aurélien PIERRE.
13 Copyright (C) 2021 Ralf Brown.
14 Copyright (C) 2022 Martin Bařinka.
15
16 darktable is free software: you can redistribute it and/or modify
17 it under the terms of the GNU General Public License as published by
18 the Free Software Foundation, either version 3 of the License, or
19 (at your option) any later version.
20
21 darktable is distributed in the hope that it will be useful,
22 but WITHOUT ANY WARRANTY; without even the implied warranty of
23 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24 GNU General Public License for more details.
25
26 You should have received a copy of the GNU General Public License
27 along with darktable. If not, see <http://www.gnu.org/licenses/>.
28*/
29
30#pragma once
31
32#include <stddef.h>
33#include <stdint.h>
34#include "common/darktable.h"
35
36#ifdef __cplusplus
37extern "C" {
38#endif
39
42struct dt_iop_module_t;
43
50
51typedef struct dt_iop_buffer_dsc_t
52{
54 unsigned int channels;
58 size_t bpp;
60 uint32_t filters;
70 uint8_t xtrans[6][6];
71
72 struct
73 {
77
78 struct
79 {
83
86
88 int cst;
89
91
93size_t dt_iop_buffer_dsc_to_bpp(const struct dt_iop_buffer_dsc_t *dsc);
94
95void default_input_format(struct dt_iop_module_t *self, struct dt_dev_pixelpipe_t *pipe,
96 struct dt_dev_pixelpipe_iop_t *piece, struct dt_iop_buffer_dsc_t *dsc);
97
98void default_output_format(struct dt_iop_module_t *self, struct dt_dev_pixelpipe_t *pipe,
99 struct dt_dev_pixelpipe_iop_t *piece, struct dt_iop_buffer_dsc_t *dsc);
100
101int default_blend_colorspace(struct dt_iop_module_t *self, struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece);
102
103#ifdef __cplusplus
104}
105#endif
106
107
108// clang-format off
109// modelines: These editor modelines have been set for all relevant files by tools/update_modelines.py
110// vim: shiftwidth=2 expandtab tabstop=2 cindent
111// kate: tab-indents: off; indent-width 2; replace-tabs on; indent-mode cstyle; remove-trailing-spaces modified;
112// clang-format on
void default_input_format(struct dt_iop_module_t *self, struct dt_dev_pixelpipe_t *pipe, struct dt_dev_pixelpipe_iop_t *piece, struct dt_iop_buffer_dsc_t *dsc)
Definition format.c:57
int default_blend_colorspace(struct dt_iop_module_t *self, struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece)
void default_output_format(struct dt_iop_module_t *self, struct dt_dev_pixelpipe_t *pipe, struct dt_dev_pixelpipe_iop_t *piece, struct dt_iop_buffer_dsc_t *dsc)
Definition format.c:75
void dt_iop_buffer_dsc_update_bpp(struct dt_iop_buffer_dsc_t *dsc)
Definition format.c:28
size_t dt_iop_buffer_dsc_to_bpp(const struct dt_iop_buffer_dsc_t *dsc)
Definition format.c:52
dt_iop_buffer_type_t
Definition format.h:44
@ TYPE_FLOAT
Definition format.h:46
@ TYPE_UNKNOWN
Definition format.h:45
@ TYPE_UINT8
Definition format.h:48
@ TYPE_UINT16
Definition format.h:47
float dt_aligned_pixel_t[4]
dt_aligned_pixel_t coeffs
Definition format.h:81
uint32_t filters
Definition format.h:60
struct dt_iop_buffer_dsc_t::@29 rawprepare
uint16_t raw_black_level
Definition format.h:74
struct dt_iop_buffer_dsc_t::@30 temperature
unsigned int channels
Definition format.h:54
uint8_t xtrans[6][6]
Definition format.h:70
dt_iop_buffer_type_t datatype
Definition format.h:56
dt_aligned_pixel_t processed_maximum
Definition format.h:85
uint16_t raw_white_point
Definition format.h:75