OB.DAAC Logo
NASA Logo
Ocean Color Science Software

ocssw V2022
VcstCalNetcdfInputItem.h
Go to the documentation of this file.
1 /*******************************************************************************
2  *
3  * NAME: VcstCalNetcdfInputItem.h
4  *
5  * DESCRIPTION: Subclass of the VcstCalLutInputItem object class to support
6  * reading a netCDF LUT file.
7  *
8  * Created on: June 18, 2015
9  * Author: Sam Anderson, VCST
10  *
11  * Modified: October 15, 2015, for generation and processing of time-dependent
12  * netCDF4 LUTs
13  *
14  *******************************************************************************/
15 
16 #ifndef VcstCalNetcdfInputItem_h
17 #define VcstCalNetcdfInputItem_h
18 
19 #include <VcstCalLutInputItem.h>
20 #include <VcstCalLutStructures.h>
21 
22 #include <netcdf>
23 
24 using namespace std;
25 using namespace netCDF;
26 using namespace netCDF::exceptions;
27 
29 public:
30 
36  VcstCalNetcdfInputItem(const std::string& groupName, size_t size);
37 
43  virtual ~VcstCalNetcdfInputItem();
44 
50  virtual int getData();
51 
57  int getData(double tai);
58 
59 
60 protected:
61 
66  int readNetCDF();
67 
68  int read_DG_ANOMALY_DN_LIMITS_LUT(NcFile* nc_input);
69  int read_DNB_STRAY_LIGHT_CORRECTION_LUT(NcFile* nc_input);
70  int read_SDR_DNB_DN0_LUT(NcFile* nc_input);
71  int read_SDR_DNB_RVS(NcFile* nc_input);
72  int read_SDR_DNB_FRAME_TO_ZONE(NcFile* nc_input);
73  int read_SDR_DNB_LGS_GAINS_LUT(NcFile* nc_input);
74  int read_SDR_DNB_GAIN_RATIOS_LUT(NcFile* nc_input);
75  int read_SDR_F_PREDICTED_LUT(NcFile* nc_input);
76  int read_SDR_GAIN_LUT(NcFile* nc_input);
77  int read_SDR_HAM_ER_TABLE(NcFile* nc_input);
78  int read_SDR_RTA_ER_TABLE(NcFile* nc_input);
79  int read_SDR_OBC_ER_TABLE(NcFile* nc_input);
80  int read_SDR_OBC_RR_TABLE(NcFile* nc_input);
81  int read_SDR_EBBT_TABLE(NcFile* nc_input);
82  int read_SDR_TELE_COEFFS(NcFile* nc_input);
83  int read_SDR_SOLAR_IRAD_LUT(NcFile* nc_input);
84  int read_SDR_OBS_TO_PIXELS(NcFile* nc_input);
85  int read_SDR_RADIOMETRIC_PARAMETERS(NcFile* nc_input);
86  int read_SDR_EMISSIVE_LUT(NcFile* nc_input);
87  int read_SDR_REFLECTIVE_LUT(NcFile* nc_input);
88  int read_SDR_RVS_LUT(NcFile* nc_input);
89  int read_SDR_BB_TEMP_COEFFS(NcFile* nc_input);
90  int read_SDR_DELTA_C_LUT(NcFile* nc_input);
91  int read_SDR_COEFF_A_LUT(NcFile* nc_input);
92  int read_SDR_COEFF_B_LUT(NcFile* nc_input);
93  int read_SDR_RELATIVE_SPECTRAL_RESPONSE_LUT(NcFile* nc_input);
94  int read_SDR_SOLAR_SPECTRAL_IRAD_LUT(NcFile* nc_input);
95 
96 
105  int expand_StrayLight_LUT(shortViirsCalDnbStrayLightLUT* short_lut,
107 
108 
113  int readDynamicNetcdf();
114 
115  int read_Dynamic_DNB_STRAY_LIGHT_CORRECTION_LUT(NcFile* nc_input);
116  int read_Dynamic_SDR_DNB_DN0_LUT(NcFile* nc_input);
117  int read_Dynamic_SDR_DNB_LGS_GAINS_LUT(NcFile* nc_input);
118  int read_Dynamic_SDR_DNB_GAIN_RATIOS_LUT(NcFile* nc_input);
119  int read_Dynamic_SDR_F_PREDICTED_LUT(NcFile* nc_input);
120  // int read_Dynamic_SDR_RELATIVE_SPECTRAL_RESPONSE_LUT( NcFile* nc_input );
121  int read_Dynamic_SDR_SOLAR_SPECTRAL_IRAD_LUT(NcFile* nc_input);
122 
123  long long iet_;
124 
125 };
126 
127 
128 
129 #endif
@ string