diff options
author | Mattias Andrée <maandree@operamail.com> | 2014-05-21 07:43:09 +0200 |
---|---|---|
committer | Mattias Andrée <maandree@operamail.com> | 2014-05-21 07:43:09 +0200 |
commit | 35444bf35a56805029a090a408d5a51464803cae (patch) | |
tree | 4bd2c51ebfba4ab4a7ef6e47f034941146de9afb /src/libgamma-method.h | |
parent | reorder functions (diff) | |
download | libgamma-35444bf35a56805029a090a408d5a51464803cae.tar.gz libgamma-35444bf35a56805029a090a408d5a51464803cae.tar.bz2 libgamma-35444bf35a56805029a090a408d5a51464803cae.tar.xz |
m + add gamma sets with mapping function rather than lookup tables
Signed-off-by: Mattias Andrée <maandree@operamail.com>
Diffstat (limited to '')
-rw-r--r-- | src/libgamma-method.h | 35 |
1 files changed, 27 insertions, 8 deletions
diff --git a/src/libgamma-method.h b/src/libgamma-method.h index 1f54f62..8e953b3 100644 --- a/src/libgamma-method.h +++ b/src/libgamma-method.h @@ -148,10 +148,18 @@ typedef struct libgamma_method_capabilities { * Whether the adjustment method supports `libgamma_crtc_restore` */ int crtc_restore : 1; + + /** + * Whether the `red_gamma_size`, `green_gamma_size` and `blue_gamma_size` + * fields in `libgamma_crtc_information_t` will always have the same + * values as each other for the adjustment method + */ + int identical_gamma_sizes : 1; /** - * Whether the `gamma_size` field in `libgamma_crtc_information_t` - * will always be filled with the same value for the adjustment method + * Whether the `red_gamma_size`, `green_gamma_size` and `blue_gamma_size` + * fields in `libgamma_crtc_information_t` will always be filled with the + * same value for the adjustment method */ int fixed_gamma_size : 1; @@ -324,7 +332,8 @@ typedef struct libgamma_crtc_state { /** * For a `libgamma_crtc_information_t` fill in the - * value for `gamma_size` and report errors to `gamma_size_error` + * values for `red_gamma_size`, `green_gamma_size` and `blue_gamma_size` + * and report errors to `gamma_size_error` */ #define CRTC_INFO_GAMMA_SIZE (1 << 5) @@ -477,9 +486,19 @@ typedef struct libgamma_crtc_information { /** - * The size of the encoding axes of gamma ramps + * The size of the encoding axis of the red gamma ramp + */ + size_t red_gamma_size; + + /** + * The size of the encoding axis of the green gamma ramp + */ + size_t green_gamma_size; + + /** + * The size of the encoding axis of the blue gamma ramp */ - size_t gamma_size; + size_t blue_gamma_size; /** * Zero on success, positive it holds the value `errno` had @@ -790,17 +809,17 @@ typedef struct libgamma_gamma_rampsd /** * The gamma ramp for the red channel */ - float* red; + double* red; /** * The gamma ramp for the green channel */ - float* green; + double* green; /** * The gamma ramp for the blue channel */ - float* blue; + double* blue; } libgamma_gamma_rampsd_t; |