dcc(7)
NAME
dcc − Device Color Characterization file format
AVAILABILITY
X11 R5 and later
DESCRIPTION
dcc device color characterization file format
A file with data in dcc format is normally identified by its .dcc suffix. The program, xcmsdb, uses this file format to communicate color characterization data to the XDCCC properties of the root window system.
For more information on XDCCC tables see:
Robert W. Scheifler & James Gettys "X Window System", Third Edition. Version 11, Release 5
The format is based upon keywords delineating lines of data in the file. For every "BEGIN" keyword, there must be an "END" keyword. Everthing before the first encountered keyword is treated as a comment and is passed over.
dcc file keywords are defined as follows:
SCREENDATA_BEGIN version
Beginning of the .dcc file data. This must be followed by a number respresenting the file format’s version number (for example, 1.1 or 0.3 are current valid values) which must match the current version of xcmsdb(1) and support older versions if it is 0.3. SCREENDATA_BEGIN must be the first keyword of the file.
SCREENDATA_END
End of .dcc file data
COMMENT [string]
Indicates a comment as opposed to data (optional). These lines will be skipped over until the keyword is encountered.
NAME [string]
Device name (optional).
MODEL [string]
Device model number (optional)
PART_NUMBER [string]
Device part number (optional)
SERIAL_NUMBER [string]
Device serial number (optional)
REVISION [string]
Device revision number (optional)
SCREEN_CLASS VIDEO_RGB | VIDEO_GRAY [screen]
This keyword must be followed by the keywords VIDEO_RGB or VIDEO_GRAY followed by an optional numeric screen number (for example, 0 or 1).
COLORIMETRIC_BEGIN
Beginning of XYZ/RGB matrix information
COLORIMETRIC_END
End of XYZ/RGB matrix information
XYZtoRGB_MATRIX_BEGIN
The 3x3 matrix of XcmsFloat values, respresenting the XYZtoRGB conversion matrix follows. This keyword must be followed by 9 XcmsFloat values and the visual must be VIDEO_RGB.
XYZtoRGB_MATRIX_END
End of above matrix.
RGBtoXYZ_MATRIX_BEGIN
The 3x3 matrix of XcmsFloat values, respresenting the RGBtoXYZ conversion matrix follows. representing the XYZtoRGB conversion matrix follows. This keyword must be followed by 9 XcmsFloat values and the visual must be VIDEO_RGB.
RGBtoXYZ_MATRIX_END
End of above matrix
INTENSITY_PROFILE_BEGIN table-type number-of-tables [depth:value] [class:value] [bits_per_rgb:value] [red_mask:value] [blue_mask:value] [green_mask:value] [colormap_size:value] [visualid:value]
Beginning of the set of red, green, and/or blue intensity profile tables. This keyword requires the following information to appear on the same line:
Integer table-type value, either 0 or 1, see INTENSITY_TBL_BEGIN.
Integer number-of-tables to follow (usually 3 for RGB).
Valid values = [0, 1, or 3].
There are several optional visual options allowed to follow on the same line. Each is of the format keyword:value.
depth:value where value = integer = XDCCC_Correction visual depth
class:value where value = text string = XDCCC_Correction visual id
Valid values = [GrayScale, StaticColor, PseudoColor, TrueColor, or DirectColor]
bits_per_rgb:value where value = integer = XDCCC_Correction visual bits_per_rgb.
red_mask:value where value = long = XDCCC_Correction visual red mask
blue_mask:value where value = long = XDCCC_Correction visual blue mask
green_mask:value where value = long = XDCCC_Correction visual green mask
colormap_size:value where value = integer =XDCCC_Correction visual colormap_size
visualid:value where value = integer = XDCCC_Correction visualid (This number is not guarenteed be consistent between machines or even between different executions on the same machine. This is why the class option, above, was introduced.)
INTENSITY_PROFILE_END
End of intensity profile tables.
INTENSITY_TBL_BEGIN RED|GREEN|BLUE #-intensity-entries
Beginning of a single red, green,or blue intensity (gamma) table values. This keyword must be followed by one of the RED, GREEN, or BLUE keywords, followed by the number of intensity entries for this table which will be provided on subsequent lines.
There are two table types indicated by the first value following the INTENSITY_PROFILE_BEGIN keyword. They are fully described in the reference above. A short description is below:
Table type 0 has as many value/intensity pairs as indicated in the above number of intensity entries, one pair per line:
value intensity
value = integer X Protocol RGB value
intensity = floating point number, 0 <= intensity <= 1.
Table 1 has as many intensities as indicated in the above number of intensity entries, one per line. If there are less than 256, intermediate values will be interpolated:
intensity
where intensity = floating point number, 0 <= intensity <= 1
INTENSITY_TBL_END
End of 1 RED, BLUE, or GREEN set of intensities.
The XDCCC_Correction structure used to build a dcc file appears as follows:
typedef struct _XDCCC_Correction {
XVisualInfovisual_info;
longvisual_info_mask;
inttableType;
intnTables;
IntensityTbl∗pRedTbl;
IntensityTbl∗pGreenTbl;
IntensityTbl∗pBlueTbl;
struct _XDCCC_Correction∗next;
} XDCCC_Correction;
EXAMPLES
/∗
∗ This device profile generated on Tue Aug 31 22:09:30 1993
∗ by:
∗ XcmsCal version 1.1 (Jun 1993)
∗ The X Color Management System Calibrator
∗ SynChromatics, Inc.
∗ e-mail: support@synchrom.com
∗/
SCREENDATA_BEGIN 1.1
SCREEN_CLASS VIDEO_RGB 0
COLORIMETRIC_BEGIN
XYZtoRGB_MATRIX_BEGIN
3.059762352756600 -1.393353891792378 -0.477589063231239
-1.104099573430360 2.055980456011441 0.048048668881401
0.061427111899796 -0.208687811828992 0.740355077052951
XYZtoRGB_MATRIX_END
RGBtoXYZ_MATRIX_BEGIN
0.438353502994949 0.323645868857936 0.261769104688723
0.234707790907042 0.656492693226741 0.108799515866217
0.029788227712649 0.158196244287510 1.359652204744125
RGBtoXYZ_MATRIX_END
COLORIMETRIC_END
INTENSITY_PROFILE_BEGIN 1 3
INTENSITY_TBL_BEGIN RED 4
0.000000000000000000
0.065240451524205073
0.373267096523391184
1.000000000000000000
INTENSITY_TBL_END
INTENSITY_TBL_BEGIN GREEN 4
0.000000000000000000
0.065970557751313524
0.382422900320560866
1.000000000000000000
INTENSITY_TBL_END
INTENSITY_TBL_BEGIN BLUE 4
0.000000000000000000
0.074217889066191076
0.402193543745107795
1.000000000000000000
INTENSITY_TBL_END
INTENSITY_PROFILE_END
INTENSITY_PROFILE_BEGIN 1 3 depth:8 class:DirectColor bits_per_rgb:8
INTENSITY_TBL_BEGIN RED 4
0.000000000000000000
0.064006921368752454
0.368894358278727741
1.000000000000000000
INTENSITY_TBL_END
INTENSITY_TBL_BEGIN GREEN 4
0.000000000000000000
0.064617315485521326
0.380766093039437870
1.000000000000000000
INTENSITY_TBL_END
INTENSITY_TBL_BEGIN BLUE 4
0.000000000000000000
0.071261070994832532
0.395361711799721904
1.000000000000000000
INTENSITY_TBL_END
INTENSITY_PROFILE_END
SCREENDATA_END
SEE ALSO
SunOS 5.6 — Last change: 23 April 1995