OB.DAAC Logo
NASA Logo
Ocean Color Science Software

ocssw V2022
L1B_Tables.h File Reference
#include "Granule.h"
Include dependency graph for L1B_Tables.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  LUT_Definition_t
 
struct  SWIR_correction_tables_t
 
struct  refl_tables_t
 
struct  emiss_tables_t
 
struct  common_QA_tables_t
 
struct  refl_QA_tables_t
 
struct  emiss_QA_tables_t
 
struct  QA_tables_t
 
struct  lookup_tables_t
 

Macros

#define TDLUT_INVALID   -1
 
#define TDLUT_CONSTANT   0
 
#define TDLUT_STEPFUNCTION   1
 
#define TDLUT_PIECEWISE_LINEAR   2
 
#define TDLUT_ALGORITHM_ATTR_NAME   "algorithm"
 
#define TDLUT_STEPFUNCTION_TIMES   "times"
 
#define TDLUT_PIECEWISE_LINEAR_TIMES   "times"
 
#define PGE02_VERSION   "6.2.2_obpg"
 
#define MAX_SERIAL_NUMBER_BUFFER   31
 
#define MAX_PGE_VERSION_BUFFER   11
 
#define MAX_MCST_VERSION_BUFFER   21
 
#define MAX_ASSOCIATEDPLATFORMSHORTNAME_BUFFER   21
 
#define MAX_ALGORITHMPACKAGEACCEPTANCEDATE_BUFFER   11
 
#define MAX_ALGORITHMPACKAGEMATURITYCODE_BUFFER   15
 
#define MAX_MISSION_PHASE_BUFFER   15
 
#define NUM_DN_VALUES   4096 /* 2^12 = 4096 (0..4095) */
 
#define NUM_PRI_RED_SYSTEMS   2
 
#define NUM_BITS_IN_UINT8   8
 
#define NUM_1ST_ORDER_COEFFS   2
 
#define NUM_2ND_ORDER_COEFFS   3
 
#define NUM_4TH_ORDER_COEFFS   5
 
#define EVAL_4TH_ORDER_POLYNOMIAL(p, a, x)   p = a[0] + x * (a[1] + x * (a[2] + x * (a[3] + x * a[4])));
 
#define EVAL_2ND_ORDER_POLYNOMIAL(p, a, x, y)   p = a[0] + x * a[1] + y * a[2];
 
#define NUM_SWIR_BANDS   4
 
#define MAX_NUM_SWIR_SUBSAMPLES   2
 
#define MAX_DETECTORS_PER_SWIR_BAND   20
 
#define MAX_SWIR_BAND_EV_FRAMES   2708
 
#define MAX_NUM_SWIR_RSR_WL   27
 
#define NUM_PC_XT_BANDS   5
 
#define NUM_PC_XT_PARAMETERS   4
 
#define MAX_NUM_RSR_vs_LAMBDA   49
 
#define NUM_PVLW_XT_BANDS   4
 
#define NUM_PVLW_XT_COEFF   3
 
#define NUM_a0_vs_T_inst_COEFF   3 /* see caution above */
 
#define NUM_a2_vs_T_inst_COEFF   3 /* see caution above */
 
#define NUM_T_MIR_THERMISTORS   2 /* number of values in LUT */
 
#define NUM_T_INS_THERMISTORS   4 /* number of values in LUT */
 
#define INDEX_TP_AO_SMIR_OBJ   0 /* LUT index */
 
#define INDEX_TP_AO_LWIR_OBJ   1 /* LUT index */
 
#define INDEX_TP_AO_SMIR_LENS   2 /* LUT index */
 
#define INDEX_TP_AO_LWIR_LENS   3 /* LUT index */
 
#define NUM_T_CAV_THERMISTORS   4 /* number of values in LUT */
 
#define INDEX_TP_MF_CALBKHD_SR   0 /* LUT index */
 
#define INDEX_TP_SR_SNOUT   1 /* LUT index */
 
#define INDEX_TP_MF_Z_BKHD_BB   2 /* LUT index */
 
#define INDEX_TP_MF_CVR_OP_SR   3 /* LUT index */
 
#define NUM_U2_FRAME   7 /* number of frames in uncertainty term u2 LUT */
 
#define NUM_RSB_RVS_COEFFS   5 /* number of coefficients used to calcuate RVS */
 
#define NUM_MOON_OFFSET_LIMITS   4
 
#define NUM_ATTITUDE_ANGLES   3
 
#define TRK_UPPER   0 /* track upper limit index */
 
#define TRK_LOWER   1 /* track lower limit index */
 
#define SCN_UPPER   2 /* scan upper limit index */
 
#define SCN_LOWER   3 /* scan lower limit index */
 
#define GLOBAL_ATTRIBUTE_LUT   0 /* Must use read_attribute */
 
#define SDS_LUT   1 /* Must use read_sds_rankn */
 
#define PGE_VERSION_LUT_NAME   "PGE_Version"
 
#define MCST_VERSION_LUT_NAME   "MCST_Version"
 
#define REFL_SERIAL_NUMBER_LUT_NAME   "Serial Number of Reflective LUT"
 
#define M0_LUT_NAME   "m0"
 
#define M1_LUT_NAME   "m1"
 
#define DN_STAR_MAX_LUT_NAME   "dn_star_Max"
 
#define DN_STAR_MIN_LUT_NAME   "dn_star_Min"
 
#define K_INST_LUT_NAME   "K_inst"
 
#define K_FPA_LUT_NAME   "K_FPA"
 
#define T_INST_REF_LUT_NAME   "T_inst_ref"
 
#define T_FPA_REF_LUT_NAME   "T_FPA_ref"
 
#define RVS_RSB_LUT_NAME   "RVS_RefSB"
 
#define DN_OBC_1ST_FRAME_LUT_NAME   "DN_obc_avg_first_frame_to_use"
 
#define DN_OBC_NUM_FRAMES_LUT_NAME   "DN_obc_avg_number_of_frames_to_use"
 
#define SWIR_CORRECTION_SWITCH_LUT_NAME   "SWIR_OOB_correction_switch"
 
#define X_OOB_0_LUT_NAME   "X_OOB_0"
 
#define X_OOB_1_LUT_NAME   "X_OOB_1"
 
#define X_OOB_2_LUT_NAME   "X_OOB_2"
 
#define RSB_SPECIFIED_UNCERTAINTY_LUT_NAME   "RSB_specified_uncertainty"
 
#define RSB_UI_SCALING_FACTOR_LUT_NAME   "RSB_UI_scaling_factor"
 
#define E_SUN_OVER_PI_LUT_NAME   "E_sun_over_pi"
 
#define RSB_SV_DN_MOON_INCLUDE_FRAMES_LUT_NAME   "RSB_SV_DN_moon_include_frames"
 
#define DN_SAT_EV_LUT_NAME   "dn_sat_ev"
 
#define B26_B5_CORR_LUT_NAME   "B26_B5_Corr"
 
#define B26_B5_CORR_SWITCH_LUT_NAME   "B26_B5_Corr_Switch"
 
#define B26_B5_FRAME_OFFSET_LUT_NAME   "B26_B5_Frame_Offset"
 
#define SWIR_CORR_SENDING_BAND_LUT_NAME   "SWIR_OOB_corr_sending_band"
 
#define SWIR_CORR_SENDING_DETECTOR_LUT_NAME   "SWIR_OOB_corr_sending_detector"
 
#define U1_LUT_NAME   "u1"
 
#define U2_LUT_NAME   "u2"
 
#define U3_LUT_NAME   "u3"
 
#define U4_LUT_NAME   "u4"
 
#define U2_FRAMES_LUT_NAME   "u2_frames"
 
#define SWIR_UI_FACTOR_LUT_NAME   "swir_ui_factor"
 
#define EMISS_SERIAL_NUMBER_LUT_NAME   "Serial Number of Emissive LUT"
 
#define EPSILON_BB_LUT_NAME   "epsilon_bb"
 
#define EPSILON_CAV_LUT_NAME   "epsilon_cav"
 
#define DELTA_T_BB_BETA_LUT_NAME   "delta_T_bb_beta"
 
#define DELTA_T_BB_DELTA_LUT_NAME   "delta_T_bb_delta"
 
#define PCX_TALK_LUT_NAME   "PC_XT"
 
#define RVS_TEB_LUT_NAME   "RVS_TEB"
 
#define RVS_BB_SV_FRAME_NO_LUT_NAME   "RVS_BB_SV_Frame_No"
 
#define RSR_LUT_NAME   "RSR"
 
#define WAVELENGTH_LUT_NAME   "WAVELENGTH"
 
#define NUM_WL_INCREMENT_LUT_NAME   "NWL"
 
#define CALIB_A0_LUT_NAME   "A0"
 
#define CALIB_A2_LUT_NAME   "A2"
 
#define T_INS_FUNCTION_FLAG_LUT_NAME   "T_ins_function_flag"
 
#define T_INS_DEFAULT_LUT_NAME   "T_ins_default"
 
#define T_INS_OFFSET_LUT_NAME   "T_ins_offset"
 
#define T_CAV_FUNCTION_FLAG_LUT_NAME   "T_cav_function_flag"
 
#define T_CAV_DEFAULT_LUT_NAME   "T_cav_default"
 
#define T_MIR_FUNCTION_FLAG_LUT_NAME   "T_mir_function_flag"
 
#define T_MIR_DEFAULT_LUT_NAME   "T_mir_default"
 
#define BB_WEIGHT_LUT_NAME   "BB_Weight"
 
#define BB_DN_1ST_FRAME_LUT_NAME   "BB_DN_first_frame_to_use"
 
#define BB_DN_NUM_FRAMES_LUT_NAME   "BB_DN_number_of_frames_to_use"
 
#define SV_DN_1ST_FRAME_LUT_NAME   "SV_DN_first_frame_to_use"
 
#define SV_DN_NUM_FRAMES_LUT_NAME   "SV_DN_number_of_frames_to_use"
 
#define SV_DN_MOON_INCLUDE_FRAMES_LUT_NAME   "SV_DN_moon_include_frames"
 
#define PCX_CORRECTION_SWITCH_LUT_NAME   "PCX_correction_switch"
 
#define OVERLAP_SCANS_B1_LUT_NAME   "num_overlap_scans_b1"
 
#define BAND_21_B1_LUT_NAME   "Band_21_b1"
 
#define L_MIN_LUT_NAME   "L_Min"
 
#define L_MAX_LUT_NAME   "L_Max"
 
#define TEB_SPECIFIED_UNCERTAINTY_LUT_NAME   "TEB_specified_uncertainty"
 
#define TEB_UI_SCALING_FACTOR_LUT_NAME   "TEB_UI_scaling_factor"
 
#define SIGMA_A0_LUT_NAME   "sigma_a0"
 
#define SIGMA_A2_LUT_NAME   "sigma_a2"
 
#define SIGMA_RVS_EV_LUT_NAME   "sigma_RVS_EV"
 
#define SIGMA_EPSILON_BB_LUT_NAME   "sigma_epsilon_BB"
 
#define SIGMA_EPSILON_CAV_LUT_NAME   "sigma_epsilon_CAV"
 
#define SIGMA_L_LAMBDA_LUT_NAME   "sigma_L_lambda"
 
#define SIGMA_L_TBB_LUT_NAME   "sigma_L_Tbb"
 
#define SIGMA_L_TSM_LUT_NAME   "sigma_L_Tsm"
 
#define SIGMA_L_TCAV_LUT_NAME   "sigma_L_Tcav"
 
#define SIGMA_B1_BAND21_LUT_NAME   "sigma_b1_B21"
 
#define XT_UI_FACTOR_LUT_NAME   "xt_ui_factor"
 
#define PVLW_XT_COEFF_LUT_NAME   "PVLW_XT_coeff"
 
#define QA_SERIAL_NUMBER_LUT_NAME   "QA serial number"
 
#define PLATFORM_SHORT_NAME_LUT_NAME   "ASSOCIATEDPLATFORMSHORTNAME"
 
#define PACKAGE_ACCEPT_DATE_LUT_NAME   "ALGORITHMPACKAGEACCEPTANCEDATE"
 
#define PACKAGE_MATURITY_CODE_LUT_NAME   "ALGORITHMPACKAGEMATURITYCODE"
 
#define DET_QUAL_FLAG_VALS_LUT_NAME   "Detector Quality Flag Values"
 
#define DET_QUAL_FLAG2_VALS_LUT_NAME   "Detector Quality Flag2 Values"
 
#define MOON_OFFSET_LIMITS_LUT_NAME   "Moon Offset Limits"
 
#define MISSION_PHASE_LUT_NAME   "mission phase"
 
#define CONTROL_OPTIONS_LUT_NAME   "Control options"
 
#define BASE_VARI_VISUAL_FPA_LUT_NAME   "visual FPA base variance"
 
#define BASE_VARI_NIR_FPA_LUT_NAME   "NIR FPA base variance"
 
#define BB_TEMP_VARIANCE_LUT_NAME   "T_BB_Variance"
 
#define BB_AVG_TEMP_VAR_LUT_NAME   "BB Average Temperature Variance"
 
#define LWIR_FPA_TEMP_VAR_LUT_NAME   "LWIR FPA Temperature Variance"
 
#define MWIR_FPA_TEMP_VAR_LUT_NAME   "MWIR FPA Temperature Variance"
 
#define MIR_SIDE_1_TEMP_VAR_LUT_NAME   "MirrorSide 1 Temperature Variance"
 
#define MIR_SIDE_2_TEMP_VAR_LUT_NAME   "MirrorSide 2 Temperature Variance"
 
#define MIR_AVG_TEMP_VAR_LUT_NAME   "Mirror Average Temperature Variance"
 
#define INST_TEMP_VAR_LUT_NAME   "Instrument Temperature Variance"
 
#define CAVITY_TEMP_VAR_LUT_NAME   "Cavity Temperature Variance"
 
#define EMISS_NEdL_LUT_NAME   "NEdL"
 
#define CALIB_A1_LUT_NAME   "a1"
 
#define ROLL_THRESHOLD_LUT_NAME   "Spacecraft_Roll_Threshold_Angle"
 
#define PITCH_THRESHOLD_LUT_NAME   "Spacecraft_Pitch_Threshold_Angle"
 
#define YAW_THRESHOLD_LUT_NAME   "Spacecraft_Yaw_Threshold_Angle"
 

Enumerations

enum  control_options_defs_t {
  SPLIT_SCAN_CONTROL, BAD_SCAN_QUALITY_CONTROL, NUM_CONTROL_OPTIONS, SPLIT_SCAN_CONTROL,
  BAD_SCAN_QUALITY_CONTROL, NUM_CONTROL_OPTIONS
}
 

Functions

PGSt_SMF_status Read_Lookup_Tables (L1A_granule_t *L1A_Gran, lookup_tables_t *tables, Run_Time_Parameters_t *runtime_params)
 
PGSt_SMF_status Read_Refl_Tables (L1A_granule_t *, refl_tables_t *)
 
PGSt_SMF_status Read_QA_Tables (L1A_granule_t *, QA_tables_t *)
 
PGSt_SMF_status Read_Emiss_Tables (L1A_granule_t *, emiss_tables_t *)
 
PGSt_SMF_status Read_L1B_SDS_LUT (int32 sd_id, char *name, int32 data_type, int32 rank, int32 *dims, float64 data_collection_TAI_time, void *data)
 
int32 TDLUT_GetAlgorithm (int32 sd_id, char *name)
 
PGSt_SMF_status TDLUT_ReadStepFunction (int32 sd_id, char *name, int32 data_type, int32 rank, int32 *dims, float64 data_collection_TAI_time, void *data)
 
PGSt_SMF_status TDLUT_ReadPiecewiseLinearFunction (int32 sd_id, char *name, int32 data_type, int32 rank, int32 *dims, float64 data_collection_TAI_time, void *data)
 
PGSt_SMF_status Expand_BDSM_LUT (void *data, void **data_new, int32 data_type, int32 lead_dim, int32 *n_bytes)
 
int32 BDSM_index (char *ascii_file)
 

Variables

LUT_Definition_t refl_luts []
 
LUT_Definition_t emiss_luts []
 
LUT_Definition_t qa_luts []
 

Macro Definition Documentation

◆ B26_B5_CORR_LUT_NAME

#define B26_B5_CORR_LUT_NAME   "B26_B5_Corr"

Definition at line 499 of file L1B_Tables.h.

◆ B26_B5_CORR_SWITCH_LUT_NAME

#define B26_B5_CORR_SWITCH_LUT_NAME   "B26_B5_Corr_Switch"

Definition at line 500 of file L1B_Tables.h.

◆ B26_B5_FRAME_OFFSET_LUT_NAME

#define B26_B5_FRAME_OFFSET_LUT_NAME   "B26_B5_Frame_Offset"

Definition at line 501 of file L1B_Tables.h.

◆ BAND_21_B1_LUT_NAME

#define BAND_21_B1_LUT_NAME   "Band_21_b1"

Definition at line 552 of file L1B_Tables.h.

◆ BASE_VARI_NIR_FPA_LUT_NAME

#define BASE_VARI_NIR_FPA_LUT_NAME   "NIR FPA base variance"

Definition at line 585 of file L1B_Tables.h.

◆ BASE_VARI_VISUAL_FPA_LUT_NAME

#define BASE_VARI_VISUAL_FPA_LUT_NAME   "visual FPA base variance"

Definition at line 584 of file L1B_Tables.h.

◆ BB_AVG_TEMP_VAR_LUT_NAME

#define BB_AVG_TEMP_VAR_LUT_NAME   "BB Average Temperature Variance"

Definition at line 587 of file L1B_Tables.h.

◆ BB_DN_1ST_FRAME_LUT_NAME

#define BB_DN_1ST_FRAME_LUT_NAME   "BB_DN_first_frame_to_use"

Definition at line 545 of file L1B_Tables.h.

◆ BB_DN_NUM_FRAMES_LUT_NAME

#define BB_DN_NUM_FRAMES_LUT_NAME   "BB_DN_number_of_frames_to_use"

Definition at line 546 of file L1B_Tables.h.

◆ BB_TEMP_VARIANCE_LUT_NAME

#define BB_TEMP_VARIANCE_LUT_NAME   "T_BB_Variance"

Definition at line 586 of file L1B_Tables.h.

◆ BB_WEIGHT_LUT_NAME

#define BB_WEIGHT_LUT_NAME   "BB_Weight"

Definition at line 544 of file L1B_Tables.h.

◆ CALIB_A0_LUT_NAME

#define CALIB_A0_LUT_NAME   "A0"

Definition at line 527 of file L1B_Tables.h.

◆ CALIB_A1_LUT_NAME

#define CALIB_A1_LUT_NAME   "a1"

Definition at line 596 of file L1B_Tables.h.

◆ CALIB_A2_LUT_NAME

#define CALIB_A2_LUT_NAME   "A2"

Definition at line 528 of file L1B_Tables.h.

◆ CAVITY_TEMP_VAR_LUT_NAME

#define CAVITY_TEMP_VAR_LUT_NAME   "Cavity Temperature Variance"

Definition at line 594 of file L1B_Tables.h.

◆ CONTROL_OPTIONS_LUT_NAME

#define CONTROL_OPTIONS_LUT_NAME   "Control options"

Definition at line 583 of file L1B_Tables.h.

◆ DELTA_T_BB_BETA_LUT_NAME

#define DELTA_T_BB_BETA_LUT_NAME   "delta_T_bb_beta"

Definition at line 519 of file L1B_Tables.h.

◆ DELTA_T_BB_DELTA_LUT_NAME

#define DELTA_T_BB_DELTA_LUT_NAME   "delta_T_bb_delta"

Definition at line 520 of file L1B_Tables.h.

◆ DET_QUAL_FLAG2_VALS_LUT_NAME

#define DET_QUAL_FLAG2_VALS_LUT_NAME   "Detector Quality Flag2 Values"

Definition at line 580 of file L1B_Tables.h.

◆ DET_QUAL_FLAG_VALS_LUT_NAME

#define DET_QUAL_FLAG_VALS_LUT_NAME   "Detector Quality Flag Values"

Definition at line 579 of file L1B_Tables.h.

◆ DN_OBC_1ST_FRAME_LUT_NAME

#define DN_OBC_1ST_FRAME_LUT_NAME   "DN_obc_avg_first_frame_to_use"

Definition at line 488 of file L1B_Tables.h.

◆ DN_OBC_NUM_FRAMES_LUT_NAME

#define DN_OBC_NUM_FRAMES_LUT_NAME   "DN_obc_avg_number_of_frames_to_use"

Definition at line 489 of file L1B_Tables.h.

◆ DN_SAT_EV_LUT_NAME

#define DN_SAT_EV_LUT_NAME   "dn_sat_ev"

Definition at line 498 of file L1B_Tables.h.

◆ DN_STAR_MAX_LUT_NAME

#define DN_STAR_MAX_LUT_NAME   "dn_star_Max"

Definition at line 470 of file L1B_Tables.h.

◆ DN_STAR_MIN_LUT_NAME

#define DN_STAR_MIN_LUT_NAME   "dn_star_Min"

Definition at line 471 of file L1B_Tables.h.

◆ E_SUN_OVER_PI_LUT_NAME

#define E_SUN_OVER_PI_LUT_NAME   "E_sun_over_pi"

Definition at line 496 of file L1B_Tables.h.

◆ EMISS_NEdL_LUT_NAME

#define EMISS_NEdL_LUT_NAME   "NEdL"

Definition at line 595 of file L1B_Tables.h.

◆ EMISS_SERIAL_NUMBER_LUT_NAME

#define EMISS_SERIAL_NUMBER_LUT_NAME   "Serial Number of Emissive LUT"

Definition at line 516 of file L1B_Tables.h.

◆ EPSILON_BB_LUT_NAME

#define EPSILON_BB_LUT_NAME   "epsilon_bb"

Definition at line 517 of file L1B_Tables.h.

◆ EPSILON_CAV_LUT_NAME

#define EPSILON_CAV_LUT_NAME   "epsilon_cav"

Definition at line 518 of file L1B_Tables.h.

◆ EVAL_2ND_ORDER_POLYNOMIAL

#define EVAL_2ND_ORDER_POLYNOMIAL (   p,
  a,
  x,
 
)    p = a[0] + x * a[1] + y * a[2];

Definition at line 375 of file L1B_Tables.h.

◆ EVAL_4TH_ORDER_POLYNOMIAL

#define EVAL_4TH_ORDER_POLYNOMIAL (   p,
  a,
 
)    p = a[0] + x * (a[1] + x * (a[2] + x * (a[3] + x * a[4])));

Definition at line 366 of file L1B_Tables.h.

◆ GLOBAL_ATTRIBUTE_LUT

#define GLOBAL_ATTRIBUTE_LUT   0 /* Must use read_attribute */

Definition at line 452 of file L1B_Tables.h.

◆ INDEX_TP_AO_LWIR_LENS

#define INDEX_TP_AO_LWIR_LENS   3 /* LUT index */

Definition at line 416 of file L1B_Tables.h.

◆ INDEX_TP_AO_LWIR_OBJ

#define INDEX_TP_AO_LWIR_OBJ   1 /* LUT index */

Definition at line 414 of file L1B_Tables.h.

◆ INDEX_TP_AO_SMIR_LENS

#define INDEX_TP_AO_SMIR_LENS   2 /* LUT index */

Definition at line 415 of file L1B_Tables.h.

◆ INDEX_TP_AO_SMIR_OBJ

#define INDEX_TP_AO_SMIR_OBJ   0 /* LUT index */

Definition at line 413 of file L1B_Tables.h.

◆ INDEX_TP_MF_CALBKHD_SR

#define INDEX_TP_MF_CALBKHD_SR   0 /* LUT index */

Definition at line 419 of file L1B_Tables.h.

◆ INDEX_TP_MF_CVR_OP_SR

#define INDEX_TP_MF_CVR_OP_SR   3 /* LUT index */

Definition at line 422 of file L1B_Tables.h.

◆ INDEX_TP_MF_Z_BKHD_BB

#define INDEX_TP_MF_Z_BKHD_BB   2 /* LUT index */

Definition at line 421 of file L1B_Tables.h.

◆ INDEX_TP_SR_SNOUT

#define INDEX_TP_SR_SNOUT   1 /* LUT index */

Definition at line 420 of file L1B_Tables.h.

◆ INST_TEMP_VAR_LUT_NAME

#define INST_TEMP_VAR_LUT_NAME   "Instrument Temperature Variance"

Definition at line 593 of file L1B_Tables.h.

◆ K_FPA_LUT_NAME

#define K_FPA_LUT_NAME   "K_FPA"

Definition at line 473 of file L1B_Tables.h.

◆ K_INST_LUT_NAME

#define K_INST_LUT_NAME   "K_inst"

Definition at line 472 of file L1B_Tables.h.

◆ L_MAX_LUT_NAME

#define L_MAX_LUT_NAME   "L_Max"

Definition at line 554 of file L1B_Tables.h.

◆ L_MIN_LUT_NAME

#define L_MIN_LUT_NAME   "L_Min"

Definition at line 553 of file L1B_Tables.h.

◆ LWIR_FPA_TEMP_VAR_LUT_NAME

#define LWIR_FPA_TEMP_VAR_LUT_NAME   "LWIR FPA Temperature Variance"

Definition at line 588 of file L1B_Tables.h.

◆ M0_LUT_NAME

#define M0_LUT_NAME   "m0"

Definition at line 468 of file L1B_Tables.h.

◆ M1_LUT_NAME

#define M1_LUT_NAME   "m1"

Definition at line 469 of file L1B_Tables.h.

◆ MAX_ALGORITHMPACKAGEACCEPTANCEDATE_BUFFER

#define MAX_ALGORITHMPACKAGEACCEPTANCEDATE_BUFFER   11

Definition at line 351 of file L1B_Tables.h.

◆ MAX_ALGORITHMPACKAGEMATURITYCODE_BUFFER

#define MAX_ALGORITHMPACKAGEMATURITYCODE_BUFFER   15

Definition at line 352 of file L1B_Tables.h.

◆ MAX_ASSOCIATEDPLATFORMSHORTNAME_BUFFER

#define MAX_ASSOCIATEDPLATFORMSHORTNAME_BUFFER   21

Definition at line 350 of file L1B_Tables.h.

◆ MAX_DETECTORS_PER_SWIR_BAND

#define MAX_DETECTORS_PER_SWIR_BAND   20

Definition at line 384 of file L1B_Tables.h.

◆ MAX_MCST_VERSION_BUFFER

#define MAX_MCST_VERSION_BUFFER   21

Definition at line 349 of file L1B_Tables.h.

◆ MAX_MISSION_PHASE_BUFFER

#define MAX_MISSION_PHASE_BUFFER   15

Definition at line 353 of file L1B_Tables.h.

◆ MAX_NUM_RSR_vs_LAMBDA

#define MAX_NUM_RSR_vs_LAMBDA   49

Definition at line 398 of file L1B_Tables.h.

◆ MAX_NUM_SWIR_RSR_WL

#define MAX_NUM_SWIR_RSR_WL   27

Definition at line 386 of file L1B_Tables.h.

◆ MAX_NUM_SWIR_SUBSAMPLES

#define MAX_NUM_SWIR_SUBSAMPLES   2

Definition at line 383 of file L1B_Tables.h.

◆ MAX_PGE_VERSION_BUFFER

#define MAX_PGE_VERSION_BUFFER   11

Definition at line 348 of file L1B_Tables.h.

◆ MAX_SERIAL_NUMBER_BUFFER

#define MAX_SERIAL_NUMBER_BUFFER   31

Definition at line 347 of file L1B_Tables.h.

◆ MAX_SWIR_BAND_EV_FRAMES

#define MAX_SWIR_BAND_EV_FRAMES   2708

Definition at line 385 of file L1B_Tables.h.

◆ MCST_VERSION_LUT_NAME

#define MCST_VERSION_LUT_NAME   "MCST_Version"

Definition at line 461 of file L1B_Tables.h.

◆ MIR_AVG_TEMP_VAR_LUT_NAME

#define MIR_AVG_TEMP_VAR_LUT_NAME   "Mirror Average Temperature Variance"

Definition at line 592 of file L1B_Tables.h.

◆ MIR_SIDE_1_TEMP_VAR_LUT_NAME

#define MIR_SIDE_1_TEMP_VAR_LUT_NAME   "MirrorSide 1 Temperature Variance"

Definition at line 590 of file L1B_Tables.h.

◆ MIR_SIDE_2_TEMP_VAR_LUT_NAME

#define MIR_SIDE_2_TEMP_VAR_LUT_NAME   "MirrorSide 2 Temperature Variance"

Definition at line 591 of file L1B_Tables.h.

◆ MISSION_PHASE_LUT_NAME

#define MISSION_PHASE_LUT_NAME   "mission phase"

Definition at line 582 of file L1B_Tables.h.

◆ MOON_OFFSET_LIMITS_LUT_NAME

#define MOON_OFFSET_LIMITS_LUT_NAME   "Moon Offset Limits"

Definition at line 581 of file L1B_Tables.h.

◆ MWIR_FPA_TEMP_VAR_LUT_NAME

#define MWIR_FPA_TEMP_VAR_LUT_NAME   "MWIR FPA Temperature Variance"

Definition at line 589 of file L1B_Tables.h.

◆ NUM_1ST_ORDER_COEFFS

#define NUM_1ST_ORDER_COEFFS   2

Definition at line 358 of file L1B_Tables.h.

◆ NUM_2ND_ORDER_COEFFS

#define NUM_2ND_ORDER_COEFFS   3

Definition at line 359 of file L1B_Tables.h.

◆ NUM_4TH_ORDER_COEFFS

#define NUM_4TH_ORDER_COEFFS   5

Definition at line 360 of file L1B_Tables.h.

◆ NUM_a0_vs_T_inst_COEFF

#define NUM_a0_vs_T_inst_COEFF   3 /* see caution above */

Definition at line 403 of file L1B_Tables.h.

◆ NUM_a2_vs_T_inst_COEFF

#define NUM_a2_vs_T_inst_COEFF   3 /* see caution above */

Definition at line 404 of file L1B_Tables.h.

◆ NUM_ATTITUDE_ANGLES

#define NUM_ATTITUDE_ANGLES   3

Definition at line 431 of file L1B_Tables.h.

◆ NUM_BITS_IN_UINT8

#define NUM_BITS_IN_UINT8   8

Definition at line 356 of file L1B_Tables.h.

◆ NUM_DN_VALUES

#define NUM_DN_VALUES   4096 /* 2^12 = 4096 (0..4095) */

Definition at line 354 of file L1B_Tables.h.

◆ NUM_MOON_OFFSET_LIMITS

#define NUM_MOON_OFFSET_LIMITS   4

Definition at line 430 of file L1B_Tables.h.

◆ NUM_PC_XT_BANDS

#define NUM_PC_XT_BANDS   5

Definition at line 396 of file L1B_Tables.h.

◆ NUM_PC_XT_PARAMETERS

#define NUM_PC_XT_PARAMETERS   4

Definition at line 397 of file L1B_Tables.h.

◆ NUM_PRI_RED_SYSTEMS

#define NUM_PRI_RED_SYSTEMS   2

Definition at line 355 of file L1B_Tables.h.

◆ NUM_PVLW_XT_BANDS

#define NUM_PVLW_XT_BANDS   4

Definition at line 400 of file L1B_Tables.h.

◆ NUM_PVLW_XT_COEFF

#define NUM_PVLW_XT_COEFF   3

Definition at line 401 of file L1B_Tables.h.

◆ NUM_RSB_RVS_COEFFS

#define NUM_RSB_RVS_COEFFS   5 /* number of coefficients used to calcuate RVS */

Definition at line 425 of file L1B_Tables.h.

◆ NUM_SWIR_BANDS

#define NUM_SWIR_BANDS   4

Definition at line 382 of file L1B_Tables.h.

◆ NUM_T_CAV_THERMISTORS

#define NUM_T_CAV_THERMISTORS   4 /* number of values in LUT */

Definition at line 418 of file L1B_Tables.h.

◆ NUM_T_INS_THERMISTORS

#define NUM_T_INS_THERMISTORS   4 /* number of values in LUT */

Definition at line 412 of file L1B_Tables.h.

◆ NUM_T_MIR_THERMISTORS

#define NUM_T_MIR_THERMISTORS   2 /* number of values in LUT */

Definition at line 411 of file L1B_Tables.h.

◆ NUM_U2_FRAME

#define NUM_U2_FRAME   7 /* number of frames in uncertainty term u2 LUT */

Definition at line 424 of file L1B_Tables.h.

◆ NUM_WL_INCREMENT_LUT_NAME

#define NUM_WL_INCREMENT_LUT_NAME   "NWL"

Definition at line 526 of file L1B_Tables.h.

◆ OVERLAP_SCANS_B1_LUT_NAME

#define OVERLAP_SCANS_B1_LUT_NAME   "num_overlap_scans_b1"

Definition at line 551 of file L1B_Tables.h.

◆ PACKAGE_ACCEPT_DATE_LUT_NAME

#define PACKAGE_ACCEPT_DATE_LUT_NAME   "ALGORITHMPACKAGEACCEPTANCEDATE"

Definition at line 577 of file L1B_Tables.h.

◆ PACKAGE_MATURITY_CODE_LUT_NAME

#define PACKAGE_MATURITY_CODE_LUT_NAME   "ALGORITHMPACKAGEMATURITYCODE"

Definition at line 578 of file L1B_Tables.h.

◆ PCX_CORRECTION_SWITCH_LUT_NAME

#define PCX_CORRECTION_SWITCH_LUT_NAME   "PCX_correction_switch"

Definition at line 550 of file L1B_Tables.h.

◆ PCX_TALK_LUT_NAME

#define PCX_TALK_LUT_NAME   "PC_XT"

Definition at line 521 of file L1B_Tables.h.

◆ PGE02_VERSION

#define PGE02_VERSION   "6.2.2_obpg"

Definition at line 336 of file L1B_Tables.h.

◆ PGE_VERSION_LUT_NAME

#define PGE_VERSION_LUT_NAME   "PGE_Version"

Definition at line 460 of file L1B_Tables.h.

◆ PITCH_THRESHOLD_LUT_NAME

#define PITCH_THRESHOLD_LUT_NAME   "Spacecraft_Pitch_Threshold_Angle"

Definition at line 598 of file L1B_Tables.h.

◆ PLATFORM_SHORT_NAME_LUT_NAME

#define PLATFORM_SHORT_NAME_LUT_NAME   "ASSOCIATEDPLATFORMSHORTNAME"

Definition at line 576 of file L1B_Tables.h.

◆ PVLW_XT_COEFF_LUT_NAME

#define PVLW_XT_COEFF_LUT_NAME   "PVLW_XT_coeff"

Definition at line 569 of file L1B_Tables.h.

◆ QA_SERIAL_NUMBER_LUT_NAME

#define QA_SERIAL_NUMBER_LUT_NAME   "QA serial number"

Definition at line 575 of file L1B_Tables.h.

◆ REFL_SERIAL_NUMBER_LUT_NAME

#define REFL_SERIAL_NUMBER_LUT_NAME   "Serial Number of Reflective LUT"

Definition at line 467 of file L1B_Tables.h.

◆ ROLL_THRESHOLD_LUT_NAME

#define ROLL_THRESHOLD_LUT_NAME   "Spacecraft_Roll_Threshold_Angle"

Definition at line 597 of file L1B_Tables.h.

◆ RSB_SPECIFIED_UNCERTAINTY_LUT_NAME

#define RSB_SPECIFIED_UNCERTAINTY_LUT_NAME   "RSB_specified_uncertainty"

Definition at line 494 of file L1B_Tables.h.

◆ RSB_SV_DN_MOON_INCLUDE_FRAMES_LUT_NAME

#define RSB_SV_DN_MOON_INCLUDE_FRAMES_LUT_NAME   "RSB_SV_DN_moon_include_frames"

Definition at line 497 of file L1B_Tables.h.

◆ RSB_UI_SCALING_FACTOR_LUT_NAME

#define RSB_UI_SCALING_FACTOR_LUT_NAME   "RSB_UI_scaling_factor"

Definition at line 495 of file L1B_Tables.h.

◆ RSR_LUT_NAME

#define RSR_LUT_NAME   "RSR"

Definition at line 524 of file L1B_Tables.h.

◆ RVS_BB_SV_FRAME_NO_LUT_NAME

#define RVS_BB_SV_FRAME_NO_LUT_NAME   "RVS_BB_SV_Frame_No"

Definition at line 523 of file L1B_Tables.h.

◆ RVS_RSB_LUT_NAME

#define RVS_RSB_LUT_NAME   "RVS_RefSB"

Definition at line 476 of file L1B_Tables.h.

◆ RVS_TEB_LUT_NAME

#define RVS_TEB_LUT_NAME   "RVS_TEB"

Definition at line 522 of file L1B_Tables.h.

◆ SCN_LOWER

#define SCN_LOWER   3 /* scan lower limit index */

Definition at line 441 of file L1B_Tables.h.

◆ SCN_UPPER

#define SCN_UPPER   2 /* scan upper limit index */

Definition at line 440 of file L1B_Tables.h.

◆ SDS_LUT

#define SDS_LUT   1 /* Must use read_sds_rankn */

Definition at line 453 of file L1B_Tables.h.

◆ SIGMA_A0_LUT_NAME

#define SIGMA_A0_LUT_NAME   "sigma_a0"

Definition at line 558 of file L1B_Tables.h.

◆ SIGMA_A2_LUT_NAME

#define SIGMA_A2_LUT_NAME   "sigma_a2"

Definition at line 559 of file L1B_Tables.h.

◆ SIGMA_B1_BAND21_LUT_NAME

#define SIGMA_B1_BAND21_LUT_NAME   "sigma_b1_B21"

Definition at line 567 of file L1B_Tables.h.

◆ SIGMA_EPSILON_BB_LUT_NAME

#define SIGMA_EPSILON_BB_LUT_NAME   "sigma_epsilon_BB"

Definition at line 561 of file L1B_Tables.h.

◆ SIGMA_EPSILON_CAV_LUT_NAME

#define SIGMA_EPSILON_CAV_LUT_NAME   "sigma_epsilon_CAV"

Definition at line 562 of file L1B_Tables.h.

◆ SIGMA_L_LAMBDA_LUT_NAME

#define SIGMA_L_LAMBDA_LUT_NAME   "sigma_L_lambda"

Definition at line 563 of file L1B_Tables.h.

◆ SIGMA_L_TBB_LUT_NAME

#define SIGMA_L_TBB_LUT_NAME   "sigma_L_Tbb"

Definition at line 564 of file L1B_Tables.h.

◆ SIGMA_L_TCAV_LUT_NAME

#define SIGMA_L_TCAV_LUT_NAME   "sigma_L_Tcav"

Definition at line 566 of file L1B_Tables.h.

◆ SIGMA_L_TSM_LUT_NAME

#define SIGMA_L_TSM_LUT_NAME   "sigma_L_Tsm"

Definition at line 565 of file L1B_Tables.h.

◆ SIGMA_RVS_EV_LUT_NAME

#define SIGMA_RVS_EV_LUT_NAME   "sigma_RVS_EV"

Definition at line 560 of file L1B_Tables.h.

◆ SV_DN_1ST_FRAME_LUT_NAME

#define SV_DN_1ST_FRAME_LUT_NAME   "SV_DN_first_frame_to_use"

Definition at line 547 of file L1B_Tables.h.

◆ SV_DN_MOON_INCLUDE_FRAMES_LUT_NAME

#define SV_DN_MOON_INCLUDE_FRAMES_LUT_NAME   "SV_DN_moon_include_frames"

Definition at line 549 of file L1B_Tables.h.

◆ SV_DN_NUM_FRAMES_LUT_NAME

#define SV_DN_NUM_FRAMES_LUT_NAME   "SV_DN_number_of_frames_to_use"

Definition at line 548 of file L1B_Tables.h.

◆ SWIR_CORR_SENDING_BAND_LUT_NAME

#define SWIR_CORR_SENDING_BAND_LUT_NAME   "SWIR_OOB_corr_sending_band"

Definition at line 502 of file L1B_Tables.h.

◆ SWIR_CORR_SENDING_DETECTOR_LUT_NAME

#define SWIR_CORR_SENDING_DETECTOR_LUT_NAME   "SWIR_OOB_corr_sending_detector"

Definition at line 503 of file L1B_Tables.h.

◆ SWIR_CORRECTION_SWITCH_LUT_NAME

#define SWIR_CORRECTION_SWITCH_LUT_NAME   "SWIR_OOB_correction_switch"

Definition at line 490 of file L1B_Tables.h.

◆ SWIR_UI_FACTOR_LUT_NAME

#define SWIR_UI_FACTOR_LUT_NAME   "swir_ui_factor"

Definition at line 510 of file L1B_Tables.h.

◆ T_CAV_DEFAULT_LUT_NAME

#define T_CAV_DEFAULT_LUT_NAME   "T_cav_default"

Definition at line 541 of file L1B_Tables.h.

◆ T_CAV_FUNCTION_FLAG_LUT_NAME

#define T_CAV_FUNCTION_FLAG_LUT_NAME   "T_cav_function_flag"

Definition at line 540 of file L1B_Tables.h.

◆ T_FPA_REF_LUT_NAME

#define T_FPA_REF_LUT_NAME   "T_FPA_ref"

Definition at line 475 of file L1B_Tables.h.

◆ T_INS_DEFAULT_LUT_NAME

#define T_INS_DEFAULT_LUT_NAME   "T_ins_default"

Definition at line 538 of file L1B_Tables.h.

◆ T_INS_FUNCTION_FLAG_LUT_NAME

#define T_INS_FUNCTION_FLAG_LUT_NAME   "T_ins_function_flag"

Definition at line 537 of file L1B_Tables.h.

◆ T_INS_OFFSET_LUT_NAME

#define T_INS_OFFSET_LUT_NAME   "T_ins_offset"

Definition at line 539 of file L1B_Tables.h.

◆ T_INST_REF_LUT_NAME

#define T_INST_REF_LUT_NAME   "T_inst_ref"

Definition at line 474 of file L1B_Tables.h.

◆ T_MIR_DEFAULT_LUT_NAME

#define T_MIR_DEFAULT_LUT_NAME   "T_mir_default"

Definition at line 543 of file L1B_Tables.h.

◆ T_MIR_FUNCTION_FLAG_LUT_NAME

#define T_MIR_FUNCTION_FLAG_LUT_NAME   "T_mir_function_flag"

Definition at line 542 of file L1B_Tables.h.

◆ TDLUT_ALGORITHM_ATTR_NAME

#define TDLUT_ALGORITHM_ATTR_NAME   "algorithm"

Definition at line 289 of file L1B_Tables.h.

◆ TDLUT_CONSTANT

#define TDLUT_CONSTANT   0

Definition at line 286 of file L1B_Tables.h.

◆ TDLUT_INVALID

#define TDLUT_INVALID   -1

Definition at line 285 of file L1B_Tables.h.

◆ TDLUT_PIECEWISE_LINEAR

#define TDLUT_PIECEWISE_LINEAR   2

Definition at line 288 of file L1B_Tables.h.

◆ TDLUT_PIECEWISE_LINEAR_TIMES

#define TDLUT_PIECEWISE_LINEAR_TIMES   "times"

Definition at line 291 of file L1B_Tables.h.

◆ TDLUT_STEPFUNCTION

#define TDLUT_STEPFUNCTION   1

Definition at line 287 of file L1B_Tables.h.

◆ TDLUT_STEPFUNCTION_TIMES

#define TDLUT_STEPFUNCTION_TIMES   "times"

Definition at line 290 of file L1B_Tables.h.

◆ TEB_SPECIFIED_UNCERTAINTY_LUT_NAME

#define TEB_SPECIFIED_UNCERTAINTY_LUT_NAME   "TEB_specified_uncertainty"

Definition at line 555 of file L1B_Tables.h.

◆ TEB_UI_SCALING_FACTOR_LUT_NAME

#define TEB_UI_SCALING_FACTOR_LUT_NAME   "TEB_UI_scaling_factor"

Definition at line 556 of file L1B_Tables.h.

◆ TRK_LOWER

#define TRK_LOWER   1 /* track lower limit index */

Definition at line 439 of file L1B_Tables.h.

◆ TRK_UPPER

#define TRK_UPPER   0 /* track upper limit index */

Definition at line 438 of file L1B_Tables.h.

◆ U1_LUT_NAME

#define U1_LUT_NAME   "u1"

Definition at line 505 of file L1B_Tables.h.

◆ U2_FRAMES_LUT_NAME

#define U2_FRAMES_LUT_NAME   "u2_frames"

Definition at line 509 of file L1B_Tables.h.

◆ U2_LUT_NAME

#define U2_LUT_NAME   "u2"

Definition at line 506 of file L1B_Tables.h.

◆ U3_LUT_NAME

#define U3_LUT_NAME   "u3"

Definition at line 507 of file L1B_Tables.h.

◆ U4_LUT_NAME

#define U4_LUT_NAME   "u4"

Definition at line 508 of file L1B_Tables.h.

◆ WAVELENGTH_LUT_NAME

#define WAVELENGTH_LUT_NAME   "WAVELENGTH"

Definition at line 525 of file L1B_Tables.h.

◆ X_OOB_0_LUT_NAME

#define X_OOB_0_LUT_NAME   "X_OOB_0"

Definition at line 491 of file L1B_Tables.h.

◆ X_OOB_1_LUT_NAME

#define X_OOB_1_LUT_NAME   "X_OOB_1"

Definition at line 492 of file L1B_Tables.h.

◆ X_OOB_2_LUT_NAME

#define X_OOB_2_LUT_NAME   "X_OOB_2"

Definition at line 493 of file L1B_Tables.h.

◆ XT_UI_FACTOR_LUT_NAME

#define XT_UI_FACTOR_LUT_NAME   "xt_ui_factor"

Definition at line 568 of file L1B_Tables.h.

◆ YAW_THRESHOLD_LUT_NAME

#define YAW_THRESHOLD_LUT_NAME   "Spacecraft_Yaw_Threshold_Angle"

Definition at line 599 of file L1B_Tables.h.

Enumeration Type Documentation

◆ control_options_defs_t

Enumerator
SPLIT_SCAN_CONTROL 
BAD_SCAN_QUALITY_CONTROL 
NUM_CONTROL_OPTIONS 
SPLIT_SCAN_CONTROL 
BAD_SCAN_QUALITY_CONTROL 
NUM_CONTROL_OPTIONS 

Definition at line 861 of file L1B_Tables.h.

Function Documentation

◆ BDSM_index()

int32 BDSM_index ( char *  ascii_file)

Definition at line 3865 of file L1B_Tables.c.

◆ Expand_BDSM_LUT()

PGSt_SMF_status Expand_BDSM_LUT ( void *  data,
void **  data_new,
int32  data_type,
int32  lead_dim,
int32 *  n_bytes 
)

Definition at line 3656 of file L1B_Tables.c.

◆ Read_Emiss_Tables()

PGSt_SMF_status Read_Emiss_Tables ( L1A_granule_t ,
emiss_tables_t  
)

Definition at line 668 of file L1B_Tables.c.

◆ Read_L1B_SDS_LUT()

PGSt_SMF_status Read_L1B_SDS_LUT ( int32  sd_id,
char *  name,
int32  data_type,
int32  rank,
int32 *  dims,
float64  data_collection_TAI_time,
void *  data 
)

Definition at line 2646 of file L1B_Tables.c.

◆ Read_Lookup_Tables()

PGSt_SMF_status Read_Lookup_Tables ( L1A_granule_t L1A_Gran,
lookup_tables_t tables,
Run_Time_Parameters_t runtime_params 
)

Definition at line 31 of file L1B_Tables.c.

◆ Read_QA_Tables()

PGSt_SMF_status Read_QA_Tables ( L1A_granule_t ,
QA_tables_t  
)

Definition at line 1116 of file L1B_Tables.c.

◆ Read_Refl_Tables()

PGSt_SMF_status Read_Refl_Tables ( L1A_granule_t ,
refl_tables_t  
)

Definition at line 231 of file L1B_Tables.c.

◆ TDLUT_GetAlgorithm()

int32 TDLUT_GetAlgorithm ( int32  sd_id,
char *  name 
)

Definition at line 2766 of file L1B_Tables.c.

◆ TDLUT_ReadPiecewiseLinearFunction()

PGSt_SMF_status TDLUT_ReadPiecewiseLinearFunction ( int32  sd_id,
char *  name,
int32  data_type,
int32  rank,
int32 *  dims,
float64  data_collection_TAI_time,
void *  data 
)

Definition at line 3236 of file L1B_Tables.c.

◆ TDLUT_ReadStepFunction()

PGSt_SMF_status TDLUT_ReadStepFunction ( int32  sd_id,
char *  name,
int32  data_type,
int32  rank,
int32 *  dims,
float64  data_collection_TAI_time,
void *  data 
)

Definition at line 2940 of file L1B_Tables.c.

Variable Documentation

◆ emiss_luts

LUT_Definition_t emiss_luts[]

Definition at line 2084 of file L1B_Tables.c.

◆ qa_luts

LUT_Definition_t qa_luts[]

Definition at line 2475 of file L1B_Tables.c.

◆ refl_luts

LUT_Definition_t refl_luts[]

Definition at line 1779 of file L1B_Tables.c.