caltrack_reader_modis_myd021km.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef CALTRACK_READER_MODIS_L1_H
00015 #define CALTRACK_READER_MODIS_L1_H
00016
00017 #include "caltrack_reader_common.h"
00018
00022 typedef struct {
00023 float32 lat;
00024 float32 lon;
00025 float64 time;
00027 int16 input_pixel_index [2];
00029 int16 input_file_index;
00031 char input_file [MAX_NC_NAME];
00033 float64 ev_250_aggr1km_refsb_band1_radiance;
00034 float64 ev_250_aggr1km_refsb_band1_reflectance;
00036 float64 ev_250_aggr1km_refsb_band2_radiance;
00037 float64 ev_250_aggr1km_refsb_band2_reflectance;
00039 float64 ev_500_aggr1km_refsb_band3_radiance;
00040 float64 ev_500_aggr1km_refsb_band3_reflectance;
00042 float64 ev_500_aggr1km_refsb_band4_radiance;
00043 float64 ev_500_aggr1km_refsb_band4_reflectance;
00045 float64 ev_500_aggr1km_refsb_band5_radiance;
00046 float64 ev_500_aggr1km_refsb_band5_reflectance;
00048 float64 ev_500_aggr1km_refsb_band6_radiance;
00049 float64 ev_500_aggr1km_refsb_band6_reflectance;
00051 float64 ev_500_aggr1km_refsb_band7_radiance;
00052 float64 ev_500_aggr1km_refsb_band7_reflectance;
00054 float64 ev_1km_refsb_band8_radiance;
00055 float64 ev_1km_refsb_band8_reflectance;
00057 float64 ev_1km_refsb_band9_radiance;
00058 float64 ev_1km_refsb_band9_reflectance;
00060 float64 ev_1km_refsb_band10_radiance;
00061 float64 ev_1km_refsb_band10_reflectance;
00063 float64 ev_1km_refsb_band11_radiance;
00064 float64 ev_1km_refsb_band11_reflectance;
00066 float64 ev_1km_refsb_band12_radiance;
00067 float64 ev_1km_refsb_band12_reflectance;
00069 float64 ev_1km_refsb_band13lo_radiance;
00070 float64 ev_1km_refsb_band13lo_reflectance;
00072 float64 ev_1km_refsb_band13hi_radiance;
00073 float64 ev_1km_refsb_band13hi_reflectance;
00075 float64 ev_1km_refsb_band14lo_radiance;
00076 float64 ev_1km_refsb_band14lo_reflectance;
00078 float64 ev_1km_refsb_band14hi_radiance;
00079 float64 ev_1km_refsb_band14hi_reflectance;
00081 float64 ev_1km_refsb_band15_radiance;
00082 float64 ev_1km_refsb_band15_reflectance;
00084 float64 ev_1km_refsb_band16_radiance;
00085 float64 ev_1km_refsb_band16_reflectance;
00087 float64 ev_1km_refsb_band17_radiance;
00088 float64 ev_1km_refsb_band17_reflectance;
00090 float64 ev_1km_refsb_band18_radiance;
00091 float64 ev_1km_refsb_band18_reflectance;
00093 float64 ev_1km_refsb_band19_radiance;
00094 float64 ev_1km_refsb_band19_reflectance;
00096 float64 ev_1km_refsb_band26_radiance;
00097 float64 ev_1km_refsb_band26_reflectance;
00099 float64 ev_1km_emissive_band20_radiance;
00101 float64 ev_1km_emissive_band21_radiance;
00103 float64 ev_1km_emissive_band22_radiance;
00105 float64 ev_1km_emissive_band23_radiance;
00107 float64 ev_1km_emissive_band24_radiance;
00109 float64 ev_1km_emissive_band25_radiance;
00111 float64 ev_1km_emissive_band27_radiance;
00113 float64 ev_1km_emissive_band28_radiance;
00115 float64 ev_1km_emissive_band29_radiance;
00117 float64 ev_1km_emissive_band30_radiance;
00119 float64 ev_1km_emissive_band31_radiance;
00121 float64 ev_1km_emissive_band32_radiance;
00123 float64 ev_1km_emissive_band33_radiance;
00125 float64 ev_1km_emissive_band34_radiance;
00127 float64 ev_1km_emissive_band35_radiance;
00129 float64 ev_1km_emissive_band36_radiance;
00130
00131 } caltrack_record_MODIS_L1;
00132
00140 int read_caltrack_record_MODIS_L1 ( const char* filename, const int i_rec, caltrack_record_MODIS_L1 *record );
00141
00146 void print_caltrack_record_MODIS_L1 ( const caltrack_record_MODIS_L1 const *record );
00147
00158 int32 get_myd021km_band_scaling_factor(const int32 sd_id, const char* sds_name,
00159 float64 * radiance_scale, float64 * radiance_offset,
00160 float64 * reflectance_scale, float64 * reflectance_offset);
00161
00170 int32 read_band_data (const int32 sd_id, const char* sds_name, const int32 i_rec,
00171 float64 * radiance, float64 * reflectance);
00172
00173 #endif