diff options
Diffstat (limited to 'src/lib/fake-quartz-cg.h')
-rw-r--r-- | src/lib/fake-quartz-cg.h | 120 |
1 files changed, 0 insertions, 120 deletions
diff --git a/src/lib/fake-quartz-cg.h b/src/lib/fake-quartz-cg.h deleted file mode 100644 index 361a73c..0000000 --- a/src/lib/fake-quartz-cg.h +++ /dev/null @@ -1,120 +0,0 @@ -/* See LICENSE file for copyright and license details. */ -#ifndef LIBGAMMA_FAKE_QUARTZ_CG_H -#define LIBGAMMA_FAKE_QUARTZ_CG_H - -#ifndef FAKE_LIBGAMMA_METHOD_QUARTZ_CORE_GRAPHICS -# error Including fake-quartz-cg.h without FAKE_LIBGAMMA_METHOD_QUARTZ_CORE_GRAPHICS -#endif - - -#ifndef __GNUC__ -# define __attribute__(x) -#endif - - -/* This header file contains some capabilities of - * <CoreGraphics/CGDirectDisplay.h> and <CoreGraphics/CGError.h>, - * and can be used modify gamma ramps without Mac OS X and Quartz - * but with its API. - * - * The content of this file is based on the documentation found on: - * - * https://developer.apple.com/library/mac/documentation/GraphicsImaging/Reference/Quartz_Services_Ref/Reference/reference.html - * - * https://developer.apple.com/library/mac/documentation/CoreGraphics/Reference/CoreGraphicsConstantsRef/Reference/reference.html#//apple_ref/c/tdef/CGError */ - - -#include <stdint.h> - - -/** - * Numerical `typedef` for errors that occur in CoreGraphics calls - */ -typedef int32_t CGError; - -/** - * The call was successful - */ -#define kCGErrorSuccess 0 - -/** - * The data type that is used for the values in the gamma ramps - */ -typedef float CGGammaValue; - -/** - * The data type for display ID:s - */ -typedef uint32_t CGDirectDisplayID; - - -/** - * Get a list of all online displays on the system - * - * @param max_size The number of elements allocated for `displays_out` - * @param displays_out List ot fill with the ID for each online display on the system - * @param count_out Output parameter for the number of elements stored in `displays_out` - * if `displays_out` is too small to fit all display ID:s, - * `*count_out` will be `max_size` - * @return `kCGErrorSuccess` on success, and error number of failure - */ -CGError CGGetOnlineDisplayList(uint32_t, CGDirectDisplayID *restrict, uint32_t *restrict); - -/** - * Set the gamma ramps for a display - * - * @param display The ID of the display - * @param gamma_size The number of stops in gamma ramps - * @param red The gamma ramp for the red channel - * @param green The gamma ramp for the green channel - * @param blue The gamma ramp for the blue channel - * @return `kCGErrorSuccess` on success, and error number of failure - */ -CGError CGSetDisplayTransferByTable(CGDirectDisplayID, uint32_t, const CGGammaValue *, const CGGammaValue *, const CGGammaValue *); - -/** - * Get the current gamma ramps for a display - * - * @param display The ID of the display - * @param gamma_size The number of stops you have allocated for the gamma ramps - * @param red Table allocated for the gamma ramp for the red channel - * @param green Table allocated for the gamma ramp for the green channel - * @param blue Table allocated for the gamma ramp for the blue channel - * @param gamma_size_out Output parameter for the actual number of stops in the gamma ramps - * @return `kCGErrorSuccess` on success, and error number of failure - */ -CGError CGGetDisplayTransferByTable(CGDirectDisplayID, uint32_t, CGGammaValue *restrict, - CGGammaValue *restrict, CGGammaValue *restrict, uint32_t *restrict); - -/** - * Restore each display's gamma ramps to the settings in ColorSync - */ -void CGDisplayRestoreColorSyncSettings(void); - -/** - * Get the number of stops in the gamma ramps for a display - * - * @param display The ID of the display - * @return The number of stops in the gamma ramps - */ -uint32_t CGDisplayGammaTableCapacity(CGDirectDisplayID) __attribute__((const)); - - -/* The follow part most only be used when this module is used, - * it cannot be used when the real CoreGraphics is used. - * CoreGraphics does not have this function, it is added so - * that there is a way to cleanly close the X connection - * and free resources needed by this module. */ - -/** - * Release resources used by the backend - */ -void close_fake_quartz_cg(void); - - - -#ifndef __GNUC__ -# undef __attribute__ -#endif - -#endif |