📄 tiffio.h
字号:
typedef void (*TIFFErrorHandler)(const char*, const char*, va_list);typedef void (*TIFFErrorHandlerExt)(thandle_t, const char*, const char*, va_list);typedef tsize_t (*TIFFReadWriteProc)(thandle_t, tdata_t, tsize_t);typedef toff_t (*TIFFSeekProc)(thandle_t, toff_t, int);typedef int (*TIFFCloseProc)(thandle_t);typedef toff_t (*TIFFSizeProc)(thandle_t);typedef int (*TIFFMapFileProc)(thandle_t, tdata_t*, toff_t*);typedef void (*TIFFUnmapFileProc)(thandle_t, tdata_t, toff_t);typedef void (*TIFFExtendProc)(TIFF*); extern const char* TIFFGetVersion(void);extern const TIFFCodec* TIFFFindCODEC(uint16);extern TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod);extern void TIFFUnRegisterCODEC(TIFFCodec*);extern int TIFFIsCODECConfigured(uint16);extern TIFFCodec* TIFFGetConfiguredCODECs(void);/* * Auxiliary functions. */extern tdata_t _TIFFmalloc(tsize_t);extern tdata_t _TIFFrealloc(tdata_t, tsize_t);extern void _TIFFmemset(tdata_t, int, tsize_t);extern void _TIFFmemcpy(tdata_t, const tdata_t, tsize_t);extern int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t);extern void _TIFFfree(tdata_t);/*** Stuff, related to tag handling and creating custom tags.*/extern int TIFFGetTagListCount( TIFF * );extern ttag_t TIFFGetTagListEntry( TIFF *, int tag_index ); #define TIFF_ANY TIFF_NOTYPE /* for field descriptor searching */#define TIFF_VARIABLE -1 /* marker for variable length tags */#define TIFF_SPP -2 /* marker for SamplesPerPixel tags */#define TIFF_VARIABLE2 -3 /* marker for uint32 var-length tags */#define FIELD_CUSTOM 65 typedef struct { ttag_t field_tag; /* field's tag */ short field_readcount; /* read count/TIFF_VARIABLE/TIFF_SPP */ short field_writecount; /* write count/TIFF_VARIABLE */ TIFFDataType field_type; /* type of associated data */ unsigned short field_bit; /* bit in fieldsset bit vector */ unsigned char field_oktochange; /* if true, can change while writing */ unsigned char field_passcount; /* if true, pass dir count on set */ char *field_name; /* ASCII name */} TIFFFieldInfo;typedef struct _TIFFTagValue { const TIFFFieldInfo *info; int count; void *value;} TIFFTagValue;extern void TIFFMergeFieldInfo(TIFF*, const TIFFFieldInfo[], int);extern const TIFFFieldInfo* TIFFFindFieldInfo(TIFF*, ttag_t, TIFFDataType);extern const TIFFFieldInfo* TIFFFindFieldInfoByName(TIFF* , const char *, TIFFDataType);extern const TIFFFieldInfo* TIFFFieldWithTag(TIFF*, ttag_t);extern const TIFFFieldInfo* TIFFFieldWithName(TIFF*, const char *);typedef int (*TIFFVSetMethod)(TIFF*, ttag_t, va_list);typedef int (*TIFFVGetMethod)(TIFF*, ttag_t, va_list);typedef void (*TIFFPrintMethod)(TIFF*, FILE*, long); typedef struct { TIFFVSetMethod vsetfield; /* tag set routine */ TIFFVGetMethod vgetfield; /* tag get routine */ TIFFPrintMethod printdir; /* directory print routine */} TIFFTagMethods; extern TIFFTagMethods *TIFFAccessTagMethods( TIFF * );extern void *TIFFGetClientInfo( TIFF *, const char * );extern void TIFFSetClientInfo( TIFF *, void *, const char * );extern void TIFFCleanup(TIFF*);extern void TIFFClose(TIFF*);extern int TIFFFlush(TIFF*);extern int TIFFFlushData(TIFF*);extern int TIFFGetField(TIFF*, ttag_t, ...);extern int TIFFVGetField(TIFF*, ttag_t, va_list);extern int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...);extern int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list);extern int TIFFReadDirectory(TIFF*);extern int TIFFReadCustomDirectory(TIFF*, toff_t, const TIFFFieldInfo[], size_t);extern int TIFFReadEXIFDirectory(TIFF*, toff_t);extern tsize_t TIFFScanlineSize(TIFF*);extern tsize_t TIFFRasterScanlineSize(TIFF*);extern tsize_t TIFFStripSize(TIFF*);extern tsize_t TIFFRawStripSize(TIFF*, tstrip_t);extern tsize_t TIFFVStripSize(TIFF*, uint32);extern tsize_t TIFFTileRowSize(TIFF*);extern tsize_t TIFFTileSize(TIFF*);extern tsize_t TIFFVTileSize(TIFF*, uint32);extern uint32 TIFFDefaultStripSize(TIFF*, uint32);extern void TIFFDefaultTileSize(TIFF*, uint32*, uint32*);extern int TIFFFileno(TIFF*);extern int TIFFSetFileno(TIFF*, int);extern thandle_t TIFFClientdata(TIFF*);extern thandle_t TIFFSetClientdata(TIFF*, thandle_t);extern int TIFFGetMode(TIFF*);extern int TIFFSetMode(TIFF*, int);extern int TIFFIsTiled(TIFF*);extern int TIFFIsByteSwapped(TIFF*);extern int TIFFIsUpSampled(TIFF*);extern int TIFFIsMSB2LSB(TIFF*);extern int TIFFIsBigEndian(TIFF*);extern TIFFReadWriteProc TIFFGetReadProc(TIFF*);extern TIFFReadWriteProc TIFFGetWriteProc(TIFF*);extern TIFFSeekProc TIFFGetSeekProc(TIFF*);extern TIFFCloseProc TIFFGetCloseProc(TIFF*);extern TIFFSizeProc TIFFGetSizeProc(TIFF*);extern TIFFMapFileProc TIFFGetMapFileProc(TIFF*);extern TIFFUnmapFileProc TIFFGetUnmapFileProc(TIFF*);extern uint32 TIFFCurrentRow(TIFF*);extern tdir_t TIFFCurrentDirectory(TIFF*);extern tdir_t TIFFNumberOfDirectories(TIFF*);extern uint32 TIFFCurrentDirOffset(TIFF*);extern tstrip_t TIFFCurrentStrip(TIFF*);extern ttile_t TIFFCurrentTile(TIFF*);extern int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t);extern int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t);extern int TIFFSetupStrips(TIFF *);extern int TIFFWriteCheck(TIFF*, int, const char *);extern void TIFFFreeDirectory(TIFF*);extern int TIFFCreateDirectory(TIFF*);extern int TIFFLastDirectory(TIFF*);extern int TIFFSetDirectory(TIFF*, tdir_t);extern int TIFFSetSubDirectory(TIFF*, uint32);extern int TIFFUnlinkDirectory(TIFF*, tdir_t);extern int TIFFSetField(TIFF*, ttag_t, ...);extern int TIFFVSetField(TIFF*, ttag_t, va_list);extern int TIFFWriteDirectory(TIFF *);extern int TIFFCheckpointDirectory(TIFF *);extern int TIFFRewriteDirectory(TIFF *);extern int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int);#if defined(c_plusplus) || defined(__cplusplus)extern void TIFFPrintDirectory(TIFF*, FILE*, long = 0);extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0);extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0);extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0);extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int = ORIENTATION_BOTLEFT, int = 0);#elseextern void TIFFPrintDirectory(TIFF*, FILE*, long);extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t);extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t);extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int);extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int);#endifextern int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * );extern int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * );extern int TIFFRGBAImageOK(TIFF*, char [1024]);extern int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]);extern int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32);extern void TIFFRGBAImageEnd(TIFFRGBAImage*);extern TIFF* TIFFOpen(const char*, const char*);# ifdef __WIN32__extern TIFF* TIFFOpenW(const wchar_t*, const char*);# endif /* __WIN32__ */extern TIFF* TIFFFdOpen(int, const char*, const char*);extern TIFF* TIFFClientOpen(const char*, const char*, thandle_t, TIFFReadWriteProc, TIFFReadWriteProc, TIFFSeekProc, TIFFCloseProc, TIFFSizeProc, TIFFMapFileProc, TIFFUnmapFileProc);extern const char* TIFFFileName(TIFF*);extern const char* TIFFSetFileName(TIFF*, const char *);extern void TIFFError(const char*, const char*, ...);extern void TIFFErrorExt(thandle_t, const char*, const char*, ...);extern void TIFFWarning(const char*, const char*, ...);extern void TIFFWarningExt(thandle_t, const char*, const char*, ...);extern TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler);extern TIFFErrorHandlerExt TIFFSetErrorHandlerExt(TIFFErrorHandlerExt);extern TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler);extern TIFFErrorHandlerExt TIFFSetWarningHandlerExt(TIFFErrorHandlerExt);extern TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc);extern ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t);extern int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t);extern ttile_t TIFFNumberOfTiles(TIFF*);extern tsize_t TIFFReadTile(TIFF*, tdata_t, uint32, uint32, uint32, tsample_t);extern tsize_t TIFFWriteTile(TIFF*, tdata_t, uint32, uint32, uint32, tsample_t);extern tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t);extern tstrip_t TIFFNumberOfStrips(TIFF*);extern tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);extern tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);extern tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);extern tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t);extern tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);extern tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);extern tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);extern tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t);extern int TIFFDataWidth(TIFFDataType); /* table of tag datatype widths */extern void TIFFSetWriteOffset(TIFF*, toff_t);extern void TIFFSwabShort(uint16*);extern void TIFFSwabLong(uint32*);extern void TIFFSwabDouble(double*);extern void TIFFSwabArrayOfShort(uint16*, unsigned long);extern void TIFFSwabArrayOfTriples(uint8*, unsigned long);extern void TIFFSwabArrayOfLong(uint32*, unsigned long);extern void TIFFSwabArrayOfDouble(double*, unsigned long);extern void TIFFReverseBits(unsigned char *, unsigned long);extern const unsigned char* TIFFGetBitRevTable(int);#ifdef LOGLUV_PUBLIC#define U_NEU 0.210526316#define V_NEU 0.473684211#define UVSCALE 410.extern double LogL16toY(int);extern double LogL10toY(int);extern void XYZtoRGB24(float*, uint8*);extern int uv_decode(double*, double*, int);extern void LogLuv24toXYZ(uint32, float*);extern void LogLuv32toXYZ(uint32, float*);#if defined(c_plusplus) || defined(__cplusplus)extern int LogL16fromY(double, int = SGILOGENCODE_NODITHER);extern int LogL10fromY(double, int = SGILOGENCODE_NODITHER);extern int uv_encode(double, double, int = SGILOGENCODE_NODITHER);extern uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER);extern uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER);#elseextern int LogL16fromY(double, int);extern int LogL10fromY(double, int);extern int uv_encode(double, double, int);extern uint32 LogLuv24fromXYZ(float*, int);extern uint32 LogLuv32fromXYZ(float*, int);#endif#endif /* LOGLUV_PUBLIC */ extern int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*);extern void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32, float *, float *, float *);extern void TIFFXYZToRGB(TIFFCIELabToRGB *, float, float, float, uint32 *, uint32 *, uint32 *);extern int TIFFYCbCrToRGBInit(TIFFYCbCrToRGB*, float*, float*);extern void TIFFYCbCrtoRGB(TIFFYCbCrToRGB *, uint32, int32, int32, uint32 *, uint32 *, uint32 *);#if defined(c_plusplus) || defined(__cplusplus)}#endif#endif /* _TIFFIO_ *//* vim: set ts=8 sts=8 sw=8 noet: */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -