Alien-FreeImage

 view release on metacpan or  search on metacpan

src/Source/LibTIFF4/tif_dir.h  view on Meta::CPAN

	uint16  td_nsubifd;
	uint64* td_subifd;
	/* YCbCr parameters */
	uint16  td_ycbcrsubsampling[2];
	uint16  td_ycbcrpositioning;
	/* Colorimetry parameters */
	uint16* td_transferfunction[3];
	float*	td_refblackwhite;
	/* CMYK parameters */
	int     td_inknameslen;
	char*   td_inknames;

	int     td_customValueCount;
        TIFFTagValue *td_customValues;
} TIFFDirectory;

/*
 * Field flags used to indicate fields that have been set in a directory, and
 * to reference fields when manipulating a directory.
 */

/*
 * FIELD_IGNORE is used to signify tags that are to be processed but otherwise
 * ignored.  This permits antiquated tags to be quietly read and discarded.
 * Note that a bit *is* allocated for ignored tags; this is understood by the
 * directory reading logic which uses this fact to avoid special-case handling
 */
#define FIELD_IGNORE                   0

/* multi-item fields */
#define FIELD_IMAGEDIMENSIONS          1
#define FIELD_TILEDIMENSIONS           2
#define FIELD_RESOLUTION               3
#define FIELD_POSITION                 4

/* single-item fields */
#define FIELD_SUBFILETYPE              5
#define FIELD_BITSPERSAMPLE            6
#define FIELD_COMPRESSION              7
#define FIELD_PHOTOMETRIC              8
#define FIELD_THRESHHOLDING            9
#define FIELD_FILLORDER                10
#define FIELD_ORIENTATION              15
#define FIELD_SAMPLESPERPIXEL          16
#define FIELD_ROWSPERSTRIP             17
#define FIELD_MINSAMPLEVALUE           18
#define FIELD_MAXSAMPLEVALUE           19
#define FIELD_PLANARCONFIG             20
#define FIELD_RESOLUTIONUNIT           22
#define FIELD_PAGENUMBER               23
#define FIELD_STRIPBYTECOUNTS          24
#define FIELD_STRIPOFFSETS             25
#define FIELD_COLORMAP                 26
#define FIELD_EXTRASAMPLES             31
#define FIELD_SAMPLEFORMAT             32
#define FIELD_SMINSAMPLEVALUE          33
#define FIELD_SMAXSAMPLEVALUE          34
#define FIELD_IMAGEDEPTH               35
#define FIELD_TILEDEPTH                36
#define FIELD_HALFTONEHINTS            37
#define FIELD_YCBCRSUBSAMPLING         39
#define FIELD_YCBCRPOSITIONING         40
#define	FIELD_REFBLACKWHITE            41
#define FIELD_TRANSFERFUNCTION         44
#define FIELD_INKNAMES                 46
#define FIELD_SUBIFD                   49
/*      FIELD_CUSTOM (see tiffio.h)    65 */
/* end of support for well-known tags; codec-private tags follow */
#define FIELD_CODEC                    66  /* base of codec-private tags */


/*
 * Pseudo-tags don't normally need field bits since they are not written to an
 * output file (by definition). The library also has express logic to always
 * query a codec for a pseudo-tag so allocating a field bit for one is a
 * waste.   If codec wants to promote the notion of a pseudo-tag being ``set''
 * or ``unset'' then it can do using internal state flags without polluting
 * the field bit space defined for real tags.
 */
#define FIELD_PSEUDO			0

#define FIELD_LAST			(32*FIELD_SETLONGS-1)

#define BITn(n)				(((unsigned long)1L)<<((n)&0x1f))
#define BITFIELDn(tif, n)		((tif)->tif_dir.td_fieldsset[(n)/32])
#define TIFFFieldSet(tif, field)	(BITFIELDn(tif, field) & BITn(field))
#define TIFFSetFieldBit(tif, field)	(BITFIELDn(tif, field) |= BITn(field))
#define TIFFClrFieldBit(tif, field)	(BITFIELDn(tif, field) &= ~BITn(field))

#define FieldSet(fields, f)		(fields[(f)/32] & BITn(f))
#define ResetFieldBit(fields, f)	(fields[(f)/32] &= ~BITn(f))

typedef enum {
	TIFF_SETGET_UNDEFINED = 0,
	TIFF_SETGET_ASCII = 1,
	TIFF_SETGET_UINT8 = 2,
	TIFF_SETGET_SINT8 = 3,
	TIFF_SETGET_UINT16 = 4,
	TIFF_SETGET_SINT16 = 5,
	TIFF_SETGET_UINT32 = 6,
	TIFF_SETGET_SINT32 = 7,
	TIFF_SETGET_UINT64 = 8,
	TIFF_SETGET_SINT64 = 9,
	TIFF_SETGET_FLOAT = 10,
	TIFF_SETGET_DOUBLE = 11,
	TIFF_SETGET_IFD8 = 12,
	TIFF_SETGET_INT = 13,
	TIFF_SETGET_UINT16_PAIR = 14,
	TIFF_SETGET_C0_ASCII = 15,
	TIFF_SETGET_C0_UINT8 = 16,
	TIFF_SETGET_C0_SINT8 = 17,
	TIFF_SETGET_C0_UINT16 = 18,
	TIFF_SETGET_C0_SINT16 = 19,
	TIFF_SETGET_C0_UINT32 = 20,
	TIFF_SETGET_C0_SINT32 = 21,
	TIFF_SETGET_C0_UINT64 = 22,
	TIFF_SETGET_C0_SINT64 = 23,
	TIFF_SETGET_C0_FLOAT = 24,
	TIFF_SETGET_C0_DOUBLE = 25,
	TIFF_SETGET_C0_IFD8 = 26,
	TIFF_SETGET_C16_ASCII = 27,
	TIFF_SETGET_C16_UINT8 = 28,



( run in 0.372 second using v1.01-cache-2.11-cpan-d59ab9ce9b0 )