Statistics
| Revision:

svn-gvsig-desktop / trunk / libraries / libjni-mrsid / include / metadata / lti_metadataTypes.h @ 3539

History | View | Annotate | Download (9.12 KB)

1
/* $Id: lti_metadataTypes.h 3539 2006-01-09 12:23:20Z nacho $ */
2
/* //////////////////////////////////////////////////////////////////////////
3
//                                                                         //
4
// This code is Copyright (c) 2004 LizardTech, Inc, 1008 Western Avenue,   //
5
// Suite 200, Seattle, WA 98104.  Unauthorized use or distribution         //
6
// prohibited.  Access to and use of this code is permitted only under     //
7
// license from LizardTech, Inc.  Portions of the code are protected by    //
8
// US and foreign patents and other filings. All Rights Reserved.          //
9
//                                                                         //
10
////////////////////////////////////////////////////////////////////////// */
11
/* PUBLIC - C */
12

    
13
#ifndef LTI_METADATATYPES_H
14
#define LTI_METADATATYPES_H
15

    
16
#include "lt_base.h"
17

    
18
#if defined(LT_COMPILER_MS)
19
   #pragma warning(push,4)
20
#endif
21

    
22
#ifdef LT_CPLUSPLUS
23
extern "C" {
24
#endif
25

    
26
/**
27
 * enums corresponding to tag strings
28
 *
29
 * These constants are enums that may be used in place of the text strings
30
 * used as tag names.
31
 */
32
typedef enum LTIMetadataTag
33
{
34
#ifndef DOXYGEN_EXCLUDE
35
   LTI_METADATA_TAG_INVALID                              = 0,
36
   LTI_METADATA_TAG_Unknown                              = 1,
37
   LTI_METADATA_TAG_TestScalar                           = 2,
38
   LTI_METADATA_TAG_TestVector                           = 3,
39
   LTI_METADATA_TAG_TestArray                            = 4,
40

    
41
   LTI_METADATA_TAG_IMAGE__SOM                           = 10,    /* short */
42
   LTI_METADATA_TAG_IMAGE__EOM                           = 11,    /* short */
43

    
44
   LTI_METADATA_TAG_IMAGE__INPUT_FORMAT                  = 100,   /* ascii */
45
   LTI_METADATA_TAG_IMAGE__CREATION_DATE                 = 101,   /* ascii */
46
   LTI_METADATA_TAG_IMAGE__INPUT_NAME                    = 102,   /* ascii */
47
   LTI_METADATA_TAG_IMAGE__NO_DATA_VALUE                 = 103,   /* byte */
48
   LTI_METADATA_TAG_IMAGE__INPUT_LUT                     = 104,   /* byte */
49
   LTI_METADATA_TAG_IMAGE__NO_DITHER                     = 105,   /* byte */
50
   LTI_METADATA_TAG_IMAGE__INPUT_FILE_SIZE               = 106,   /* double */
51
   LTI_METADATA_TAG_IMAGE__DYNAMIC_RANGE_WINDOW          = 107,   /* double */
52
   LTI_METADATA_TAG_IMAGE__DYNAMIC_RANGE_LEVEL           = 108,   /* double */
53
   LTI_METADATA_TAG_IMAGE__TARGET_COMPRESSION_RATIO      = 109,   /* float */
54
   LTI_METADATA_TAG_IMAGE__COMPRESSION_WEIGHT            = 110,   /* float */
55
   LTI_METADATA_TAG_IMAGE__COMPRESSION_KWEIGHT           = 111,   /* float */
56
   LTI_METADATA_TAG_IMAGE__COMPRESSION_GAMMA             = 112,   /* float */
57
   LTI_METADATA_TAG_IMAGE__WIDTH                         = 113,   /* long */
58
   LTI_METADATA_TAG_IMAGE__HEIGHT                        = 114,   /* long */
59
   LTI_METADATA_TAG_IMAGE__COMPRESSION_BLOCK_SIZE        = 115,   /* long */
60
   LTI_METADATA_TAG_IMAGE__COLOR_SCHEME                  = 116,   /* long */
61
   LTI_METADATA_TAG_IMAGE__COMPRESSION_NLEV              = 117,   /* long */
62
   LTI_METADATA_TAG_IMAGE__COMPRESSION_VERSION           = 118,   /* slong */
63
   LTI_METADATA_TAG_IMAGE__DEFAULT_DATA_VALUE            = 119,   /* float or short or byte */
64
   LTI_METADATA_TAG_IMAGE__TRANSPARENT_DATA_VALUE        = 120,   /* float or short or byte */
65
   LTI_METADATA_TAG_IMAGE__FILE_IS_LOCKED                = 121,   /* byte */
66
   LTI_METADATA_TAG_IMAGE__KEY                           = 122,   /* byte */
67
   LTI_METADATA_TAG_IMAGE__SIGNATURE                     = 123,   /* byte */
68
   LTI_METADATA_TAG_IMAGE__XY_ORIGIN                     = 124,   /* double */
69
   LTI_METADATA_TAG_IMAGE__Z_ORIGIN                      = 125,   /* double */
70
   LTI_METADATA_TAG_IMAGE__X_RESOLUTION                  = 126,   /* double */
71
   LTI_METADATA_TAG_IMAGE__Y_RESOLUTION                  = 127,   /* double */
72
   LTI_METADATA_TAG_IMAGE__Z_RESOLUTION                  = 128,   /* double */
73
   LTI_METADATA_TAG_IMAGE__X_ROTATION                    = 129,        /* double */
74
   LTI_METADATA_TAG_IMAGE__BITS_PER_SAMPLE               = 130,   /* short */
75
   LTI_METADATA_TAG_IMAGE__HORIZONTAL_UNITS              = 131,   /* short */
76
   LTI_METADATA_TAG_IMAGE__VERTICAL_UNITS                = 132,   /* short */
77
   LTI_METADATA_TAG_IMAGE__DATA_TYPE                     = 133,   /* long */
78
   LTI_METADATA_TAG_IMAGE__Z_UNITS                       = 134,   /* (unknown type) */
79
   LTI_METADATA_TAG_IMAGE__Y_ROTATION                    = 135,        /* (unknown type) */
80

    
81
   LTI_METADATA_TAG_GEO__PCSCitationGeoKey               = 200,   /* ascii */
82
   LTI_METADATA_TAG_GEO__HORIZONTAL_DATUM                = 201,   /* short */
83
   LTI_METADATA_TAG_GEO__ModelTypeGeoKey                 = 202,   /* short */
84
   LTI_METADATA_TAG_GEO__ProjectedCSTypeGeoKey           = 203,   /* short */
85
   LTI_METADATA_TAG_GEO__HORIZONTAL_COORDSYSTEMZONE      = 204,   /* (unknown type) */
86

    
87
   LTI_METADATA_TAG_USGS__QUADCOMMENT                    = 300,   /* ascii */
88
   LTI_METADATA_TAG_USGS__QUADRECT                       = 301,   /* double */
89

    
90
   LTI_METADATA_TAG_IMG__CLASS_NAME                      = 400,   /* ascii */
91
   LTI_METADATA_TAG_IMG__HORIZONTAL_UNITS                = 401,   /* ascii */
92
   LTI_METADATA_TAG_IMG__TIME_STAMP                      = 402,   /* ascii */
93
   LTI_METADATA_TAG_IMG__PROJECTION_NAME                 = 403,   /* ascii */
94
   LTI_METADATA_TAG_IMG__PROJECTION_TYPE                 = 404,   /* ascii */
95
   LTI_METADATA_TAG_IMG__PROJECTION_PARAMETERS           = 405,   /* ascii */
96
   LTI_METADATA_TAG_IMG__SPHEROID_NAME                   = 406,   /* ascii */
97
   LTI_METADATA_TAG_IMG__BYTEORDER                       = 407,        /* ascii */
98

    
99
   LTI_METADATA_TAG_IMG__SPHEROID_SEMI_MAJOR_AXIS        = 408,   /* double */
100
   LTI_METADATA_TAG_IMG__SPHEROID_SEMI_MINOR_AXIS        = 409,   /* double */
101
   LTI_METADATA_TAG_IMG__SPHEROID_ECCENTRICITY_SQUARED   = 410,   /* double */
102
   LTI_METADATA_TAG_IMG__SPHEROID_RADIUS                 = 411,   /* double */
103
   LTI_METADATA_TAG_IMG__STATISTICS_MEAN                 = 412,   /* double */
104
   LTI_METADATA_TAG_IMG__STATISTICS_MEDIAN               = 413,   /* double */
105
   LTI_METADATA_TAG_IMG__STATISTICS_MODE                 = 414,   /* double */
106
   LTI_METADATA_TAG_IMG__STATISTICS_STDDEV               = 415,   /* double */
107

    
108
   LTI_METADATA_TAG_IMG__PROJECTION_NUMBER               = 416,   /* short */
109
   LTI_METADATA_TAG_IMG__PROJECTION_ZONE                 = 417,   /* short */
110

    
111
   LTI_METADATA_TAG_ICC__Profile                         = 500,   /* (unknown type) */
112
   LTI_METADATA_TAG_PShop__ImageResources                = 501,   /* (unknown type) */
113

    
114
   LTI_METADATA_TAG_USER__COMPANYNAME                    = 600,   /* ascii */
115
   LTI_METADATA_TAG_USER__COPYRIGHT                      = 601,   /* ascii */
116
   LTI_METADATA_TAG_USER__CREDIT                         = 602,   /* ascii */
117
   LTI_METADATA_TAG_USER__SUMMARY                        = 603,   /* ascii */
118
   LTI_METADATA_TAG_USER__KEYWORDS                       = 604,   /* ascii */
119
   LTI_METADATA_TAG_USER__COMMENTS                       = 605,   /* ascii */
120
   LTI_METADATA_TAG_USER__IMAGEID                        = 606,   /* ascii */
121
   LTI_METADATA_TAG_USER__IMAGINGDATE                    = 607,   /* ascii */
122
   LTI_METADATA_TAG_USER__IMAGINGTIME                    = 608,   /* ascii */
123
   LTI_METADATA_TAG_USER__SOURCEDEVICE                   = 609,   /* ascii */
124
   LTI_METADATA_TAG_USER__SCANINFO                       = 610,   /* ascii */
125
   LTI_METADATA_TAG_USER__GEOGRAPHICLOCATION             = 611,   /* ascii */
126

    
127
   LTI_METADATA_TAG_ASCII__COMMENT                       = 700,   /* ascii */
128

    
129
   LTI_METADATA_TAG_GDAL__COORDINATE_SYSTEM              = 800,   /* 6 doubles */
130

    
131
   LTI_METADATA_TAG_IMAGE__STATISTICS_MIN                = 900,   /* vector (pixel type) */
132
   LTI_METADATA_TAG_IMAGE__STATISTICS_MAX                = 901,   /* vector (pixel type) */
133
   LTI_METADATA_TAG_IMAGE__STATISTICS_MEAN               = 902,   /* double vector */
134
   LTI_METADATA_TAG_IMAGE__STATISTICS_STANDARD_DEVIATION = 903,   /* double vector */
135

    
136
   LTI_METADATA_TAG_LAST                                 = 10000
137
#endif
138
} LTIMetadataTag;
139

    
140

    
141
/**
142
 * datatypes used in database records
143
 *
144
 * These enums are used to represent the datatypes of values stored
145
 * in LTIMetadataRecords.
146
 */
147
typedef enum LTIMetadataDataType
148
{
149
  LTI_METADATA_DATATYPE_INVALID           =   0,
150

    
151
  LTI_METADATA_DATATYPE_UINT8             =   1,
152
  LTI_METADATA_DATATYPE_SINT8             =   2,
153
  LTI_METADATA_DATATYPE_UINT16            =   3,
154
  LTI_METADATA_DATATYPE_SINT16            =   4,
155
  LTI_METADATA_DATATYPE_UINT32            =   5,
156
  LTI_METADATA_DATATYPE_SINT32            =   6,
157
  LTI_METADATA_DATATYPE_UINT64            =   7,
158
  LTI_METADATA_DATATYPE_SINT64            =   8,
159
  LTI_METADATA_DATATYPE_FLOAT32           =   9,
160
  LTI_METADATA_DATATYPE_FLOAT64           =  10,
161
  LTI_METADATA_DATATYPE_ASCII             =  11,
162
  
163
  LTI_METADATA_TYPE_LAST                  = 0xffffffff
164
} LTIMetadataDataType;
165

    
166

    
167
typedef enum LTIClassicalMetadataConst
168
{
169
   LTI_CLASSICAL_METADATA_VERSION_MAJOR = 1,
170
   LTI_CLASSICAL_METADATA_VERSION_MINOR = 0,
171
   LTI_CLASSICAL_METADATA_MAX_KEY_NAME_SIZE = 100,
172
   LTI_CLASSICAL_METADATA_MAX_DIMENSIONS = 10
173
} LTIClassicalMetadataConst;
174

    
175

    
176
#ifdef LT_CPLUSPLUS
177
}
178
#endif
179

    
180
#if defined(LT_COMPILER_MS)
181
        #pragma warning(pop)
182
#endif
183

    
184
#endif