|
Packit |
7838c8 |
/*
|
|
Packit |
7838c8 |
* Private Extended TIFF library interface.
|
|
Packit |
7838c8 |
*
|
|
Packit |
7838c8 |
* uses private LIBTIFF interface.
|
|
Packit |
7838c8 |
*
|
|
Packit |
7838c8 |
* The portions of this module marked "XXX" should be
|
|
Packit |
7838c8 |
* modified to support your tags instead.
|
|
Packit |
7838c8 |
*
|
|
Packit |
7838c8 |
* written by: Niles D. Ritter
|
|
Packit |
7838c8 |
*
|
|
Packit |
7838c8 |
*/
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
#ifndef __xtiffiop_h
|
|
Packit |
7838c8 |
#define __xtiffiop_h
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
#include "tiffiop.h"
|
|
Packit |
7838c8 |
#include "xtiffio.h"
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
/**********************************************************************
|
|
Packit |
7838c8 |
* User Configuration
|
|
Packit |
7838c8 |
**********************************************************************/
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
/* XXX - Define number of your extended tags here */
|
|
Packit |
7838c8 |
#define NUM_XFIELD 3
|
|
Packit |
7838c8 |
#define XFIELD_BASE (FIELD_LAST-NUM_XFIELD)
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
/* XXX - Define your Tag Fields here */
|
|
Packit |
7838c8 |
#define FIELD_EXAMPLE_MULTI (XFIELD_BASE+0)
|
|
Packit |
7838c8 |
#define FIELD_EXAMPLE_SINGLE (XFIELD_BASE+1)
|
|
Packit |
7838c8 |
#define FIELD_EXAMPLE_ASCII (XFIELD_BASE+2)
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
/* XXX - Define Private directory tag structure here */
|
|
Packit |
7838c8 |
struct XTIFFDirectory {
|
|
Packit |
7838c8 |
uint16 xd_num_multi; /* dir-count for the multi tag */
|
|
Packit |
7838c8 |
double* xd_example_multi;
|
|
Packit |
7838c8 |
uint32 xd_example_single;
|
|
Packit |
7838c8 |
char* xd_example_ascii;
|
|
Packit |
7838c8 |
};
|
|
Packit |
7838c8 |
typedef struct XTIFFDirectory XTIFFDirectory;
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
/**********************************************************************
|
|
Packit |
7838c8 |
* Nothing below this line should need to be changed by the user.
|
|
Packit |
7838c8 |
**********************************************************************/
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
struct xtiff {
|
|
Packit |
7838c8 |
TIFF *xtif_tif; /* parent TIFF pointer */
|
|
Packit |
7838c8 |
uint32 xtif_flags;
|
|
Packit |
7838c8 |
#define XTIFFP_PRINT 0x00000001
|
|
Packit |
7838c8 |
XTIFFDirectory xtif_dir; /* internal rep of current directory */
|
|
Packit |
7838c8 |
TIFFVSetMethod xtif_vsetfield; /* inherited tag set routine */
|
|
Packit |
7838c8 |
TIFFVGetMethod xtif_vgetfield; /* inherited tag get routine */
|
|
Packit |
7838c8 |
TIFFPrintMethod xtif_printdir; /* inherited dir print method */
|
|
Packit |
7838c8 |
};
|
|
Packit |
7838c8 |
typedef struct xtiff xtiff;
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
#define PARENT(xt,pmember) ((xt)->xtif_ ## pmember)
|
|
Packit |
7838c8 |
#define TIFFMEMBER(tf,pmember) ((tf)->tif_ ## pmember)
|
|
Packit |
7838c8 |
#define XTIFFDIR(tif) ((xtiff *)TIFFMEMBER(tif,clientdir))
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
/* Extended TIFF flags */
|
|
Packit |
7838c8 |
#define XTIFF_INITIALIZED 0x80000000
|
|
Packit |
7838c8 |
|
|
Packit |
7838c8 |
#endif /* __xtiffiop_h */
|
|
Packit |
7838c8 |
/*
|
|
Packit |
7838c8 |
* Local Variables:
|
|
Packit |
7838c8 |
* mode: c
|
|
Packit |
7838c8 |
* c-basic-offset: 8
|
|
Packit |
7838c8 |
* fill-column: 78
|
|
Packit |
7838c8 |
* End:
|
|
Packit |
7838c8 |
*/
|