/usr/include/dcmtk/dcmimgle/digsdlut.h is in libdcmtk2-dev 3.6.0-15+deb8u1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 | /*
*
* Copyright (C) 1996-2010, OFFIS e.V.
* All rights reserved. See COPYRIGHT file for details.
*
* This software and supporting documentation were developed by
*
* OFFIS e.V.
* R&D Division Health
* Escherweg 2
* D-26121 Oldenburg, Germany
*
*
* Module: dcmimgle
*
* Author: Joerg Riesmeier
*
* Purpose: DicomGSDFLUT (Header)
*
* Last Update: $Author: joergr $
* Update Date: $Date: 2010-10-14 13:16:26 $
* CVS/RCS Revision: $Revision: 1.13 $
* Status: $State: Exp $
*
* CVS/RCS Log at end of file
*
*/
#ifndef DIGSDLUT_H
#define DIGSDLUT_H
#include "dcmtk/config/osconfig.h"
#include "dcmtk/dcmimgle/didislut.h"
/*---------------------*
* class declaration *
*---------------------*/
/** Class to compute and store the GSDF lookup table
*/
class DiGSDFLUT
: public DiDisplayLUT
{
public:
/** constructor
*
** @param count number of values to be stored in the LUT
* @param max maximum value to be stored in the LUT
* @param ddl_tab array of DDL values
* @param val_tab array of values
* @param ddl_cnt number of DDL values
* @param gsdf_tab array with Grayscale Standard Display Function
* @param gsdf_spl array with helper function used for interpolation
* @param gsdf_cnt number of values in GSDF array
* @param jnd_min minimum JND index value
* @param jnd_max maximum JND index value
* @param lum_min minimum luminance value to be used (lower border)
* @param lum_max maximum luminance value to be used (upper border)
* @param amb (reflected) ambient light value
* @param illum illumination value
* @param inverse apply inverse transformation if OFTrue
* @param stream output stream (used to write curve data to a file)
* @param printMode write CC and PSC to stream if OFTrue
*/
DiGSDFLUT(const unsigned long count,
const Uint16 max,
const Uint16 *ddl_tab,
const double *val_tab,
const unsigned long ddl_cnt,
const double *gsdf_tab,
const double *gsdf_spl,
const unsigned int gsdf_cnt,
const double jnd_min,
const double jnd_max,
const double lum_min,
const double lum_max,
const double amb,
const double illum,
const OFBool inverse = OFFalse,
STD_NAMESPACE ostream *stream = NULL,
const OFBool printMode = OFTrue);
/** destructor
*/
virtual ~DiGSDFLUT();
protected:
/** create lookup table
*
** @param ddl_tab array of DDL values
* @param val_tab array of luminance values
* @param ddl_cnt number of DDL values
* @param gsdf_tab array with Grayscale Standard Display Function
* @param gsdf_spl array with helper function used for interpolation
* @param gsdf_cnt number of values in GSDF array
* @param jnd_min minimum JND index value
* @param jnd_max maximum JND index value
* @param lum_min minimum luminance value to be used (lower border)
* @param lum_max maximum luminance value to be used (upper border)
* @param inverse apply inverse transformation if OFTrue
* @param stream output stream (used to write curve data to a file)
* @param printMode write CC and PSC to stream if OFTrue
*
** @return status, true if successful, false otherwise
*/
int createLUT(const Uint16 *ddl_tab,
const double *val_tab,
const unsigned long ddl_cnt,
const double *gsdf_tab,
const double *gsdf_spl,
const unsigned int gsdf_cnt,
const double jnd_min,
const double jnd_max,
const double lum_min,
const double lum_max,
const OFBool inverse = OFFalse,
STD_NAMESPACE ostream *stream = NULL,
const OFBool printMode = OFTrue);
};
#endif
/*
*
* CVS/RCS Log:
* $Log: digsdlut.h,v $
* Revision 1.13 2010-10-14 13:16:26 joergr
* Updated copyright header. Added reference to COPYRIGHT file.
*
* Revision 1.12 2006/08/15 16:30:11 meichel
* Updated the code in module dcmimgle to correctly compile when
* all standard C++ classes remain in namespace std.
*
* Revision 1.11 2005/12/08 16:47:41 meichel
* Changed include path schema for all DCMTK header files
*
* Revision 1.10 2003/12/08 18:21:48 joergr
* Removed leading underscore characters from preprocessor symbols (reserved
* symbols). Updated CVS header.
*
* Revision 1.9 2003/06/12 15:08:34 joergr
* Fixed inconsistent API documentation reported by Doxygen.
*
* Revision 1.8 2003/02/11 10:01:14 joergr
* Added support for Dmin/max to calibration routines (required for printers).
*
* Revision 1.7 2002/07/18 12:30:26 joergr
* Added support for hardcopy and softcopy input devices (camera and scanner).
*
* Revision 1.6 2002/07/02 16:23:42 joergr
* Added support for hardcopy devices to the calibrated output routines.
*
* Revision 1.5 2001/06/01 15:49:41 meichel
* Updated copyright header
*
* Revision 1.4 2000/03/08 16:24:16 meichel
* Updated copyright header.
*
* Revision 1.3 1999/10/18 15:05:52 joergr
* Enhanced command line tool dcmdspfn (added new options).
*
* Revision 1.2 1999/09/17 12:11:32 joergr
* Added/changed/completed DOC++ style comments in the header files.
*
* Revision 1.1 1999/09/10 08:50:24 joergr
* Added support for CIELAB display function. Restructured class hierarchy
* for display functions.
*
*/
|