diff options
Diffstat (limited to '')
-rw-r--r-- | get_ramps.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/get_ramps.h b/get_ramps.h new file mode 100644 index 0000000..8d4c011 --- /dev/null +++ b/get_ramps.h @@ -0,0 +1,30 @@ +/* See LICENSE file for copyright and license details. */ + +/* + * This file is intended to be included from + * libgamma_crtc_get_gamma_ramps{8,16,32,64,f,d} + */ + +#define CONCAT(A, B) A##B + + +gamma_ramps_any_t ramps_; +switch (this->partition->site->method) { +#define X(CONST, CNAME, MDEPTH, MRAMPS)\ +case CONST:\ + if (!(MDEPTH)) {\ + return APPEND_RAMPS(libgamma_dummy_crtc_get_gamma_)(this, ramps);\ + } else if ((DEPTH) == (MDEPTH)) {\ + return libgamma_##CNAME##_crtc_get_gamma_##MRAMPS(this, (void *)ramps);\ + } else {\ + ramps_.TYPE = *ramps;\ + return libgamma_internal_translated_ramp_get(this, &ramps_, DEPTH, MDEPTH, libgamma_crtc_get_gamma_##MRAMPS);\ + } +LIST_AVAILABLE_METHODS(X) +#undef X +default: + return LIBGAMMA_NO_SUCH_ADJUSTMENT_METHOD; +} + + +#undef CONCAT |