DiCIELABFunction Class Reference

Class to manage CIELAB LUTs (for calibration). More...

Inheritance diagram for DiCIELABFunction:

DiDisplayFunction List of all members.

Public Member Functions

 DiCIELABFunction (const char *filename, const E_DeviceType deviceType=EDT_Monitor, const signed int ord=-1)
 constructor, read device characteristics file.
 DiCIELABFunction (const double *val_tab, const unsigned long count, const Uint16 max=255, const E_DeviceType deviceType=EDT_Monitor, const signed int ord=0)
 constructor, use given array of luminance/OD values.
 DiCIELABFunction (const Uint16 *ddl_tab, const double *val_tab, const unsigned long count, const Uint16 max=255, const E_DeviceType deviceType=EDT_Monitor, const signed int ord=0)
 constructor, use given array of DDL and luminance values.
 DiCIELABFunction (const double val_min, const double val_max, const unsigned long count=256, const E_DeviceType deviceType=EDT_Monitor, const signed int ord=0)
 constructor, compute luminance/OD values automatically within the specified range.
virtual ~DiCIELABFunction ()
 destructor
int writeCurveData (const char *filename, const OFBool mode=OFTrue)
 write curve data to a text file

Protected Member Functions

DiDisplayLUTgetDisplayLUT (unsigned long count)
 create CIELAB LUT with specified number of entries

Private Member Functions

 DiCIELABFunction (const DiDisplayFunction &)
DiCIELABFunctionoperator= (const DiDisplayFunction &)

Detailed Description

Class to manage CIELAB LUTs (for calibration).

Definition at line 45 of file diciefn.h.


Constructor & Destructor Documentation

DiCIELABFunction::DiCIELABFunction ( const char *  filename,
const E_DeviceType  deviceType = EDT_Monitor,
const signed int  ord = -1 
)

constructor, read device characteristics file.

Keywords: "max" for maximum DDL (Device Driving Level, required at first position) "amb" for ambient light and "lum" for illumination (both optional) "ord" for the order of the polynomial curve fitting algorithm used to interpolate the given base points (0 or absent = use cubic spline interpolation)

Parameters:
filename name of the characteristics file (luminance/OD for each DDL)
deviceType type of the output device (default: monitor)
ord order of the polynomial curve fitting algorithm used to interpolate the given base points (-1 = use file setting, 0 = cubic spline)

DiCIELABFunction::DiCIELABFunction ( const double *  val_tab,
const unsigned long  count,
const Uint16  max = 255,
const E_DeviceType  deviceType = EDT_Monitor,
const signed int  ord = 0 
)

constructor, use given array of luminance/OD values.

UNTESTED Values must be sorted and complete (i.e. there must be an entry for each DDL) The given arrays are copied internally.

Parameters:
val_tab pointer to array with luminance/OD values
count number of array elements (should be equal to 'max + 1')
max maximum DDL (device driving level)
deviceType type of the output device (default: monitor)
ord order of the polynomial curve fitting algorithm used to interpolate the given base points (0 or negative = use cubic spline interpolation)

DiCIELABFunction::DiCIELABFunction ( const Uint16 *  ddl_tab,
const double *  val_tab,
const unsigned long  count,
const Uint16  max = 255,
const E_DeviceType  deviceType = EDT_Monitor,
const signed int  ord = 0 
)

constructor, use given array of DDL and luminance values.

UNTESTED Values will be automatically sorted and missing values will be interpolated. The given arrays are copied internally.

Parameters:
ddl_tab pointer to array with DDL values (must be with the interval 0..max)
val_tab pointer to array with luminance/OD values
count number of array elements (2..65536)
max maximum DDL (device driving level)
deviceType type of the output device (default: monitor)
ord order of the polynomial curve fitting algorithm used to interpolate the given base points (0 or negative = use cubic spline interpolation)

DiCIELABFunction::DiCIELABFunction ( const double  val_min,
const double  val_max,
const unsigned long  count = 256,
const E_DeviceType  deviceType = EDT_Monitor,
const signed int  ord = 0 
)

constructor, compute luminance/OD values automatically within the specified range.

Parameters:
val_min minimum luminance/OD value
val_max maximum luminance/OD value
count number of DDLs (device driving level, 1..65536))
deviceType type of the output device (default: monitor)
ord order of the polynomial curve fitting algorithm used to interpolate the given base points (0 or negative = use cubic spline interpolation)


Member Function Documentation

int DiCIELABFunction::writeCurveData ( const char *  filename,
const OFBool  mode = OFTrue 
) [virtual]

write curve data to a text file

Parameters:
filename name of the text file to which the data should be written
mode write CC and PSC to file if OFTrue
Returns:
status, true if successful, false otherwise

Implements DiDisplayFunction.

DiDisplayLUT* DiCIELABFunction::getDisplayLUT ( unsigned long  count  )  [protected, virtual]

create CIELAB LUT with specified number of entries

Parameters:
count number of LUT entries
Returns:
pointer to created LUT if successful, NULL otherwise

Implements DiDisplayFunction.


The documentation for this class was generated from the following file:


Generated on 6 Jan 2011 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.5.1