XcmsColor(3)

🌈 XcmsColor(3) β€” XLIB FUNCTIONS energy ✨

Okay so this is the XcmsColor(3) page from the XLIB FUNCTIONS manual, and it's literally the color-structure lore. Come get your structs, bestie. πŸ’–


πŸ’– NAME πŸ’–

  • XcmsColor, XcmsRGB, XcmsRGBi, XcmsCIEXYZ, XcmsCIEuvY, XcmsCIExyY, XcmsCIELab, XcmsCIELuv, XcmsTekHVC, XcmsPad β€” the Xcms color structure. Periodt. ✨

πŸŽ€ STRUCTURES πŸŽ€

The XcmsColor structure contains this exact lineup β€” no edits, no cap:

       typedef unsigned long XcmsColorFormat;            /* Color Specification Format */

       typedef struct {
            union {
                 XcmsRGB RGB;
                 XcmsRGBi RGBi;
                 XcmsCIEXYZ CIEXYZ;
                 XcmsCIEuvY CIEuvY;
                 XcmsCIExyY CIExyY;
                 XcmsCIELab CIELab;
                 XcmsCIELuv CIELuv;
                 XcmsTekHVC TekHVC;
                 XcmsPad Pad;
            } spec;
            unsigned long pixel;
            XcmsColorFormat format;
       } XcmsColor;             /* Xcms Color Structure */

       typedef double XcmsFloat;

       typedef struct {
            unsigned short red; /* 0x0000 to 0xffff */
            unsigned short green;    /* 0x0000 to 0xffff */
            unsigned short blue;     /* 0x0000 to 0xffff */
       } XcmsRGB;          /* RGB Device */

       typedef struct {
            XcmsFloat red; /* 0.0 to 1.0 */
            XcmsFloat green;    /* 0.0 to 1.0 */
            XcmsFloat blue;     /* 0.0 to 1.0 */
       } XcmsRGBi;         /* RGB Intensity */

       typedef struct {
            XcmsFloat X;
            XcmsFloat Y;   /* 0.0 to 1.0 */
            XcmsFloat Z;
       } XcmsCIEXYZ;       /* CIE XYZ */

       typedef struct {
            XcmsFloat u_prime;  /* 0.0 to ~0.6 */
            XcmsFloat v_prime;  /* 0.0 to ~0.6 */
            XcmsFloat Y;   /* 0.0 to 1.0 */
       } XcmsCIEuvY;       /* CIE u'v'Y */

       typedef struct {
            XcmsFloat x;   /* 0.0 to ~.75 */
            XcmsFloat y;   /* 0.0 to ~.85 */
            XcmsFloat Y;   /* 0.0 to 1.0 */
       } XcmsCIExyY;       /* CIE xyY */

       typedef struct {
            XcmsFloat L_star;   /* 0.0 to 100.0 */
            XcmsFloat a_star;
            XcmsFloat b_star;
       } XcmsCIELab;       /* CIE L*a*b* */

       typedef struct {
            XcmsFloat L_star;   /* 0.0 to 100.0 */
            XcmsFloat u_star;
            XcmsFloat v_star;
       } XcmsCIELuv;       /* CIE L*u*v* */

       typedef struct {
            XcmsFloat H;   /* 0.0 to 360.0 */
            XcmsFloat V;   /* 0.0 to 100.0 */
            XcmsFloat C;   /* 0.0 to 100.0 */
       } XcmsTekHVC;       /* TekHVC */

       typedef struct {
            XcmsFloat pad0;
            XcmsFloat pad1;
            XcmsFloat pad2;
            XcmsFloat pad3;
       } XcmsPad;          /* four doubles */

πŸ¦‹ DESCRIPTION πŸ¦‹

The XcmsColor structure contains a union of substructures. Each substructure supports color specification encoding for a particular color space. That's it β€” that's the description. One main struct, a union of substructure options, and the pixel and format fields from the code above. Slay. πŸ’…

🌸 SEE ALSO 🌸


X Version 11 β€’ libX11 1.8.14 β€’ date: not listed on this page β€” bye bestie, go convert some colors responsibly πŸ«ΆπŸ’–

πŸ“¦ where this page comes from