ReactOS 0.4.17-dev-1071-gb2116d0
tif_aux.c File Reference
#include "tif_predict.h"
#include "tiffiop.h"
#include <float.h>
#include <math.h>
Include dependency graph for tif_aux.c:

Go to the source code of this file.

Functions

uint32_t _TIFFMultiply32 (TIFF *tif, uint32_t first, uint32_t second, const char *where)
 
uint64_t _TIFFMultiply64 (TIFF *tif, uint64_t first, uint64_t second, const char *where)
 
tmsize_t _TIFFMultiplySSize (TIFF *tif, tmsize_t first, tmsize_t second, const char *where)
 
tmsize_t _TIFFCastUInt64ToSSize (TIFF *tif, uint64_t val, const char *module)
 
void * _TIFFCheckRealloc (TIFF *tif, void *buffer, tmsize_t nmemb, tmsize_t elem_size, const char *what)
 
void * _TIFFCheckMalloc (TIFF *tif, tmsize_t nmemb, tmsize_t elem_size, const char *what)
 
static int TIFFDefaultTransferFunction (TIFF *tif, TIFFDirectory *td)
 
static int TIFFDefaultRefBlackWhite (TIFF *tif, TIFFDirectory *td)
 
int TIFFVGetFieldDefaulted (TIFF *tif, uint32_t tag, va_list ap)
 
int TIFFGetFieldDefaulted (TIFF *tif, uint32_t tag,...)
 
float _TIFFClampDoubleToFloat (double val)
 
uint32_t _TIFFClampDoubleToUInt32 (double val)
 
int _TIFFSeekOK (TIFF *tif, toff_t off)
 

Function Documentation

◆ _TIFFCastUInt64ToSSize()

tmsize_t _TIFFCastUInt64ToSSize ( TIFF *  tif,
uint64_t  val,
const char *  module 
)

Definition at line 84 of file tif_aux.c.

85{
87 {
88 if (tif != NULL && module != NULL)
89 {
90 TIFFErrorExtR(tif, module, "Integer overflow");
91 }
92 return 0;
93 }
94 return (tmsize_t)val;
95}
#define NULL
Definition: types.h:112
UINT64 uint64_t
Definition: types.h:77
GLuint GLfloat * val
Definition: glext.h:7180
void TIFFErrorExtR(TIFF *tif, const char *module, const char *fmt,...)
Definition: tif_error.c:107
TIFF_SSIZE_T tmsize_t
Definition: tiffio.h:67
#define TIFF_TMSIZE_T_MAX
Definition: tiffio.h:68

Referenced by TIFFRasterScanlineSize(), TIFFReadRawStrip(), TIFFReadRawTile(), TIFFScanlineSize(), TIFFStripSize(), TIFFTileRowSize(), TIFFTileSize(), TIFFVStripSize(), and TIFFVTileSize().

◆ _TIFFCheckMalloc()

void * _TIFFCheckMalloc ( TIFF *  tif,
tmsize_t  nmemb,
tmsize_t  elem_size,
const char *  what 
)

Definition at line 122 of file tif_aux.c.

124{
125 return _TIFFCheckRealloc(tif, NULL, nmemb, elem_size, what);
126}
void * _TIFFCheckRealloc(TIFF *tif, void *buffer, tmsize_t nmemb, tmsize_t elem_size, const char *what)
Definition: tif_aux.c:97

Referenced by _TIFFMergeFields(), _TIFFRewriteField(), _TIFFVSetField(), allocChoppedUpStripArrays(), EstimateStripByteCounts(), TIFFFetchDirectory(), TIFFFetchStripThing(), TIFFMergeFieldInfo(), TIFFReadDirEntryArrayWithLimit(), and TIFFSetupStrips().

◆ _TIFFCheckRealloc()

void * _TIFFCheckRealloc ( TIFF *  tif,
void *  buffer,
tmsize_t  nmemb,
tmsize_t  elem_size,
const char *  what 
)

Definition at line 97 of file tif_aux.c.

99{
100 void *cp = NULL;
101 tmsize_t count = _TIFFMultiplySSize(tif, nmemb, elem_size, NULL);
102 /*
103 * Check for integer overflow.
104 */
105 if (count != 0)
106 {
108 }
109
110 if (cp == NULL)
111 {
112 TIFFErrorExtR(tif, tif->tif_name,
113 "Failed to allocate memory for %s "
114 "(%" TIFF_SSIZE_FORMAT " elements of %" TIFF_SSIZE_FORMAT
115 " bytes each)",
116 what, nmemb, elem_size);
117 }
118
119 return cp;
120}
GLuint GLuint GLsizei count
Definition: gl.h:1545
GLuint buffer
Definition: glext.h:5915
POINT cp
Definition: magnifier.c:59
char * tif_name
Definition: tiffiop.h:114
tmsize_t _TIFFMultiplySSize(TIFF *tif, tmsize_t first, tmsize_t second, const char *where)
Definition: tif_aux.c:59
#define TIFF_SSIZE_FORMAT
Definition: tif_config.h:176
void * _TIFFreallocExt(TIFF *tif, void *p, tmsize_t s)
Definition: tif_open.c:235

Referenced by _TIFFCheckMalloc(), _TIFFMergeFields(), and TIFFMergeFieldInfo().

◆ _TIFFClampDoubleToFloat()

float _TIFFClampDoubleToFloat ( double  val)

Definition at line 391 of file tif_aux.c.

392{
393 if (val > FLT_MAX)
394 return FLT_MAX;
395 if (val < -FLT_MAX)
396 return -FLT_MAX;
397 return (float)val;
398}
#define FLT_MAX
Definition: float.h:37

Referenced by _TIFFVSetField(), and TIFFWriteDirectoryTagSampleformatArray().

◆ _TIFFClampDoubleToUInt32()

uint32_t _TIFFClampDoubleToUInt32 ( double  val)

Definition at line 400 of file tif_aux.c.

401{
402 if (val < 0)
403 return 0;
404 if (val > 0xFFFFFFFFU || val != val)
405 return 0xFFFFFFFFU;
406 return (uint32_t)val;
407}
UINT32 uint32_t
Definition: types.h:75

◆ _TIFFMultiply32()

uint32_t _TIFFMultiply32 ( TIFF *  tif,
uint32_t  first,
uint32_t  second,
const char *  where 
)

Definition at line 35 of file tif_aux.c.

37{
38 if (second && first > UINT32_MAX / second)
39 {
40 TIFFErrorExtR(tif, where, "Integer overflow in %s", where);
41 return 0;
42 }
43
44 return first * second;
45}
#define UINT32_MAX
Definition: stdint.h:85
const GLint * first
Definition: glext.h:5794

Referenced by TIFFNumberOfStrips(), and TIFFNumberOfTiles().

◆ _TIFFMultiply64()

uint64_t _TIFFMultiply64 ( TIFF *  tif,
uint64_t  first,
uint64_t  second,
const char *  where 
)

Definition at line 47 of file tif_aux.c.

49{
50 if (second && first > UINT64_MAX / second)
51 {
52 TIFFErrorExtR(tif, where, "Integer overflow in %s", where);
53 return 0;
54 }
55
56 return first * second;
57}
#define UINT64_MAX
Definition: stdint.h:86

Referenced by TIFFRasterScanlineSize64(), TIFFScanlineSize64(), TIFFTileRowSize64(), TIFFVStripSize64(), and TIFFVTileSize64().

◆ _TIFFMultiplySSize()

tmsize_t _TIFFMultiplySSize ( TIFF *  tif,
tmsize_t  first,
tmsize_t  second,
const char *  where 
)

Definition at line 59 of file tif_aux.c.

61{
62 if (first <= 0 || second <= 0)
63 {
64 if (tif != NULL && where != NULL)
65 {
66 TIFFErrorExtR(tif, where,
67 "Invalid argument to _TIFFMultiplySSize() in %s",
68 where);
69 }
70 return 0;
71 }
72
73 if (first > TIFF_TMSIZE_T_MAX / second)
74 {
75 if (tif != NULL && where != NULL)
76 {
77 TIFFErrorExtR(tif, where, "Integer overflow in %s", where);
78 }
79 return 0;
80 }
81 return first * second;
82}

Referenced by _TIFFCheckRealloc(), gtStripSeparate(), gtTileSeparate(), and setByteArray().

◆ _TIFFSeekOK()

int _TIFFSeekOK ( TIFF *  tif,
toff_t  off 
)

Definition at line 409 of file tif_aux.c.

410{
411 /* Huge offsets, especially -1 / UINT64_MAX, can cause issues */
412 /* See http://bugzilla.maptools.org/show_bug.cgi?id=2726 */
413 return off <= (~(uint64_t)0) / 2 && TIFFSeekFile(tif, off, SEEK_SET) == off;
414}
#define SEEK_SET
Definition: jmemansi.c:26
#define uint64_t
Definition: nsiface.idl:62
#define TIFFSeekFile(tif, off, whence)
Definition: tiffiop.h:282

◆ TIFFDefaultRefBlackWhite()

static int TIFFDefaultRefBlackWhite ( TIFF *  tif,
TIFFDirectory *  td 
)
static

Definition at line 176 of file tif_aux.c.

177{
178 int i;
179
180 td->td_refblackwhite = (float *)_TIFFmallocExt(tif, 6 * sizeof(float));
181 if (td->td_refblackwhite == NULL)
182 return 0;
183 if (td->td_photometric == PHOTOMETRIC_YCBCR)
184 {
185 /*
186 * YCbCr (Class Y) images must have the ReferenceBlackWhite
187 * tag set. Fix the broken images, which lacks that tag.
188 */
189 td->td_refblackwhite[0] = 0.0F;
190 td->td_refblackwhite[1] = td->td_refblackwhite[3] =
191 td->td_refblackwhite[5] = 255.0F;
192 td->td_refblackwhite[2] = td->td_refblackwhite[4] = 128.0F;
193 }
194 else
195 {
196 /*
197 * Assume RGB (Class R)
198 */
199 for (i = 0; i < 3; i++)
200 {
201 td->td_refblackwhite[2 * i + 0] = 0;
202 td->td_refblackwhite[2 * i + 1] =
203 (float)((1L << td->td_bitspersample) - 1L);
204 }
205 }
206 return 1;
207}
static float(WINAPI *pD2D1Tan)(float angle)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
SYMCRYPT_MAGIC_FIELD union @5304 td
void * _TIFFmallocExt(TIFF *tif, tmsize_t s)
Definition: tif_open.c:173
#define PHOTOMETRIC_YCBCR
Definition: tiff.h:227

Referenced by TIFFVGetFieldDefaulted().

◆ TIFFDefaultTransferFunction()

static int TIFFDefaultTransferFunction ( TIFF *  tif,
TIFFDirectory *  td 
)
static

Definition at line 128 of file tif_aux.c.

129{
130 uint16_t **tf = td->td_transferfunction;
131 tmsize_t i, n, nbytes;
132
133 tf[0] = tf[1] = tf[2] = 0;
134 // Do not try to generate a default TransferFunction beyond 24 bits.
135 // This otherwise leads to insane amounts, resulting in denial of service
136 // See https://github.com/OSGeo/gdal/issues/10875
137 if (td->td_bitspersample > 24)
138 return 0;
139
140 n = ((tmsize_t)1) << td->td_bitspersample;
141 nbytes = n * sizeof(uint16_t);
142 tf[0] = (uint16_t *)_TIFFmallocExt(tif, nbytes);
143 if (tf[0] == NULL)
144 return 0;
145 tf[0][0] = 0;
146 for (i = 1; i < n; i++)
147 {
148 double t = (double)i / ((double)n - 1.);
149 tf[0][i] = (uint16_t)floor(65535. * pow(t, 2.2) + .5);
150 }
151
152 if (td->td_samplesperpixel - td->td_extrasamples > 1)
153 {
154 tf[1] = (uint16_t *)_TIFFmallocExt(tif, nbytes);
155 if (tf[1] == NULL)
156 goto bad;
157 _TIFFmemcpy(tf[1], tf[0], nbytes);
158 tf[2] = (uint16_t *)_TIFFmallocExt(tif, nbytes);
159 if (tf[2] == NULL)
160 goto bad;
161 _TIFFmemcpy(tf[2], tf[0], nbytes);
162 }
163 return 1;
164
165bad:
166 if (tf[0])
167 _TIFFfreeExt(tif, tf[0]);
168 if (tf[1])
169 _TIFFfreeExt(tif, tf[1]);
170 if (tf[2])
171 _TIFFfreeExt(tif, tf[2]);
172 tf[0] = tf[1] = tf[2] = 0;
173 return 0;
174}
_ACRTIMP double __cdecl floor(double)
Definition: floor.c:18
unsigned short uint16_t
Definition: stdint.h:35
double pow(double x, double y)
Definition: freeldr.c:179
GLdouble GLdouble t
Definition: gl.h:2047
GLdouble n
Definition: glext.h:7729
HFONT tf
Definition: icontest.c:17
static const char mbstate_t *static wchar_t const char mbstate_t *static const wchar_t int *static double
Definition: string.c:91
#define uint16_t
Definition: nsiface.idl:60
void _TIFFfreeExt(TIFF *tif, void *p)
Definition: tif_open.c:275
void _TIFFmemcpy(void *d, const void *s, tmsize_t c)
Definition: tif_unix.c:355

Referenced by TIFFVGetFieldDefaulted().

◆ TIFFGetFieldDefaulted()

int TIFFGetFieldDefaulted ( TIFF *  tif,
uint32_t  tag,
  ... 
)

Definition at line 380 of file tif_aux.c.

381{
382 int ok;
383 va_list ap;
384
385 va_start(ap, tag);
387 va_end(ap);
388 return (ok);
389}
#define ok(value,...)
Definition: atltest.h:57
#define va_end(v)
Definition: stdarg.h:28
#define va_start(v, l)
Definition: stdarg.h:26
char * va_list
Definition: vadefs.h:50
Definition: ecma_167.h:138
int TIFFVGetFieldDefaulted(TIFF *tif, uint32_t tag, va_list ap)
Definition: tif_aux.c:217
void int int ULONGLONG int va_list * ap
Definition: winesup.h:36

Referenced by gtStripContig(), gtStripSeparate(), initCIELabConversion(), initYCbCrConversion(), PickContigCase(), PickSeparateCase(), TIFFReadRGBAStripExt(), TIFFReadRGBATileExt(), TIFFRGBAImageBegin(), TIFFRGBAImageOK(), TIFFScanlineSize64(), TIFFVStripSize64(), TIFFVTileSize64(), and TIFFWriteDirectorySec().

◆ TIFFVGetFieldDefaulted()

int TIFFVGetFieldDefaulted ( TIFF *  tif,
uint32_t  tag,
va_list  ap 
)

Definition at line 217 of file tif_aux.c.

218{
219 TIFFDirectory *td = &tif->tif_dir;
220
221 if (TIFFVGetField(tif, tag, ap))
222 return (1);
223 switch (tag)
224 {
226 *va_arg(ap, uint32_t *) = td->td_subfiletype;
227 return (1);
229 *va_arg(ap, uint16_t *) = td->td_bitspersample;
230 return (1);
232 *va_arg(ap, uint16_t *) = td->td_threshholding;
233 return (1);
235 *va_arg(ap, uint16_t *) = td->td_fillorder;
236 return (1);
238 *va_arg(ap, uint16_t *) = td->td_orientation;
239 return (1);
241 *va_arg(ap, uint16_t *) = td->td_samplesperpixel;
242 return (1);
244 *va_arg(ap, uint32_t *) = td->td_rowsperstrip;
245 return (1);
247 *va_arg(ap, uint16_t *) = td->td_minsamplevalue;
248 return (1);
250 {
251 uint16_t maxsamplevalue;
252 /* td_bitspersample=1 is always set in TIFFDefaultDirectory().
253 * Therefore, td_maxsamplevalue has to be re-calculated in
254 * TIFFGetFieldDefaulted(). */
255 if (td->td_bitspersample > 0)
256 {
257 /* This shift operation into a uint16_t limits the value to
258 * 65535 even if td_bitspersamle is > 16 */
259 if (td->td_bitspersample <= 16)
260 {
261 maxsamplevalue = (1 << td->td_bitspersample) -
262 1; /* 2**(BitsPerSample) - 1 */
263 }
264 else
265 {
266 maxsamplevalue = 65535;
267 }
268 }
269 else
270 {
271 maxsamplevalue = 0;
272 }
273 *va_arg(ap, uint16_t *) = maxsamplevalue;
274 return (1);
275 }
277 *va_arg(ap, uint16_t *) = td->td_planarconfig;
278 return (1);
280 *va_arg(ap, uint16_t *) = td->td_resolutionunit;
281 return (1);
283 {
285 if (sp == NULL)
286 {
288 tif, tif->tif_name,
289 "Cannot get \"Predictor\" tag as plugin is not configured");
290 *va_arg(ap, uint16_t *) = 0;
291 return 0;
292 }
293 *va_arg(ap, uint16_t *) = (uint16_t)sp->predictor;
294 return 1;
295 }
296 case TIFFTAG_DOTRANGE:
297 *va_arg(ap, uint16_t *) = 0;
298 *va_arg(ap, uint16_t *) = (1 << td->td_bitspersample) - 1;
299 return (1);
300 case TIFFTAG_INKSET:
302 return 1;
304 *va_arg(ap, uint16_t *) = 4;
305 return (1);
307 *va_arg(ap, uint16_t *) = td->td_extrasamples;
308 *va_arg(ap, const uint16_t **) = td->td_sampleinfo;
309 return (1);
310 case TIFFTAG_MATTEING:
311 *va_arg(ap, uint16_t *) =
312 (td->td_extrasamples == 1 &&
313 td->td_sampleinfo[0] == EXTRASAMPLE_ASSOCALPHA);
314 return (1);
316 *va_arg(ap, uint32_t *) = td->td_tiledepth;
317 return (1);
318 case TIFFTAG_DATATYPE:
319 *va_arg(ap, uint16_t *) = td->td_sampleformat - 1;
320 return (1);
322 *va_arg(ap, uint16_t *) = td->td_sampleformat;
323 return (1);
325 *va_arg(ap, uint32_t *) = td->td_imagedepth;
326 return (1);
328 {
329 /* defaults are from CCIR Recommendation 601-1 */
330 static const float ycbcrcoeffs[] = {0.299f, 0.587f, 0.114f};
331 *va_arg(ap, const float **) = ycbcrcoeffs;
332 return 1;
333 }
335 *va_arg(ap, uint16_t *) = td->td_ycbcrsubsampling[0];
336 *va_arg(ap, uint16_t *) = td->td_ycbcrsubsampling[1];
337 return (1);
339 *va_arg(ap, uint16_t *) = td->td_ycbcrpositioning;
340 return (1);
342 {
343 /* TIFF 6.0 specification tells that it is no default
344 value for the WhitePoint, but AdobePhotoshop TIFF
345 Technical Note tells that it should be CIE D50. */
346 static const float whitepoint[] = {
347 D50_X0 / (D50_X0 + D50_Y0 + D50_Z0),
348 D50_Y0 / (D50_X0 + D50_Y0 + D50_Z0)};
349 *va_arg(ap, const float **) = whitepoint;
350 return 1;
351 }
353 if (!td->td_transferfunction[0] &&
355 {
356 TIFFErrorExtR(tif, tif->tif_name,
357 "No space for \"TransferFunction\" tag");
358 return (0);
359 }
360 *va_arg(ap, const uint16_t **) = td->td_transferfunction[0];
361 if (td->td_samplesperpixel - td->td_extrasamples > 1)
362 {
363 *va_arg(ap, const uint16_t **) = td->td_transferfunction[1];
364 *va_arg(ap, const uint16_t **) = td->td_transferfunction[2];
365 }
366 return (1);
368 if (!td->td_refblackwhite && !TIFFDefaultRefBlackWhite(tif, td))
369 return (0);
370 *va_arg(ap, const float **) = td->td_refblackwhite;
371 return (1);
372 }
373 return 0;
374}
#define va_arg(v, l)
Definition: stdarg.h:27
if(dx< 0)
Definition: linetemp.h:194
static const WCHAR sp[]
Definition: suminfo.c:433
TIFFDirectory tif_dir
Definition: tiffiop.h:157
uint8_t * tif_data
Definition: tiffiop.h:216
static int TIFFDefaultTransferFunction(TIFF *tif, TIFFDirectory *td)
Definition: tif_aux.c:128
static int TIFFDefaultRefBlackWhite(TIFF *tif, TIFFDirectory *td)
Definition: tif_aux.c:176
int TIFFVGetField(TIFF *tif, uint32_t tag, va_list ap)
Definition: tif_dir.c:1599
#define TIFFTAG_BITSPERSAMPLE
Definition: tiff.h:180
#define TIFFTAG_RESOLUTIONUNIT
Definition: tiff.h:287
#define TIFFTAG_WHITEPOINT
Definition: tiff.h:307
#define TIFFTAG_DOTRANGE
Definition: tiff.h:327
#define EXTRASAMPLE_ASSOCALPHA
Definition: tiff.h:331
#define TIFFTAG_FILLORDER
Definition: tiff.h:240
#define TIFFTAG_SAMPLESPERPIXEL
Definition: tiff.h:257
#define TIFFTAG_INKSET
Definition: tiff.h:322
#define TIFFTAG_DATATYPE
Definition: tiff.h:406
#define TIFFTAG_IMAGEDEPTH
Definition: tiff.h:407
#define TIFFTAG_MAXSAMPLEVALUE
Definition: tiff.h:261
#define TIFFTAG_TILEDEPTH
Definition: tiff.h:408
#define TIFFTAG_EXTRASAMPLES
Definition: tiff.h:329
#define TIFFTAG_YCBCRCOEFFICIENTS
Definition: tiff.h:387
#define TIFFTAG_ORIENTATION
Definition: tiff.h:248
#define TIFFTAG_MATTEING
Definition: tiff.h:405
#define TIFFTAG_MINSAMPLEVALUE
Definition: tiff.h:260
#define TIFFTAG_NUMBEROFINKS
Definition: tiff.h:326
#define TIFFTAG_TRANSFERFUNCTION
Definition: tiff.h:298
#define INKSET_CMYK
Definition: tiff.h:323
#define TIFFTAG_YCBCRSUBSAMPLING
Definition: tiff.h:388
#define TIFFTAG_ROWSPERSTRIP
Definition: tiff.h:258
#define TIFFTAG_SAMPLEFORMAT
Definition: tiff.h:333
#define TIFFTAG_REFERENCEBLACKWHITE
Definition: tiff.h:392
#define TIFFTAG_PLANARCONFIG
Definition: tiff.h:264
#define TIFFTAG_SUBFILETYPE
Definition: tiff.h:170
#define TIFFTAG_PREDICTOR
Definition: tiff.h:303
#define TIFFTAG_YCBCRPOSITIONING
Definition: tiff.h:389
#define TIFFTAG_THRESHHOLDING
Definition: tiff.h:234
#define D50_X0
Definition: tiffio.h:132
#define D50_Y0
Definition: tiffio.h:133
#define D50_Z0
Definition: tiffio.h:134

Referenced by TIFFGetFieldDefaulted().