libgeotiff
geovalues.h
1 /**********************************************************************
2  *
3  * geovalues.h - Public registry for valid GEOTIFF key-values.
4  *
5  * Written By: Niles D. Ritter
6  *
7  * Revision History:
8  *
9  * Rev.# Author Date Key Changes/Additions
10  * ----- ------ ---------- -------------------------------------
11  * 0.1 ndr 10 Jun 95 Inital Beta Release
12  * 0.2 ndr 12 Jul 95 New EPSG Tables installed.
13  * 0.2.1 ndr 28 Jul 95 Added ModelType aliases to Model's
14  * 1.0 ndr 18 Sep 95 Promoted to Revision 1.0
15  *
16  **********************************************************************/
17 
18 #ifndef __geovalues_h_
19 #define __geovalues_h_
20 
21 /* If code values are added or modified, the "GvCurrentMinorRev"
22  * number should be incremented here. If new Keys are added, then the
23  * GvCurrentRevision number should be incremented instead, and the
24  * GvCurrentMinorRev should be reset to zero (see "geokeys.h").
25  *
26  * In addition, any changes here should be reflected in "geo_names.c"
27  *
28  */
29 
30 #define GvCurrentMinorRev 0 /* First Major Rev EPSG Code Release */
31 
32 
33 /*
34  * Universal key values -- defined for consistency
35  */
36 #define KvUndefined 0
37 #define KvUserDefined 32767
38 
39 #ifdef ValuePair
40 # undef ValuePair
41 #endif
42 #define ValuePair(name,value) name = value,
43 
44 /*
45  * The section numbers refer to the GeoTIFF Specification section
46  * in which the code values are documented.
47  */
48 
49 /************************************************************
50  * 6.3.1 GeoTIFF General Codes
51  ************************************************************/
52 
53 /* 6.3.1.1 Model Type Codes */
54 typedef enum {
55  ModelTypeProjected = 1, /* Projection Coordinate System */
56  ModelTypeGeographic = 2, /* Geographic latitude-longitude System */
57  ModelTypeGeocentric = 3, /* Geocentric (X,Y,Z) Coordinate System */
58  ModelProjected = ModelTypeProjected, /* alias */
59  ModelGeographic = ModelTypeGeographic, /* alias */
60  ModelGeocentric = ModelTypeGeocentric /* alias */
61 } modeltype_t;
62 
63 /* 6.3.1.2 Raster Type Codes */
64 typedef enum {
65  RasterPixelIsArea = 1, /* Standard pixel-fills-grid-cell */
66  RasterPixelIsPoint = 2 /* Pixel-at-grid-vertex */
67 } rastertype_t;
68 
69 typedef enum {
70 # include "epsg_gcs.inc"
71  geographic_end
72 } geographic_t;
73 
74 typedef enum {
75 # include "epsg_datum.inc"
76  geodeticdatum_end
77 } geodeticdatum_t;
78 
79 typedef enum {
80 # include "epsg_units.inc"
81  Unit_End
82 } geounits_t;
83 
84 typedef enum {
85 # include "epsg_ellipse.inc"
86  ellipsoid_end
87 } ellipsoid_t;
88 
89 typedef enum {
90 # include "epsg_pm.inc"
91  primemeridian_end
92 } primemeridian_t;
93 
94 typedef enum {
95 # include "epsg_pcs.inc"
96  pcstype_end
97 } pcstype_t;
98 
99 typedef enum {
100 # include "epsg_proj.inc"
101  projection_end
102 } projection_t;
103 
104 typedef enum {
105 # include "geo_ctrans.inc"
106  coordtrans_end
107 } coordtrans_t;
108 
109 typedef enum {
110 # include "epsg_vertcs.inc"
111  vertcs_end
112 } vertcstype_t;
113 
114 
115 typedef enum {
116  VDatumBase = 1
117 } vdatum_t;
118 
119 #endif /* __geovalues_h_ */
120 

Generated for libgeotiff by doxygen 1.8.8