# colorspace.c File Reference

`#include "magick/studio.h"`
`#include "magick/property.h"`
`#include "magick/cache.h"`
`#include "magick/color.h"`
`#include "magick/color-private.h"`
`#include "magick/colorspace.h"`
`#include "magick/colorspace-private.h"`
`#include "magick/exception.h"`
`#include "magick/exception-private.h"`
`#include "magick/image.h"`
`#include "magick/image-private.h"`
`#include "magick/gem.h"`
`#include "magick/memory_.h"`
`#include "magick/monitor.h"`
`#include "magick/pixel-private.h"`
`#include "magick/quantize.h"`
`#include "magick/quantum.h"`
`#include "magick/string_.h"`
`#include "magick/utility.h"`

## Defines

#define | RGBTransformImageTag "RGBTransform/Image"
#define | ReferenceBlack 95.0
#define | ReferenceWhite 685.0
#define | DisplayGamma (1.0/1.7)
#define | D50X (0.9642)
#define | D50Y (1.0)
#define | D50Z (0.8249)
#define | TransformRGBImageTag "Transform/Image"

## Functions

static void | ConvertRGBToXYZ (const Quantum red, const Quantum green, const Quantum blue, double *X, double *Y, double *Z)
static void | ConvertXYZToLab (const double X, const double Y, const double Z, double *L, double *a, double *b)
MagickExport MagickBooleanType | RGBTransformImage (Image *image, const ColorspaceType colorspace)
MagickExport MagickBooleanType | TransformImageColorspace (Image *image, const ColorspaceType colorspace)
static void | ConvertLabToXYZ (const double L, const double a, const double b, double *X, double *Y, double *Z)
static unsigned short | RoundToYCC (const MagickRealType value)
static void | ConvertXYZToRGB (const double x, const double y, const double z, Quantum *red, Quantum *green, Quantum *blue)
static void | ConvertCMYKToRGB (MagickPixelPacket *pixel)
MagickExport MagickBooleanType | TransformRGBImage (Image *image, const ColorspaceType colorspace)

## Define Documentation

#define D50X (0.9642)

#define D50Y (1.0)

#define D50Z (0.8249)

#define DisplayGamma (1.0/1.7)

#define ReferenceBlack 95.0

#define ReferenceWhite 685.0

#define RGBTransformImageTag "RGBTransform/Image"

#define TransformRGBImageTag "Transform/Image"

## Function Documentation

static void ConvertCMYKToRGB | ( | MagickPixelPacket * | pixel | ) | `[inline, static]`

static void ConvertLabToXYZ | ( | const double | L,
|  | const double | a,
|  | const double | b,
|  | double * | X,
|  | double * | Y,
|  | double * | Z |
| ) |  |  | `[inline, static]`

static void ConvertRGBToXYZ | ( | const Quantum | red,
|  | const Quantum | green,
|  | const Quantum | blue,
|  | double * | X,
|  | double * | Y,
|  | double * | Z |
| ) |  |  | `[inline, static]`

static void ConvertXYZToLab | ( | const double | X,
|  | const double | Y,
|  | const double | Z,
|  | double * | L,
|  | double * | a,
|  | double * | b |
| ) |  |  | `[inline, static]`

static void ConvertXYZToRGB | ( | const double | x,
|  | const double | y,
|  | const double | z,
|  | Quantum * | red,
|  | Quantum * | green,
|  | Quantum * | blue |
| ) |  |  | `[inline, static]`

MagickExport MagickBooleanType RGBTransformImage | ( | Image * | image,
|  | const ColorspaceType | colorspace |
| ) |  |  |

static unsigned short RoundToYCC | ( | const MagickRealType | value | ) | `[inline, static]`

MagickExport MagickBooleanType TransformImageColorspace | ( | Image * | image,
|  | const ColorspaceType | colorspace |
| ) |  |  |

MagickExport MagickBooleanType TransformRGBImage | ( | Image * | image,
|  | const ColorspaceType | colorspace |
| ) |  |  |