zaxis.h 1.84 KB
Newer Older
1
2
3
#ifndef _ZAXIS_H
#define _ZAXIS_H

Uwe Schulzweida's avatar
Uwe Schulzweida committed
4
5
#include "cdi_att.h"

6
7
8
9
10
11
typedef struct {
  double value;
  bool defined;
}
zkey_double_t;

12
13
14
15
16
17
18
19
typedef struct {
  char     dimname[CDI_MAX_NAME];
  char     vdimname[CDI_MAX_NAME];
  char     name[CDI_MAX_NAME];
  char     longname[CDI_MAX_NAME];
  char     stdname[CDI_MAX_NAME];
  char     units[CDI_MAX_NAME];
  char     psname[CDI_MAX_NAME];
20
21
  char     p0name[CDI_MAX_NAME];
  zkey_double_t p0value;
22
  double  *vals;
Uwe Schulzweida's avatar
Uwe Schulzweida committed
23
  char   **cvals;
24
  int      clength;
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
  double  *lbounds;
  double  *ubounds;
  double  *weights;
  int      self;
  int      prec;
  int      scalar;
  int      type;
  int      ltype;    /* GRIB level type */
  int      ltype2;
  int      size;
  int      direction;
  int      vctsize;
  unsigned positive;
  double  *vct;
  int      number;   /* Reference number to a generalized Z-axis */
  int      nhlev;
  unsigned char uuid[CDI_UUID_SIZE];
  cdi_atts_t atts;
}
zaxis_t;


47
48
void zaxisGetTypeDescription(int zaxisType, int* outPositive, const char** outName, const char** outLongName, const char** outStdName, const char** outUnit);  //The returned const char* point to static storage. Don't free or modify them.

49
50
unsigned cdiZaxisCount(void);

51
zaxis_t *zaxis_to_pointer(int zaxisID);
52

53
void cdiZaxisGetIndexList(unsigned numIDs, int *IDs);
54

55
56
void
zaxisUnpack(char * unpackBuffer, int unpackBufferSize,
57
            int * unpackBufferPos, int originNamespace, void *context,
58
59
            int force_id);

60
61
void zaxisDefLtype2(int zaxisID, int ltype2);

62
const resOps *getZaxisOps(void);
63

64
65
const char *zaxisInqNamePtr(int zaxisID);

66
const double *zaxisInqLevelsPtr(int zaxisID);
67
char **zaxisInqCValsPtr(int zaxisID);
68

69
70
void zaxisResize(int zaxisID, int size);

71
#endif
72
73
74
75
76
77
78
79
80
81

/*
 * Local Variables:
 * c-file-style: "Java"
 * c-basic-offset: 2
 * indent-tabs-mode: nil
 * show-trailing-whitespace: t
 * require-trailing-newline: t
 * End:
 */