1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340
|
/*
Copyright (C) 1996 Hughes and Applied Research Corporation
Permission to use, modify, and distribute this software and its documentation
for any purpose without fee is hereby granted, provided that the above
copyright notice appear in all copies and that both that copyright notice and
this permission notice appear in supporting documentation.
*/
#ifndef HDFEOSDEF_H_
#define HDFEOSDEF_H_
/* include header file for EASE grid */
#include <ease.h>
/* Working Buffer Sizes */
#define HDFE_MAXMEMBUF 256*256*16
#define HDFE_NAMBUFSIZE 32000
#define HDFE_DIMBUFSIZE 64000
/* Field Merge */
#define HDFE_NOMERGE 0
#define HDFE_AUTOMERGE 1
/* XXentries Modes */
#define HDFE_NENTDIM 0
#define HDFE_NENTMAP 1
#define HDFE_NENTIMAP 2
#define HDFE_NENTGFLD 3
#define HDFE_NENTDFLD 4
/* GCTP projection codes */
#define GCTP_GEO 0
#define GCTP_UTM 1
#define GCTP_SPCS 2
#define GCTP_ALBERS 3
#define GCTP_LAMCC 4
#define GCTP_MERCAT 5
#define GCTP_PS 6
#define GCTP_POLYC 7
#define GCTP_EQUIDC 8
#define GCTP_TM 9
#define GCTP_STEREO 10
#define GCTP_LAMAZ 11
#define GCTP_AZMEQD 12
#define GCTP_GNOMON 13
#define GCTP_ORTHO 14
#define GCTP_GVNSP 15
#define GCTP_SNSOID 16
#define GCTP_EQRECT 17
#define GCTP_MILLER 18
#define GCTP_VGRINT 19
#define GCTP_HOM 20
#define GCTP_ROBIN 21
#define GCTP_SOM 22
#define GCTP_ALASKA 23
#define GCTP_GOOD 24
#define GCTP_MOLL 25
#define GCTP_IMOLL 26
#define GCTP_HAMMER 27
#define GCTP_WAGIV 28
#define GCTP_WAGVII 29
#define GCTP_OBLEQA 30
#define GCTP_ISINUS1 31
#define GCTP_CEA 97
#define GCTP_BCEA 98
#define GCTP_ISINUS 99
/* Compression Modes */
#define HDFE_COMP_NONE 0
#define HDFE_COMP_RLE 1
#define HDFE_COMP_NBIT 2
#define HDFE_COMP_SKPHUFF 3
#define HDFE_COMP_DEFLATE 4
#define HDFE_COMP_SZIP 5
/* Tiling Codes */
#define HDFE_NOTILE 0
#define HDFE_TILE 1
/* Swath Subset Modes */
#define HDFE_MIDPOINT 0
#define HDFE_ENDPOINT 1
#define HDFE_ANYPOINT 2
#define HDFE_INTERNAL 0
#define HDFE_EXTERNAL 1
#define HDFE_NOPREVSUB -1
/* Grid Origin */
#define HDFE_GD_UL 0
#define HDFE_GD_UR 1
#define HDFE_GD_LL 2
#define HDFE_GD_LR 3
/* Grid Pixel Registration */
#define HDFE_CENTER 0
#define HDFE_CORNER 1
/* Angle Conversion Codes */
#define HDFE_RAD_DEG 0
#define HDFE_DEG_RAD 1
#define HDFE_DMS_DEG 2
#define HDFE_DEG_DMS 3
#define HDFE_RAD_DMS 4
#define HDFE_DMS_RAD 5
/* SZIP parameters */
#define SZ_EC 4
#define SZ_NN 32
#define ICHECKNAME(p) { \
status = EHchkname((char *)p,#p); \
if (status == -1) return(status); \
}
#ifdef __cplusplus
extern "C" {
#endif
/* Swath Prototype */
intn EHchkname(const char *p);
int32 SWopen(const char *, intn);
int32 SWcreate(int32, const char *);
int32 SWattach(int32, const char *);
intn SWdefdim(int32, const char *, int32);
intn SWdefcomp(int32, int32, intn []);
int32 SWdiminfo(int32, const char *);
intn SWmapinfo(int32, const char *, const char *, int32 *, int32 *);
int32 SWidxmapinfo(int32, const char *, const char *, int32 []);
intn SWfieldinfo(int32, const char *, int32 *, int32 [], int32 *, char *);
intn SWcompinfo(int32, const char *, int32 *, intn []);
intn SWdefdimmap(int32, const char *, const char *, int32, int32);
intn SWdefidxmap(int32, const char *, const char *, int32 []);
intn SWdefgeofield(int32, const char *, const char *, int32, int32);
intn SWdefdatafield(int32, const char *, const char *, int32, int32);
intn SWwritegeometa(int32, const char *, const char *, int32);
intn SWwritedatameta(int32, const char *, const char *, int32);
intn SWwriteattr(int32, const char *, int32, int32, VOIDP);
intn SWreadattr(int32, const char *, VOIDP);
intn SWattrinfo(int32, const char *, int32 *, int32 *);
int32 SWinqdims(int32, char *, int32 []);
int32 SWinqmaps(int32, char *, int32 [], int32 []);
int32 SWinqidxmaps(int32, char *, int32 []);
int32 SWinqgeofields(int32, char *, int32 [], int32 []);
int32 SWinqdatafields(int32, char *, int32 [],int32 []);
int32 SWinqattrs(int32, char *, int32 *);
int32 SWnentries(int32, int32, int32 *);
int32 SWinqswath(const char *, char *, int32 *);
intn SWwritefield(int32, const char *, int32 [], int32 [], int32 [], VOIDP);
intn SWreadfield(int32, const char *, int32 [], int32 [], int32 [], VOIDP);
int32 SWdefboxregion(int32, float64 [], float64 [], int32);
int32 SWdefscanregion(int32, const char *, float64 [], int32);
int32 SWregionindex(int32, float64 [], float64 [], int32, char *, int32 []);
intn SWextractregion(int32, int32, const char *, int32, VOIDP);
intn SWregioninfo(int32, int32, const char *, int32 *, int32 *, int32 [], int32 *);
int32 SWdupregion(int32);
int32 SWdeftimeperiod(int32, float64, float64, int32);
intn SWextractperiod(int32, int32, const char *, int32, VOIDP);
intn SWperiodinfo(int32, int32, const char *, int32 *, int32 *, int32 [], int32 *);
int32 SWdefvrtregion(int32, int32, const char *, float64 []);
intn SWsetfillvalue(int32, const char *, VOIDP);
intn SWgetfillvalue(int32, const char *, VOIDP);
intn SWdetach(int32);
intn SWclose(int32);
int32 SWupdateidxmap(int32, int32, int32 [], int32 [], int32 []);
intn SWgeomapinfo(int32, const char *);
intn SWupdatescene(int32, int32);
int32 SWindexinfo(int32, const char *, int32 *, char *, int32 *ind[]);
intn SWdefdimscale(int32 swathID, const char *dimname, int32 dimsize, int32 numbertype, VOIDP data);
intn SWsetdimscale(int32, const char *, const char *, int32, int32, VOIDP);
intn SWgetdimscale(int32, const char *, const char *, int32 *, int32 *, VOIDP);
intn SWsetdimstrs(int32 swathID, const char *fieldname, const char *dimname, char *label, char *unit, char *format);
intn SWgetdimstrs(int32 swathID, const char *fieldname, const char *dimname, char *label, char *unit, char *format, intn len);
/* Grid Prototypes */
int32 GDopen(char *, intn);
int32 GDcreate(int32, char *, int32, int32, float64 [], float64 []);
int32 GDattach(int32, char *);
intn GDdefdim(int32, const char *, int32);
intn GDdefproj(int32, int32, int32, int32, float64 []);
intn GDblkSOMoffset(int32, float32 [], int32, char *);
intn GDdefcomp(int32, int32, intn []);
intn GDdeftile(int32, int32, int32, int32 []);
intn GDsettilecomp(int32, char *, int32, int32 *, int32, intn *);
intn GDdeforigin(int32, int32);
intn GDdefpixreg(int32, int32);
int32 GDdiminfo(int32, const char *);
intn GDgridinfo(int32, int32 *, int32 *, float64 [], float64 []);
intn GDprojinfo(int32, int32 *, int32 *, int32 *, float64 []);
intn GDorigininfo(int32, int32 *);
intn GDpixreginfo(int32, int32 *);
intn GDcompinfo(int32, const char *, int32 *, intn []);
intn GDfieldinfo(int32, const char *, int32 *, int32 [], int32 *, char *);
intn GDtileinfo(int32, char *, int32 *, int32 *, int32 []);
intn GDsettilecache(int32, char *, int32, int32);
intn GDwritetile(int32, char *, int32 [], VOIDP);
intn GDreadtile(int32, char *, int32 [], VOIDP);
intn GDdeffield(int32, const char *, const char *, int32, int32);
intn GDwritefieldmeta(int32, char *, char *, int32);
intn GDwritefield(int32, const char *,
int32 [], int32 [], int32 [], VOIDP);
intn GDreadfield(int32, const char *, int32 [], int32 [], int32 [], VOIDP);
intn GDwriteattr(int32, char *, int32 , int32, VOIDP);
intn GDreadattr(int32, char *, VOIDP);
intn GDattrinfo(int32, char *, int32 *, int32 *);
int32 GDinqdims(int32, char *, int32 []);
int32 GDinqfields(int32, char *, int32 [], int32 []);
int32 GDinqattrs(int32, char *, int32 *);
int32 GDnentries(int32, int32, int32 *);
int32 GDinqgrid(char *, char *, int32 *);
int32 GDdefboxregion(int32, float64 [], float64 []);
int32 GDdefvrtregion(int32, int32, const char *, float64 []);
int32 GDdeftimeperiod(int32, int32, float64, float64);
intn GDextractregion(int32, int32, char *, VOIDP);
intn GDregioninfo(int32, int32, char *, int32 *, int32 *, int32 [], int32 *,
float64 [], float64 []);
int32 GDdupregion(int32);
intn GDgetpixels(int32, int32, float64 [], float64 [], int32 [], int32 []);
int32 GDgetpixvalues(int32, int32, int32 [], int32 [], char *, VOIDP);
int32 GDinterpolate(int32, int32, float64 [], float64 [], char *, float64 []);
intn GDsetfillvalue(int32, char *, VOIDP);
intn GDgetfillvalue(int32, char *, VOIDP);
intn GDdetach(int32);
intn GDclose(int32);
intn GDij2ll(int32, int32, float64 [], int32, int32, int32,
float64 [], float64 [], int32, int32 [], int32 [],
float64 [], float64 [], int32, int32);
intn GDll2ij(int32, int32, float64 [], int32, int32, int32, float64 [],
float64 [], int32, float64 [], float64 [], int32 [], int32 [],
float64 [], float64 []);
intn GDrs2ll(int32, float64 [], int32, int32,
float64 [], float64 [],
int32, float64 [], float64 [],
float64 [], float64 [], int32, int32);
intn GDdefdimscale(int32 gridID, char *dimname, int32 dimsize, int32 numbertype, VOIDP data);
intn GDsetdimscale(int32, const char *, char *, int32, int32, VOIDP);
intn GDgetdimscale(int32, char *, char *, int32 *, int32 *, VOIDP);
intn GDsetdimstrs(int32 gridID, char *fieldname, char *dimname, char *label, char *unit, char *format);
intn GDgetdimstrs(int32 gridID, char *fieldname, char *dimname, char *label, char *unit, char *format, intn len);
/* Point Prototypes */
int32 PTopen(char *, intn);
int32 PTcreate(int32, char *);
int32 PTnrecs(int32, int32);
int32 PTnlevels(int32);
int32 PTsizeof(int32, const char *, int32 []);
int32 PTnfields(int32, int32, int32 *);
int32 PTlevelindx(int32, char *);
int32 PTattach(int32, char *);
intn PTdeflevel(int32, char *, char *, int32 [], int32 []);
intn PTdeflinkage(int32, char *, char *, char *);
intn PTbcklinkinfo(int32, int32, char *);
intn PTfwdlinkinfo(int32, int32, char *);
int32 PTlevelinfo(int32, int32, char *, int32 [], int32 []);
intn PTgetlevelname(int32, int32, char *, int32 *);
intn PTwritelevel(int32, int32, int32, VOIDP);
intn PTupdatelevel(int32, int32, char *, int32, int32 [], VOIDP);
intn PTreadlevel(int32, int32, const char *, int32, int32 [], VOIDP);
intn PTgetrecnums(int32, int32, int32, int32, int32 [], int32 *, int32 []);
intn PTwriteattr(int32, char *, int32, int32, VOIDP);
intn PTreadattr(int32, char *, VOIDP);
intn PTattrinfo(int32, char *, int32 *, int32 *);
int32 PTinqattrs(int32, char *, int32 *);
int32 PTinqpoint(char *, char *, int32 *);
int32 PTdefboxregion(int32, float64 [], float64 []);
int32 PTdeftimeperiod(int32, float64, float64);
int32 PTdefvrtregion(int32, int32, char *, float64 []);
intn PTregioninfo(int32, int32 regionID, int32, char *, int32 *);
intn PTregionrecs(int32, int32, int32, int32 *, int32 []);
intn PTperiodrecs(int32, int32, int32, int32 *, int32 []);
intn PTperiodinfo(int32, int32 periodID, int32, char *, int32 *);
intn PTextractregion(int32, int32 regionID, int32, char *, VOIDP);
intn PTextractperiod(int32, int32 periodID, int32, char *, VOIDP);
intn PTdetach(int32);
intn PTclose(int32);
/* EH Utility Prototypes */
int32 EHsizeof( int32 vdataID, const char *name);
float64 EHconvAng(float64, intn);
int32 EHparsestr(char *, char, char *[], int32 []);
int32 EHstrwithin(const char *, char *, char);
intn EHchkODL(char *);
intn EHloadliststr(char *[], int32, char *, char);
intn EHgetversion(int32, char *);
int32 EHopen(const char *, intn);
intn EHchkfid(int32, const char *, int32 *, int32 *, uint8 *);
intn EHidinfo(int32, int32 *, int32 *);
int32 EHgetid(int32, int32, const char *, intn, const char *);
intn EHrevflds(const char *, char *);
intn EHinsertmeta(int32, const char *, const char *, int32, char *, int32 []);
intn EHgetmetavalue(char *[], const char *, char *);
char * EHmetagroup(int32, char *, const char *, const char *, char *[]);
intn EHfillfld(int32, int32, int32, int32, int32, int32 [], VOIDP);
intn EHattr(int32, int32, const char *, int32, int32, const char *, VOIDP);
intn EHattrinfo(int32, int32, const char *, int32 *, int32 *);
int32 EHattrcat(int32, int32, char *, int32 *);
intn EHfilename(int32, char *);
int32 EHcntOBJECT(char *[]);
int32 EHcntGROUP(char *[]);
/* 9/3/97 Abe changed the first argument from
float64 (float64 []) to float64 (*) (float64 []) for SunOS
float64 () (float64 []) to float64 (*) (float64 []) for all other OSs */
intn EHbisect(float64 (*) (float64 []), float64 [], int32, float64, float64,
float64, float64 *);
int32 EHinquire(const char *, const char *, char *, int32 *);
intn EHclose(int32);
#ifdef __cplusplus
}
#endif
#endif /* #ifndef HDFEOSDEF_H_ */
|