\input texinfo @c -*-texinfo-*- @c %**start of header @setfilename libgamma.info @settitle blueshift @afourpaper @documentencoding UTF-8 @documentlanguage en @finalout @c %**end of header @dircategory Library @direntry * libgamma: (libgamma). Display server abstraction layer for gamma ramp adjustments @end direntry @copying Copyright @copyright{} 2014 Mattias Andrée @quotation Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU Free Documentation License''. @end quotation @end copying @ifnottex @node Top @top libgamma -- Display server abstraction layer for gamma ramp adjustments @insertcopying @end ifnottex @titlepage @title libgamma @subtitle Display server abstraction layer for gamma ramp adjustments @author by Mattias Andrée (maandree) @page @c @center `' @vskip 0pt plus 1filll @insertcopying @end titlepage @contents @menu * Overview:: Brief overview of @command{libgamma}. * GNU Free Documentation License:: Copying and sharing this manual. @end menu @node Overview @chapter Overview @command{libgamma} is a C library that aims to abstract away the display server when adjusting the colours curves for monitors via gamma ramps, and to be cross-platform. @command{libgamma} have support for the X RandR (Resize and Rotate) extension, the X VidMode extension and under Linux the Direct Rendering Manager which lets software work with graphics outside of graphical environments. Additionally @command{libgamma} have support for Windows Graphics Device Interface (Windows GDI) under Linux and Quartz using CoreGraphics under OS X. However Windows GDI and Quartz/CoreGraphics do not receive first-party testing on their target platforms but do receive first-party testing using a compatibility layer that translates the calls to RandR calls. Furthermore @command{libgamma} provides a dummy method that can be used to ignore adjustments and can be controlled from a another program to pretend like the environment has changed. This can be used test how well your software handles such events. It can also be configured at runtime to use another adjustment method such as RandR. @node GNU Free Documentation License @appendix GNU Free Documentation License @include fdl.texinfo @bye