sync code with last improvements from OpenBSD
This commit is contained in:
commit
88965415ff
26235 changed files with 29195616 additions and 0 deletions
815
lib/libX11/include/X11/Xcms.h
Normal file
815
lib/libX11/include/X11/Xcms.h
Normal file
|
@ -0,0 +1,815 @@
|
|||
|
||||
/*
|
||||
* Code and supporting documentation (c) Copyright 1990 1991 Tektronix, Inc.
|
||||
* All Rights Reserved
|
||||
*
|
||||
* This file is a component of an X Window System-specific implementation
|
||||
* of Xcms based on the TekColor Color Management System. Permission is
|
||||
* hereby granted to use, copy, modify, sell, and otherwise distribute this
|
||||
* software and its documentation for any purpose and without fee, provided
|
||||
* that this copyright, permission, and disclaimer notice is reproduced in
|
||||
* all copies of this software and in supporting documentation. TekColor
|
||||
* is a trademark of Tektronix, Inc.
|
||||
*
|
||||
* Tektronix makes no representation about the suitability of this software
|
||||
* for any purpose. It is provided "as is" and with all faults.
|
||||
*
|
||||
* TEKTRONIX DISCLAIMS ALL WARRANTIES APPLICABLE TO THIS SOFTWARE,
|
||||
* INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
|
||||
* PARTICULAR PURPOSE. IN NO EVENT SHALL TEKTRONIX BE LIABLE FOR ANY
|
||||
* SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER
|
||||
* RESULTING FROM LOSS OF USE, DATA, OR PROFITS, WHETHER IN AN ACTION OF
|
||||
* CONTRACT, NEGLIGENCE, OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
||||
* CONNECTION WITH THE USE OR THE PERFORMANCE OF THIS SOFTWARE.
|
||||
*
|
||||
*
|
||||
* DESCRIPTION
|
||||
* Public include file for X Color Management System
|
||||
*/
|
||||
#ifndef _X11_XCMS_H_
|
||||
#define _X11_XCMS_H_
|
||||
|
||||
#include <X11/Xlib.h>
|
||||
|
||||
/* The Xcms structs are full of implicit padding to properly align members.
|
||||
We can't clean that up without breaking ABI, so tell clang not to bother
|
||||
complaining about it. */
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic push
|
||||
#pragma clang diagnostic ignored "-Wpadded"
|
||||
#endif
|
||||
|
||||
/*
|
||||
* XCMS Status Values
|
||||
*/
|
||||
#define XcmsFailure 0
|
||||
#define XcmsSuccess 1
|
||||
#define XcmsSuccessWithCompression 2
|
||||
|
||||
/*
|
||||
* Color Space Format ID's
|
||||
* Color Space ID's are of XcmsColorFormat type.
|
||||
*
|
||||
* bit 31
|
||||
* 0 == Device-Independent
|
||||
* 1 == Device-Dependent
|
||||
*
|
||||
* bit 30:
|
||||
* 0 == Registered with X Consortium
|
||||
* 1 == Unregistered
|
||||
*/
|
||||
#define XcmsUndefinedFormat (XcmsColorFormat)0x00000000
|
||||
#define XcmsCIEXYZFormat (XcmsColorFormat)0x00000001
|
||||
#define XcmsCIEuvYFormat (XcmsColorFormat)0x00000002
|
||||
#define XcmsCIExyYFormat (XcmsColorFormat)0x00000003
|
||||
#define XcmsCIELabFormat (XcmsColorFormat)0x00000004
|
||||
#define XcmsCIELuvFormat (XcmsColorFormat)0x00000005
|
||||
#define XcmsTekHVCFormat (XcmsColorFormat)0x00000006
|
||||
#define XcmsRGBFormat (XcmsColorFormat)0x80000000
|
||||
#define XcmsRGBiFormat (XcmsColorFormat)0x80000001
|
||||
|
||||
/*
|
||||
* State of XcmsPerScrnInfo
|
||||
*/
|
||||
#define XcmsInitNone 0x00 /* no initialization attempted */
|
||||
#define XcmsInitSuccess 0x01 /* initialization successful */
|
||||
#define XcmsInitFailure 0xff /* failure, use defaults */
|
||||
|
||||
#define DisplayOfCCC(ccc) ((ccc)->dpy)
|
||||
#define ScreenNumberOfCCC(ccc) ((ccc)->screenNumber)
|
||||
#define VisualOfCCC(ccc) ((ccc)->visual)
|
||||
#define ClientWhitePointOfCCC(ccc) (&(ccc)->clientWhitePt)
|
||||
#define ScreenWhitePointOfCCC(ccc) (&(ccc)->pPerScrnInfo->screenWhitePt)
|
||||
#define FunctionSetOfCCC(ccc) ((ccc)->pPerScrnInfo->functionSet)
|
||||
|
||||
typedef unsigned long XcmsColorFormat; /* Color Space Format ID */
|
||||
|
||||
typedef double XcmsFloat;
|
||||
|
||||
/*
|
||||
* Device RGB
|
||||
*/
|
||||
typedef struct {
|
||||
unsigned short red; /* scaled from 0x0000 to 0xffff */
|
||||
unsigned short green; /* scaled from 0x0000 to 0xffff */
|
||||
unsigned short blue; /* scaled from 0x0000 to 0xffff */
|
||||
} XcmsRGB;
|
||||
|
||||
/*
|
||||
* RGB Intensity
|
||||
*/
|
||||
typedef struct {
|
||||
XcmsFloat red; /* 0.0 - 1.0 */
|
||||
XcmsFloat green; /* 0.0 - 1.0 */
|
||||
XcmsFloat blue; /* 0.0 - 1.0 */
|
||||
} XcmsRGBi;
|
||||
|
||||
/*
|
||||
* CIE XYZ
|
||||
*/
|
||||
typedef struct {
|
||||
XcmsFloat X;
|
||||
XcmsFloat Y;
|
||||
XcmsFloat Z;
|
||||
} XcmsCIEXYZ;
|
||||
|
||||
/*
|
||||
* CIE u'v'Y
|
||||
*/
|
||||
typedef struct {
|
||||
XcmsFloat u_prime; /* 0.0 - 1.0 */
|
||||
XcmsFloat v_prime; /* 0.0 - 1.0 */
|
||||
XcmsFloat Y; /* 0.0 - 1.0 */
|
||||
} XcmsCIEuvY;
|
||||
|
||||
/*
|
||||
* CIE xyY
|
||||
*/
|
||||
typedef struct {
|
||||
XcmsFloat x; /* 0.0 - 1.0 */
|
||||
XcmsFloat y; /* 0.0 - 1.0 */
|
||||
XcmsFloat Y; /* 0.0 - 1.0 */
|
||||
} XcmsCIExyY;
|
||||
|
||||
/*
|
||||
* CIE L*a*b*
|
||||
*/
|
||||
typedef struct {
|
||||
XcmsFloat L_star; /* 0.0 - 100.0 */
|
||||
XcmsFloat a_star;
|
||||
XcmsFloat b_star;
|
||||
} XcmsCIELab;
|
||||
|
||||
/*
|
||||
* CIE L*u*v*
|
||||
*/
|
||||
typedef struct {
|
||||
XcmsFloat L_star; /* 0.0 - 100.0 */
|
||||
XcmsFloat u_star;
|
||||
XcmsFloat v_star;
|
||||
} XcmsCIELuv;
|
||||
|
||||
/*
|
||||
* TekHVC
|
||||
*/
|
||||
typedef struct {
|
||||
XcmsFloat H; /* 0.0 - 360.0 */
|
||||
XcmsFloat V; /* 0.0 - 100.0 */
|
||||
XcmsFloat C; /* 0.0 - 100.0 */
|
||||
} XcmsTekHVC;
|
||||
|
||||
/*
|
||||
* PAD
|
||||
*/
|
||||
typedef struct {
|
||||
XcmsFloat pad0;
|
||||
XcmsFloat pad1;
|
||||
XcmsFloat pad2;
|
||||
XcmsFloat pad3;
|
||||
} XcmsPad;
|
||||
|
||||
|
||||
/*
|
||||
* XCMS Color Structure
|
||||
*/
|
||||
typedef struct {
|
||||
union {
|
||||
XcmsRGB RGB;
|
||||
XcmsRGBi RGBi;
|
||||
XcmsCIEXYZ CIEXYZ;
|
||||
XcmsCIEuvY CIEuvY;
|
||||
XcmsCIExyY CIExyY;
|
||||
XcmsCIELab CIELab;
|
||||
XcmsCIELuv CIELuv;
|
||||
XcmsTekHVC TekHVC;
|
||||
XcmsPad Pad;
|
||||
} spec; /* the color specification */
|
||||
unsigned long pixel; /* pixel value (as needed) */
|
||||
XcmsColorFormat format; /* the specification format */
|
||||
} XcmsColor;
|
||||
|
||||
|
||||
/*
|
||||
* XCMS Per Screen related data
|
||||
*/
|
||||
|
||||
typedef struct _XcmsPerScrnInfo {
|
||||
XcmsColor screenWhitePt; /* Screen White point */
|
||||
XPointer functionSet; /* pointer to Screen Color Characterization */
|
||||
/* Function Set structure */
|
||||
XPointer screenData; /* pointer to corresponding Screen Color*/
|
||||
/* Characterization Data */
|
||||
unsigned char state; /* XcmsInitNone, XcmsInitSuccess, XcmsInitFailure */
|
||||
char pad[3];
|
||||
} XcmsPerScrnInfo;
|
||||
|
||||
typedef struct _XcmsCCC *XcmsCCC;
|
||||
|
||||
typedef Status (*XcmsCompressionProc)( /* Gamut Compression Proc */
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
unsigned int /* index */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
typedef Status (*XcmsWhiteAdjustProc)( /* White Point Adjust Proc */
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* initial_white_point*/,
|
||||
XcmsColor* /* target_white_point*/,
|
||||
XcmsColorFormat /* target_format */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
/*
|
||||
* XCMS Color Conversion Context
|
||||
*/
|
||||
typedef struct _XcmsCCC {
|
||||
Display *dpy; /* X Display */
|
||||
int screenNumber; /* X screen number */
|
||||
Visual *visual; /* X Visual */
|
||||
XcmsColor clientWhitePt; /* Client White Point */
|
||||
XcmsCompressionProc gamutCompProc; /* Gamut Compression Function */
|
||||
XPointer gamutCompClientData; /* Gamut Comp Func Client Data */
|
||||
XcmsWhiteAdjustProc whitePtAdjProc; /* White Point Adjustment Function */
|
||||
XPointer whitePtAdjClientData; /* White Pt Adj Func Client Data */
|
||||
XcmsPerScrnInfo *pPerScrnInfo; /* pointer to per screen information */
|
||||
/* associated with the above display */
|
||||
/* screenNumber */
|
||||
} XcmsCCCRec;
|
||||
|
||||
typedef Status (*XcmsScreenInitProc)( /* Screen Initialization Proc */
|
||||
Display* /* dpy */,
|
||||
int /* screen_number */,
|
||||
XcmsPerScrnInfo* /* screen_info */
|
||||
);
|
||||
|
||||
typedef void (*XcmsScreenFreeProc)(
|
||||
XPointer /* screenData */
|
||||
);
|
||||
|
||||
/*
|
||||
* Function List Pointer -- pointer to an array of function pointers.
|
||||
* The end of list is indicated by a NULL pointer.
|
||||
*/
|
||||
/*
|
||||
* XXX: The use of the XcmsConversionProc type is broken. The
|
||||
* device-independent colour conversion code uses it as:
|
||||
|
||||
typedef Status (*XcmsConversionProc)(XcmsCCC, XcmsColor *, XcmsColor *,
|
||||
unsigned int);
|
||||
|
||||
* while the device-dependent code uses it as:
|
||||
|
||||
typedef Status (*XcmsConversionProc)(XcmsCCC, XcmsColor *, unsigned int,
|
||||
Bool *);
|
||||
|
||||
* Until this is reworked, it's probably best to leave it unprotoized.
|
||||
* The code works regardless.
|
||||
*/
|
||||
typedef Status (*XcmsDDConversionProc)( /* using device-dependent version */
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* pcolors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
Bool* /* pCompressed */
|
||||
);
|
||||
|
||||
typedef Status (*XcmsDIConversionProc)( /* using device-independent version */
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* white_point */,
|
||||
XcmsColor* /* pcolors_in_out */,
|
||||
unsigned int /* ncolors */
|
||||
);
|
||||
|
||||
typedef XcmsDIConversionProc XcmsConversionProc;
|
||||
typedef XcmsConversionProc *XcmsFuncListPtr;
|
||||
|
||||
typedef int (*XcmsParseStringProc)( /* Color String Parsing Proc */
|
||||
char* /* color_string */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
/*
|
||||
* Color Space -- per Color Space related data (Device-Independent
|
||||
* or Device-Dependent)
|
||||
*/
|
||||
typedef struct _XcmsColorSpace {
|
||||
const char *prefix; /* Prefix of string format. */
|
||||
XcmsColorFormat id; /* Format ID number. */
|
||||
XcmsParseStringProc parseString;
|
||||
/* String format parsing function */
|
||||
XcmsFuncListPtr to_CIEXYZ; /* Pointer to an array of function */
|
||||
/* pointers such that when the */
|
||||
/* functions are executed in sequence */
|
||||
/* will convert a XcmsColor structure */
|
||||
/* from this color space to CIEXYZ */
|
||||
/* space. */
|
||||
XcmsFuncListPtr from_CIEXYZ;/* Pointer to an array of function */
|
||||
/* pointers such that when the */
|
||||
/* functions are executed in sequence */
|
||||
/* will convert a XcmsColor structure */
|
||||
/* from CIEXYZ space to this color */
|
||||
/* space. */
|
||||
int inverse_flag; /* If 1, indicates that for 0 <= i < n */
|
||||
/* where n is the number of function */
|
||||
/* pointers in the lists to_CIEXYZ */
|
||||
/* and from_CIEXYZ; for each function */
|
||||
/* to_CIEXYZ[i] its inverse function */
|
||||
/* is from_CIEXYZ[n - i]. */
|
||||
|
||||
} XcmsColorSpace;
|
||||
|
||||
/*
|
||||
* Screen Color Characterization Function Set -- per device class
|
||||
* color space conversion functions.
|
||||
*/
|
||||
typedef struct _XcmsFunctionSet {
|
||||
XcmsColorSpace **DDColorSpaces;
|
||||
/* Pointer to an array of pointers to */
|
||||
/* Device-DEPENDENT color spaces */
|
||||
/* understood by this SCCFuncSet. */
|
||||
XcmsScreenInitProc screenInitProc;
|
||||
/* Screen initialization function that */
|
||||
/* reads Screen Color Characterization*/
|
||||
/* Data off properties on the screen's*/
|
||||
/* root window. */
|
||||
XcmsScreenFreeProc screenFreeProc;
|
||||
/* Function that frees the SCCData */
|
||||
/* structures. */
|
||||
} XcmsFunctionSet;
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
extern Status XcmsAddColorSpace (
|
||||
XcmsColorSpace* /* pColorSpace */
|
||||
);
|
||||
|
||||
extern Status XcmsAddFunctionSet (
|
||||
XcmsFunctionSet* /* functionSet */
|
||||
);
|
||||
|
||||
extern Status XcmsAllocColor (
|
||||
Display* /* dpy */,
|
||||
Colormap /* colormap */,
|
||||
XcmsColor* /* color_in_out */,
|
||||
XcmsColorFormat /* result_format */
|
||||
);
|
||||
|
||||
extern Status XcmsAllocNamedColor (
|
||||
Display* /* dpy */,
|
||||
Colormap /* colormap */,
|
||||
_Xconst char* /* color_string */,
|
||||
XcmsColor* /* color_scrn_return */,
|
||||
XcmsColor* /* color_exact_return */,
|
||||
XcmsColorFormat /* result_format */
|
||||
);
|
||||
|
||||
extern XcmsCCC XcmsCCCOfColormap (
|
||||
Display* /* dpy */,
|
||||
Colormap /* colormap */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELabClipab(
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
unsigned int /* index */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELabClipL(
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
unsigned int /* index */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELabClipLab(
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
unsigned int /* index */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELabQueryMaxC (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsFloat /* hue_angle */,
|
||||
XcmsFloat /* L_star */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELabQueryMaxL (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsFloat /* hue_angle */,
|
||||
XcmsFloat /* chroma */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELabQueryMaxLC (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsFloat /* hue_angle */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELabQueryMinL (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsFloat /* hue_angle */,
|
||||
XcmsFloat /* chroma */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELabToCIEXYZ (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* white_point */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELabWhiteShiftColors(
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* initial_white_point*/,
|
||||
XcmsColor* /* target_white_point*/,
|
||||
XcmsColorFormat /* target_format */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELuvClipL(
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
unsigned int /* index */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELuvClipLuv(
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
unsigned int /* index */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELuvClipuv(
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
unsigned int /* index */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELuvQueryMaxC (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsFloat /* hue_angle */,
|
||||
XcmsFloat /* L_star */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELuvQueryMaxL (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsFloat /* hue_angle */,
|
||||
XcmsFloat /* chroma */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELuvQueryMaxLC (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsFloat /* hue_angle */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELuvQueryMinL (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsFloat /* hue_angle */,
|
||||
XcmsFloat /* chroma */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELuvToCIEuvY (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* white_point */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */
|
||||
);
|
||||
|
||||
extern Status XcmsCIELuvWhiteShiftColors(
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* initial_white_point*/,
|
||||
XcmsColor* /* target_white_point*/,
|
||||
XcmsColorFormat /* target_format */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIEXYZToCIELab (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* white_point */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */
|
||||
);
|
||||
|
||||
extern Status XcmsCIEXYZToCIEuvY (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* white_point */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */
|
||||
);
|
||||
|
||||
extern Status XcmsCIEXYZToCIExyY (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* white_point */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */
|
||||
);
|
||||
|
||||
extern Status XcmsCIEXYZToRGBi (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsCIEuvYToCIELuv (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* white_point */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */
|
||||
);
|
||||
|
||||
extern Status XcmsCIEuvYToCIEXYZ (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* white_point */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */
|
||||
);
|
||||
|
||||
extern Status XcmsCIEuvYToTekHVC (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* white_point */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */
|
||||
);
|
||||
|
||||
extern Status XcmsCIExyYToCIEXYZ (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* white_point */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */
|
||||
);
|
||||
|
||||
extern XcmsColor *XcmsClientWhitePointOfCCC (
|
||||
XcmsCCC /* ccc */
|
||||
);
|
||||
|
||||
extern Status XcmsConvertColors (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colorArry_in_out */,
|
||||
unsigned int /* nColors */,
|
||||
XcmsColorFormat /* targetFormat */,
|
||||
Bool* /* compArry_return */
|
||||
);
|
||||
|
||||
extern XcmsCCC XcmsCreateCCC (
|
||||
Display* /* dpy */,
|
||||
int /* screenNumber */,
|
||||
Visual* /* visual */,
|
||||
XcmsColor* /* clientWhitePt */,
|
||||
XcmsCompressionProc /* gamutCompProc */,
|
||||
XPointer /* gamutCompClientData */,
|
||||
XcmsWhiteAdjustProc /* whitePtAdjProc */,
|
||||
XPointer /* whitePtAdjClientData */
|
||||
);
|
||||
|
||||
extern XcmsCCC XcmsDefaultCCC (
|
||||
Display* /* dpy */,
|
||||
int /* screenNumber */
|
||||
);
|
||||
|
||||
extern Display *XcmsDisplayOfCCC (
|
||||
XcmsCCC /* ccc */
|
||||
);
|
||||
|
||||
extern XcmsColorFormat XcmsFormatOfPrefix (
|
||||
char* /* prefix */
|
||||
);
|
||||
|
||||
extern void XcmsFreeCCC (
|
||||
XcmsCCC /* ccc */
|
||||
);
|
||||
|
||||
extern Status XcmsLookupColor (
|
||||
Display* /* dpy */,
|
||||
Colormap /* colormap */,
|
||||
_Xconst char* /* color_string */,
|
||||
XcmsColor* /* pColor_exact_in_out */,
|
||||
XcmsColor* /* pColor_scrn_in_out */,
|
||||
XcmsColorFormat /* result_format */
|
||||
);
|
||||
|
||||
extern char *XcmsPrefixOfFormat (
|
||||
XcmsColorFormat /* id */
|
||||
);
|
||||
|
||||
extern Status XcmsQueryBlack (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColorFormat /* target_format */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsQueryBlue (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColorFormat /* target_format */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsQueryColor (
|
||||
Display* /* dpy */,
|
||||
Colormap /* colormap */,
|
||||
XcmsColor* /* pColor_in_out */,
|
||||
XcmsColorFormat /* result_format */
|
||||
);
|
||||
|
||||
extern Status XcmsQueryColors (
|
||||
Display* /* dpy */,
|
||||
Colormap /* colormap */,
|
||||
XcmsColor* /* colorArry_in_out */,
|
||||
unsigned int /* nColors */,
|
||||
XcmsColorFormat /* result_format */
|
||||
);
|
||||
|
||||
extern Status XcmsQueryGreen (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColorFormat /* target_format */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsQueryRed (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColorFormat /* target_format */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsQueryWhite (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColorFormat /* target_format */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsRGBiToCIEXYZ (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsRGBiToRGB (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsRGBToRGBi (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern int XcmsScreenNumberOfCCC (
|
||||
XcmsCCC /* ccc */
|
||||
);
|
||||
|
||||
extern XcmsColor *XcmsScreenWhitePointOfCCC (
|
||||
XcmsCCC /* ccc */
|
||||
);
|
||||
|
||||
extern XcmsCCC XcmsSetCCCOfColormap(
|
||||
Display* /* dpy */,
|
||||
Colormap /* colormap */,
|
||||
XcmsCCC /* ccc */
|
||||
);
|
||||
|
||||
extern XcmsCompressionProc XcmsSetCompressionProc (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsCompressionProc /* compression_proc */,
|
||||
XPointer /* client_data */
|
||||
);
|
||||
|
||||
extern XcmsWhiteAdjustProc XcmsSetWhiteAdjustProc (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsWhiteAdjustProc /* white_adjust_proc */,
|
||||
XPointer /* client_data */
|
||||
);
|
||||
|
||||
extern Status XcmsSetWhitePoint (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* color */
|
||||
);
|
||||
|
||||
extern Status XcmsStoreColor (
|
||||
Display* /* dpy */,
|
||||
Colormap /* colormap */,
|
||||
XcmsColor* /* pColor_in */
|
||||
);
|
||||
|
||||
extern Status XcmsStoreColors (
|
||||
Display* /* dpy */,
|
||||
Colormap /* colormap */,
|
||||
XcmsColor* /* colorArry_in */,
|
||||
unsigned int /* nColors */,
|
||||
Bool* /* compArry_return */
|
||||
);
|
||||
|
||||
extern Status XcmsTekHVCClipC(
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
unsigned int /* index */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsTekHVCClipV(
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
unsigned int /* index */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsTekHVCClipVC(
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
unsigned int /* index */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Status XcmsTekHVCQueryMaxC (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsFloat /* hue */,
|
||||
XcmsFloat /* value */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsTekHVCQueryMaxV (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsFloat /* hue */,
|
||||
XcmsFloat /* chroma */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsTekHVCQueryMaxVC (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsFloat /* hue */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsTekHVCQueryMaxVSamples (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsFloat /* hue */,
|
||||
XcmsColor* /* colors_return */,
|
||||
unsigned int /* nsamples */
|
||||
);
|
||||
|
||||
extern Status XcmsTekHVCQueryMinV (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsFloat /* hue */,
|
||||
XcmsFloat /* chroma */,
|
||||
XcmsColor* /* color_return */
|
||||
);
|
||||
|
||||
extern Status XcmsTekHVCToCIEuvY (
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* white_point */,
|
||||
XcmsColor* /* colors */,
|
||||
unsigned int /* ncolors */
|
||||
);
|
||||
|
||||
extern Status XcmsTekHVCWhiteShiftColors(
|
||||
XcmsCCC /* ccc */,
|
||||
XcmsColor* /* initial_white_point*/,
|
||||
XcmsColor* /* target_white_point*/,
|
||||
XcmsColorFormat /* target_format */,
|
||||
XcmsColor* /* colors_in_out */,
|
||||
unsigned int /* ncolors */,
|
||||
Bool* /* compression_flags_return */
|
||||
);
|
||||
|
||||
extern Visual *XcmsVisualOfCCC (
|
||||
XcmsCCC /* ccc */
|
||||
);
|
||||
|
||||
#ifdef __clang__
|
||||
#pragma clang diagnostic pop
|
||||
#endif
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
#endif /* _X11_XCMS_H_ */
|
Loading…
Add table
Add a link
Reference in a new issue