Files
jens 05da8712f6 Initial import
git-svn-id: http://moon:8086/svn/software/trunk/libsrc/_to_be_added@1 b431acfa-c32f-4a4a-93f1-934dc6c82436
2014-07-19 07:44:42 +00:00

42 lines
1.6 KiB
C
Executable File

// ----------------------------------------------------------------------
// color_conv.h
// 21.02.2005, Jens Ahrensfeld
// ----------------------------------------------------------------------
#ifndef COLOR_CONV_H
#define COLOR_CONV_H
#include "colortypes.h"
// ----------------------------------------------------------------------
#define K_XYZ 1.0
#define OBS_TYPE_2DEG 2
#define OBS_TYPE_10DEG 10
#define ILLU_TYPE_A 1
#define ILLU_TYPE_C 2
#define ILLU_TYPE_D50 3
#define ILLU_TYPE_D55 4
#define ILLU_TYPE_D65 5
#define ILLU_TYPE_D75 6
#define ILLU_TYPE_F2 7
#define ILLU_TYPE_F7 8
#define ILLU_TYPE_F11 9
#define ILLU_TYPE_INCANDESCENT 10
#define ILLU_TYPE_DAYLIGHT 11
#define ILLU_TYPE_FLUORESCENT 12
// ----------------------------------------------------------------------
void rgb2hsv(color_vector_t *pRGB, color_vector_t *pHSV, int len);
void hsv2rgb(color_vector_t *pHSV, color_vector_t *pRGB, int len);
void rgb2hsl(color_vector_t *pRGB, color_vector_t *pHSL, int len);
void hsl2rgb(color_vector_t *pHSL, color_vector_t *pRGB, int len);
void rgb2xyz(double **ppRGB, double **ppXYZ, int len);
void xyz2rgb(double **ppXYZ, double **ppRGB, int len);
void xyz2lab(double **ppXYZ, double **ppLAB, double *pRef, int len);
void lab2xyz(double **ppLAB, double **ppXYZ, double *pRef, int len);
void rgb2rgb(double **ppSrc, double **ppDst, int len);
void tristimulus(double *pRef, unsigned illuminant_type, unsigned observer_type);
// ----------------------------------------------------------------------
#endif // COLOR_CONV_H