ocssw  1.0
Classes | Defines | Variables
/disk01/web/ocssw/build/inc/swfinc/l2.h File Reference

(r8099/r2592)

#include <limits.h>
#include "navigation.h"
#include "level_2_index.h"

Go to the source code of this file.

Classes

struct  browse_rec_l2Type
struct  rec_l2Type
struct  fl2_dataType
struct  l2_dataType
struct  fl2_qc_dataType
struct  l2_qc_dataType

Defines

#define mUCHAR_MAX   is not defined )
#define mSHRT_MAX   is not defined )
#define mSHRT_MIN   is not defined )
#define BMAPMAX   UCHAR_MAX
#define BMAPMIN   0
#define SMAPMAX   SHRT_MAX
#define SMAPMIN   SHRT_MIN
#define SNOMAPMAX   1024
#define SNOMAPMIN   -1
#define CDL_DEFAULT_CONST_TYPE   float
#define CONST_TYPE   CDL_DEFAULT_CONST_TYPE
#define ALT_L2_COUNTS
#define USE_ALT_COUNTS   1
#define NO_ALT_COUNTS   0
#define DEFAULT_ALT_COUNTS   USE_ALT_COUNTS
#define EXTRA_FOR_BROWSE
#define PFLAG   PFLAG_DIMS_2
#define MAX_HDF   16
#define MAX_HDF_L2GET   4
#define MAX_HDF_L2PUT   4
#define GEO_DATA_MAX   12
#define GEO_DATA_SPARE   0
#define GEO_DATA_VALID   (GEO_DATA_MAX - GEO_DATA_SPARE)
#define QC_GEO_DATA_MAX   20
#define QC_GEO_DATA_SPARE   0
#define QC_GEO_DATA_VALID   (QC_GEO_DATA_MAX - QC_GEO_DATA_SPARE)
#define SEQ_NLW_412   0
#define SEQ_NLW_443   1
#define SEQ_NLW_490   2
#define SEQ_NLW_510   3
#define SEQ_NLW_555   4
#define SEQ_LA_670   5
#define SEQ_LA_865   6
#define SEQ_CZCS_PIGMENT   7
#define SEQ_CHLOR_A   8
#define SEQ_K_490   9
#define SEQ_EPS_78   10
#define SEQ_TAU_865   11
#define SEQ_QC_ZONAL_WIND   0
#define SEQ_QC_MERID_WIND   1
#define SEQ_QC_PRESSURE   2
#define SEQ_QC_P_WATER   3
#define SEQ_QC_OZONE   4
#define SEQ_QC_SOLAR_Z   5
#define SEQ_QC_ALBEDO_865   6
#define SEQ_QC_SENSOR_Z   7
#define SEQ_QC_SENSOR_A   8
#define SEQ_QC_NLW_670   9
#define SEQ_QC_LA_765   10
#define SEQ_QC_LT_443   11
#define SEQ_QC_RAYLEIGH_443   12
#define SEQ_QC_LG_865   13
#define SEQ_QC_LF_865   14
#define SEQ_QC_AER_MODEL1   15
#define SEQ_QC_AER_MODEL2   16
#define SEQ_QC_EPS_FLAG   17
#define SEQ_QC_CARDER_CHLOR   18
#define SEQ_QC_NDVI   19
#define AX_PLUS_B(X, A, B)   (A) * (X) + (B)
#define R_AX_PLUS_B(Y, A, B)   ((Y) - (B))/(A)
#define ROUNDING_V   0.5
#define ROUNDING(x)   ((((x) >= 0)?ROUNDING_V:-ROUNDING_V) + (x))
#define L2MAP(name, seq, i)   **(fl2_data + seq *npix + i) = AX_PLUS_B(local_l2_data.name[i],local_l2_scale[prod_ID][seq],local_l2_offset[prod_ID][seq])
#define STRUCT_L2MAP(name, seq, i)   fl2_data->name[i] = AX_PLUS_B(local_l2_data.name[i],local_l2_scale[prod_ID][seq],local_l2_offset[prod_ID][seq])
#define RL2MAP(type, name, seq, i, high, low)   (type(WIFS->name.data))[roff*nsamp+i] = tmp_int_storage = MAXV(low,MINV(high,ROUNDING(R_AX_PLUS_B(fl2_data[seq*nsamp + i],local_l2_scale[prod_ID][seq],local_l2_offset[prod_ID][seq]))))
#define RL2NOMAP(type, name, seq, i, high, low)   (type(WIFS->name.data))[roff*nsamp+i] = tmp_int_storage = MAXV(low,MINV(high,ROUNDING(fl2_data[seq*nsamp + i])))
#define STRUCT_RL2MAP(type, name, seq, i, high, low)   (type(WIFS->name.data))[roff*nsamp+i] = tmp_int_storage = MAXV(low,MINV(high,ROUNDING(R_AX_PLUS_B(fl2_data.name[i],local_l2_scale[prod_ID][seq],local_l2_offset[prod_ID][seq]))))
#define STRUCT_RL2NOMAP(type, name, seq, i, high, low)   (type(WIFS->name.data))[roff*nsamp+i] = tmp_int_storage = MAXV(low,MINV(high,ROUNDING(fl2_data.name[i])))
#define RL2QCMAP(type, name, seq, i, high, low)   (type(QCWIFS->name.data))[roff*nsamp+i] = tmp_int_storage = MAXV(low,MINV(high,ROUNDING(R_AX_PLUS_B(fl2_qc_data[seq*nsamp + i],local_l2_qc_scale[prod_ID][seq],local_l2_qc_offset[prod_ID][seq]))))
#define STRUCT_RL2QCMAP(type, name, seq, i, high, low)   (type(QCWIFS->name.data))[roff*nsamp+i] = tmp_int_storage = MAXV(low,MINV(high,ROUNDING(R_AX_PLUS_B(fl2_qc_data.name[i],local_l2_qc_scale[prod_ID][seq],local_l2_qc_offset[prod_ID][seq]))))

Variables

char * lat_units
char * lon_units
float sclat
float sclon
float scsol_z
float ullat
float ullon
float urlat
float urlon
float lllat
float lllon
float lrlat
float lrlon
float northlat
float southlat
float westlon
float eastlon
float startclat
float startclon
float endclat
float endclon
float nodel
int ntilts
short tilt_flags [MTILT_DIMS_2]
short tilt_ranges [MTILT_DIMS_2][LTILT_DIMS_2]
float tilt_lats [MTILT_DIMS_2][LTILT_DIMS_2][PTILT_DIMS_2]
float tilt_lons [MTILT_DIMS_2][LTILT_DIMS_2][PTILT_DIMS_2]
short entry_year
short entry_day
short ref_year
short ref_day
short ref_minute
float mirror [SIDES_DIMS_2][BANDS_DIMS_2]
double t_const [BANDS_DIMS_2]
double t_linear [BANDS_DIMS_2]
double t_quadratic [BANDS_DIMS_2]
float cal_offs [BANDS_DIMS_2]
float counts [BANDS_DIMS_2][GAINS_DIMS_2][KNEES_DIMS_2]
float rads [BANDS_DIMS_2][GAINS_DIMS_2][KNEES_DIMS_2]
 meta_l2Type

Define Documentation

#define ALT_L2_COUNTS
#define AX_PLUS_B (   X,
  A,
  B 
)    (A) * (X) + (B)
#define BMAPMAX   UCHAR_MAX
#define BMAPMIN   0
#define CDL_DEFAULT_CONST_TYPE   float
#define GEO_DATA_MAX   12
#define GEO_DATA_SPARE   0
#define L2MAP (   name,
  seq,
 
)    **(fl2_data + seq *npix + i) = AX_PLUS_B(local_l2_data.name[i],local_l2_scale[prod_ID][seq],local_l2_offset[prod_ID][seq])
#define MAX_HDF   16
#define MAX_HDF_L2GET   4
#define MAX_HDF_L2PUT   4
#define mSHRT_MAX   is not defined )
#define mSHRT_MIN   is not defined )
#define mUCHAR_MAX   is not defined )
#define NO_ALT_COUNTS   0
#define PFLAG   PFLAG_DIMS_2
#define QC_GEO_DATA_MAX   20
#define QC_GEO_DATA_SPARE   0
#define R_AX_PLUS_B (   Y,
  A,
  B 
)    ((Y) - (B))/(A)
#define RL2MAP (   type,
  name,
  seq,
  i,
  high,
  low 
)    (type(WIFS->name.data))[roff*nsamp+i] = tmp_int_storage = MAXV(low,MINV(high,ROUNDING(R_AX_PLUS_B(fl2_data[seq*nsamp + i],local_l2_scale[prod_ID][seq],local_l2_offset[prod_ID][seq]))))
#define RL2NOMAP (   type,
  name,
  seq,
  i,
  high,
  low 
)    (type(WIFS->name.data))[roff*nsamp+i] = tmp_int_storage = MAXV(low,MINV(high,ROUNDING(fl2_data[seq*nsamp + i])))
#define RL2QCMAP (   type,
  name,
  seq,
  i,
  high,
  low 
)    (type(QCWIFS->name.data))[roff*nsamp+i] = tmp_int_storage = MAXV(low,MINV(high,ROUNDING(R_AX_PLUS_B(fl2_qc_data[seq*nsamp + i],local_l2_qc_scale[prod_ID][seq],local_l2_qc_offset[prod_ID][seq]))))
#define ROUNDING (   x)    ((((x) >= 0)?ROUNDING_V:-ROUNDING_V) + (x))
#define ROUNDING_V   0.5
#define SEQ_CHLOR_A   8
#define SEQ_CZCS_PIGMENT   7
#define SEQ_EPS_78   10
#define SEQ_K_490   9
#define SEQ_LA_670   5
#define SEQ_LA_865   6
#define SEQ_NLW_412   0
#define SEQ_NLW_443   1
#define SEQ_NLW_490   2
#define SEQ_NLW_510   3
#define SEQ_NLW_555   4
#define SEQ_QC_AER_MODEL1   15
#define SEQ_QC_AER_MODEL2   16
#define SEQ_QC_ALBEDO_865   6
#define SEQ_QC_CARDER_CHLOR   18
#define SEQ_QC_EPS_FLAG   17
#define SEQ_QC_LA_765   10
#define SEQ_QC_LF_865   14
#define SEQ_QC_LG_865   13
#define SEQ_QC_LT_443   11
#define SEQ_QC_MERID_WIND   1
#define SEQ_QC_NDVI   19
#define SEQ_QC_NLW_670   9
#define SEQ_QC_OZONE   4
#define SEQ_QC_P_WATER   3
#define SEQ_QC_PRESSURE   2
#define SEQ_QC_RAYLEIGH_443   12
#define SEQ_QC_SENSOR_A   8
#define SEQ_QC_SENSOR_Z   7
#define SEQ_QC_SOLAR_Z   5
#define SEQ_QC_ZONAL_WIND   0
#define SEQ_TAU_865   11
#define SMAPMAX   SHRT_MAX
#define SMAPMIN   SHRT_MIN
#define SNOMAPMAX   1024
#define SNOMAPMIN   -1
#define STRUCT_L2MAP (   name,
  seq,
 
)    fl2_data->name[i] = AX_PLUS_B(local_l2_data.name[i],local_l2_scale[prod_ID][seq],local_l2_offset[prod_ID][seq])
#define STRUCT_RL2MAP (   type,
  name,
  seq,
  i,
  high,
  low 
)    (type(WIFS->name.data))[roff*nsamp+i] = tmp_int_storage = MAXV(low,MINV(high,ROUNDING(R_AX_PLUS_B(fl2_data.name[i],local_l2_scale[prod_ID][seq],local_l2_offset[prod_ID][seq]))))
#define STRUCT_RL2NOMAP (   type,
  name,
  seq,
  i,
  high,
  low 
)    (type(WIFS->name.data))[roff*nsamp+i] = tmp_int_storage = MAXV(low,MINV(high,ROUNDING(fl2_data.name[i])))
#define STRUCT_RL2QCMAP (   type,
  name,
  seq,
  i,
  high,
  low 
)    (type(QCWIFS->name.data))[roff*nsamp+i] = tmp_int_storage = MAXV(low,MINV(high,ROUNDING(R_AX_PLUS_B(fl2_qc_data.name[i],local_l2_qc_scale[prod_ID][seq],local_l2_qc_offset[prod_ID][seq]))))
#define USE_ALT_COUNTS   1

Variable Documentation

Definition at line 297 of file l2.h.

Definition at line 298 of file l2.h.

float eastlon

Definition at line 272 of file l2.h.

float endclat

Definition at line 275 of file l2.h.

float endclon

Definition at line 276 of file l2.h.

short entry_day

Definition at line 289 of file l2.h.

short entry_year

Definition at line 288 of file l2.h.

char* lat_units

Definition at line 254 of file l2.h.

float lllat

Definition at line 265 of file l2.h.

float lllon

Definition at line 266 of file l2.h.

char* lon_units

Definition at line 257 of file l2.h.

float lrlat

Definition at line 267 of file l2.h.

float lrlon

Definition at line 268 of file l2.h.

Definition at line 300 of file l2.h.

Definition at line 293 of file l2.h.

float nodel

Definition at line 277 of file l2.h.

float northlat

Definition at line 269 of file l2.h.

int ntilts

Definition at line 278 of file l2.h.

Definition at line 299 of file l2.h.

short ref_day

Definition at line 291 of file l2.h.

short ref_minute

Definition at line 292 of file l2.h.

short ref_year

Definition at line 290 of file l2.h.

float sclat

Definition at line 258 of file l2.h.

float sclon

Definition at line 259 of file l2.h.

float scsol_z

Definition at line 260 of file l2.h.

float southlat

Definition at line 270 of file l2.h.

float startclat

Definition at line 273 of file l2.h.

float startclon

Definition at line 274 of file l2.h.

Definition at line 294 of file l2.h.

Definition at line 295 of file l2.h.

Definition at line 296 of file l2.h.

Definition at line 280 of file l2.h.

Definition at line 284 of file l2.h.

Definition at line 286 of file l2.h.

Definition at line 282 of file l2.h.

float ullat

Definition at line 261 of file l2.h.

float ullon

Definition at line 262 of file l2.h.

float urlat

Definition at line 263 of file l2.h.

float urlon

Definition at line 264 of file l2.h.

float westlon

Definition at line 271 of file l2.h.