Visualization Library 2.0.0-b5

A lightweight C++ OpenGL middleware for 2D/3D graphics

VL     Star     Watch     Fork     Issue

[Download] [Tutorials] [All Classes] [Grouped Classes]
Macros | Functions
tif_color.c File Reference
#include "tiffiop.h"
#include <math.h>

Go to the source code of this file.

Macros

#define RINT(R)   ((uint32)((R)>0?((R)+0.5):((R)-0.5)))
 
#define SHIFT   16
 
#define FIX(x)   ((int32)((x) * (1L<<SHIFT) + 0.5))
 
#define ONE_HALF   ((int32)(1<<(SHIFT-1)))
 
#define Code2V(c, RB, RW, CR)   ((((c)-(int32)(RB))*(float)(CR))/(float)(((RW)-(RB)) ? ((RW)-(RB)) : 1))
 
#define CLAMP(f, min, max)   ((f)<(min)?(min):(f)>(max)?(max):(f))
 
#define HICLAMP(f, max)   ((f)>(max)?(max):(f))
 
#define LumaRed   luma[0]
 
#define LumaGreen   luma[1]
 
#define LumaBlue   luma[2]
 

Functions

void TIFFCIELabToXYZ (TIFFCIELabToRGB *cielab, uint32 l, int32 a, int32 b, float *X, float *Y, float *Z)
 
void TIFFXYZToRGB (TIFFCIELabToRGB *cielab, float X, float Y, float Z, uint32 *r, uint32 *g, uint32 *b)
 
int TIFFCIELabToRGBInit (TIFFCIELabToRGB *cielab, TIFFDisplay *display, float *refWhite)
 
void TIFFYCbCrtoRGB (TIFFYCbCrToRGB *ycbcr, uint32 Y, int32 Cb, int32 Cr, uint32 *r, uint32 *g, uint32 *b)
 
int TIFFYCbCrToRGBInit (TIFFYCbCrToRGB *ycbcr, float *luma, float *refBlackWhite)
 

Macro Definition Documentation

◆ CLAMP

#define CLAMP (   f,
  min,
  max 
)    ((f)<(min)?(min):(f)>(max)?(max):(f))

Definition at line 179 of file tif_color.c.

Referenced by TIFFYCbCrtoRGB().

◆ Code2V

#define Code2V (   c,
  RB,
  RW,
  CR 
)    ((((c)-(int32)(RB))*(float)(CR))/(float)(((RW)-(RB)) ? ((RW)-(RB)) : 1))

Definition at line 178 of file tif_color.c.

Referenced by TIFFYCbCrToRGBInit().

◆ FIX

#define FIX (   x)    ((int32)((x) * (1L<<SHIFT) + 0.5))

Definition at line 176 of file tif_color.c.

Referenced by TIFFYCbCrToRGBInit().

◆ HICLAMP

#define HICLAMP (   f,
  max 
)    ((f)>(max)?(max):(f))

Definition at line 180 of file tif_color.c.

Referenced by TIFFYCbCrtoRGB().

◆ LumaBlue

#define LumaBlue   luma[2]

Referenced by TIFFYCbCrToRGBInit().

◆ LumaGreen

#define LumaGreen   luma[1]

Referenced by TIFFYCbCrToRGBInit().

◆ LumaRed

#define LumaRed   luma[0]

Referenced by TIFFYCbCrToRGBInit().

◆ ONE_HALF

#define ONE_HALF   ((int32)(1<<(SHIFT-1)))

Definition at line 177 of file tif_color.c.

Referenced by TIFFYCbCrToRGBInit().

◆ RINT

#define RINT (   R)    ((uint32)((R)>0?((R)+0.5):((R)-0.5)))

Definition at line 73 of file tif_color.c.

Referenced by TIFFXYZToRGB().

◆ SHIFT

#define SHIFT   16

Definition at line 175 of file tif_color.c.

Referenced by TIFFYCbCrtoRGB(), and TIFFYCbCrToRGBInit().

Function Documentation

◆ TIFFCIELabToRGBInit()

int TIFFCIELabToRGBInit ( TIFFCIELabToRGB cielab,
TIFFDisplay display,
float *  refWhite 
)

Definition at line 125 of file tif_color.c.

◆ TIFFCIELabToXYZ()

void TIFFCIELabToXYZ ( TIFFCIELabToRGB cielab,
uint32  l,
int32  a,
int32  b,
float *  X,
float *  Y,
float *  Z 
)

Definition at line 46 of file tif_color.c.

References F, TIFFCIELabToRGB::X0, TIFFCIELabToRGB::Y0, and TIFFCIELabToRGB::Z0.

Referenced by DECLAREContigPutFunc().

◆ TIFFXYZToRGB()

void TIFFXYZToRGB ( TIFFCIELabToRGB cielab,
float  X,
float  Y,
float  Z,
uint32 r,
uint32 g,
uint32 b 
)

◆ TIFFYCbCrtoRGB()

void TIFFYCbCrtoRGB ( TIFFYCbCrToRGB ycbcr,
uint32  Y,
int32  Cb,
int32  Cr,
uint32 r,
uint32 g,
uint32 b 
)

◆ TIFFYCbCrToRGBInit()

int TIFFYCbCrToRGBInit ( TIFFYCbCrToRGB ycbcr,
float *  luma,
float *  refBlackWhite 
)