XSolarisGetVisualGamma(3)XSolarisGetVisualGamma(3)NAMEXSolarisGetVisualGamma - obtain gamma information for a visual
SYNTAX
#include <X11/Xmu/XmuSolaris.h>
Status
XSolarisGetVisualGamma(Display *display, int screen_number,
Visual *visual, double *gamma)
ARGUMENTS
display Specifies the connection to the X server.
screen_number
Specifies the number of the screen.
visual Specifies the visual.
gamma Returns the gamma value for the specified visual.
DESCRIPTION
The XSolarisGetVisualGamma function returns the gamma value of a speci‐
fied visual. This value is the exponent of the power function describ‐
ing the intensity response of colors displayed using that visual. This
is the intensity response of the entire path from the frame buffer
pixel store through the monitor. The equation of the intensity
response is:
IntensityOut = (FramebufferColor)**gamma
(i.e. the color in the frame buffer raised to the power of gamma).
FramebufferColor refers to the the RGB values stored in the frame buf‐
fer pixel store and processed by any color mapping LUTs that are in the
output path.
Gamma correction is necessary because of the way color intensities are
perceived by the human eye. Without gamma correction, the eye inter‐
prets changes to the color intensity incorrectly. Small changes to low
intensity light appear to have more effect than the equivalent change
to higher intensity light. This distorts the appearance of graphical
entities which depend on accurate color, such as images, anti-aliased
lines and transparent polygons.
Gamma correction results in a linear mapping between color values and
percieved intensity. Gamma corrected visuals are also called linear
visuals for this reason. Linear visuals have a gamma value of 1.0.
Note: the term "gamma" used here refers the mapping applied along the
entire path(that is, the value percieved by the end user), not merely
the exponent of the gamma correction function.
The gamma value returned defines the color-to-intensity mapping for all
three channels: red, green, and blue.
A status of Success is returned if the function was able to determine
the gamma successfully. If a request failure occured while calling the
function, a BadAccess error code is returned. If there is an internal
inconsistency (e.g. the gamma value for one of the color channels is
different from the others) a BadMatch error code is returned. Whenever
an error code is returned, the argument gamma is left untouched.
The gamma value returned represents the best information available on
the intensity response of the visual. Depending on the device, it may
or may not include the actual monitor characteristics (some devices
have no way of determining the type of monitor so they may assume a
default monitor gamma). As such, it represents the system's "best
guess" about the intensity response. Since this function gets its
information from the same property used by Solaris color managment sys‐
tems, if more accurate information on the monitor response is config‐
ured or calibrated through these systems, this function will return a
more accurate value for gamma.
If the intensity mapping is not a power function, the returned gamma
value may only be approximate. This should usually happen only when
the device gamma correction has been incorrectly configured.
To use this function, an application should link with libXmu.
SEE ALSO
(Visuals and Display Devices chapter)
11 March 1994 XSolarisGetVisualGamma(3)