void pinq_colr_rep(
Pint ws_id, /* workstation identifier */ Pint index, /* colour index */ Pinq_type return_type, /* type of returned value */ Pint *error_ind, /* (out) error indicator */ Pcolr_rep *colr_rep /* (out) colour representation */
)
typedef enum {
PINQ_SET,
PINQ_REALIZED
} Pinq_type ;
typedef union {
Prgb rgb; /* red, green, blue colour spec. */
Pcieluv cieluv; /* CIE L*U*V colour spec. */
Phls hls; /* hue, lightness, saturation colour spec. */
Phsv hsv; /* hue, saturation, value colour spec. */
Pdata unsupp; /* colour in an unsupported colour model */
Pint impl_dep; /* implementation defined */
} Pcolr_rep;
The components are the colour coordinates in the current colour model.
If the value type returned is PINQ_REALIZED, and if the colour associated with the index has never been either predefined or positioned, or if the colour index is greater than the number of colour indexes in the workstation state list, then the colour coordinates are set to the index 1 colour coordinates.
If the value type returned is PINQ_SET and if the colour associated with the index has been predefined or positioned, the components are set to the closest values possible to the components associated with the colour index as it was defined; where the value returned is PINQ_REALIZED they are the same.
If the value type returned is PINQ_SET and if the colour index has never been either predefined or positioned, error 101 is returned in the error indicator.