Go to the documentation of this file.
18 #ifdef BUILD_HISTORICAL
29 #define CHL_START (l2_data + 8*nsamp)
30 #define CHL_END (l2_data + 9*nsamp)
31 #define LAT_START (l2_str.latitude)
32 #define LAT_END (l2_str.latitude + max_samp_used+1)
33 #define LON_START (l2_str.longitude)
34 #define LON_END (l2_str.longitude + max_samp_used+1)
40 #define MSECHOUR 3600000
44 #define LONGNAME "long_name"
45 #define RANGE "valid_range"
50 #define L2B_PNAME "Product Name"
51 #define L2B_TITLE "Title"
52 #define LEGEND "Legend"
53 #define TITLE_VAL " Level-2 Browse Data"
54 #define DCENTER "Data Center"
55 #define DCENTER_VAL "NASA/GSFC SeaWiFS Data Processing Center"
56 #define L2BRS_MISSION "Mission"
57 #define MSNCHAR "Mission Characteristics"
58 #define SENSOR_NAME "Sensor Name"
59 #define SENSOR "Sensor"
60 #define SNSCHAR "Sensor Characteristics"
63 #define REPLACES "Replacement Flag"
64 #define SOFTID "Software ID"
65 #define SOFTID_VAL "?????"
66 #define SOFT_NAME "Software Name"
67 #define SOFT_VER "Software Version"
68 #define PTIME "Processing Time"
69 #define L2BRS_INFILES "Input Files"
70 #define PROC_CON "Processing Control"
71 #define PROC_LOG "Processing Log"
75 #define PINFILES "Parent Input Files"
76 #define PPNAME "Parent Product Name"
77 #define DTYPE "Data Type"
78 #define NSAMP "Parent Pixels per Scan Line"
79 #define NREC "Parent Number of Scan Lines"
80 #define SNCNTR "Scene Center Scan Line"
81 #define NFREC "Filled Scan Lines"
82 #define FFLAG1 "FF Missing Frames"
83 #define FFLAG2 "SDPS Missing Frames"
84 #define L2BRS_PCTFLAG "Flag Percentages"
87 #define STIME "Start Time"
88 #define END_TIME "End Time"
89 #define CTIME "Scene Center Time"
90 #define NTIME "Node Crossing Time"
91 #define SYEAR "Start Year"
92 #define SDAY "Start Day"
93 #define SMSEC "Start Millisec"
94 #define EYEAR "End Year"
95 #define EDAY "End Day"
96 #define EMSEC "End Millisec"
97 #define SNODE "Start Node"
98 #define ENODE "End Node"
99 #define ORBNUM "Orbit Number"
100 #define NORAD1 "NORAD Line 1"
101 #define NORAD2 "NORAD Line 2"
104 #define LATUNITS "Latitude Units"
105 #define LATUNITS_VAL "degrees North"
106 #define LONUNITS "Longitude Units"
107 #define LONUNITS_VAL "degrees East"
108 #define CLAT "Scene Center Latitude"
109 #define CLON "Scene Center Longitude"
110 #define SCSOL_Z "Scene Center Solar Zenith"
111 #define ULLAT "Upper Left Latitude"
112 #define ULLON "Upper Left Longitude"
113 #define URLAT "Upper Right Latitude"
114 #define URLON "Upper Right Longitude"
115 #define LLLAT "Lower Left Latitude"
116 #define LLLON "Lower Left Longitude"
117 #define LRLAT "Lower Right Latitude"
118 #define LRLON "Lower Right Longitude"
119 #define NLAT "Northernmost Latitude"
120 #define SLAT "Southernmost Latitude"
121 #define WLON "Westernmost Longitude"
122 #define ELON "Easternmost Longitude"
123 #define STCLAT "Start Center Latitude"
124 #define STCLON "Start Center Longitude"
125 #define ENDCLAT "End Center Latitude"
126 #define ENDCLON "End Center Longitude"
127 #define NODEL "Orbit Node Longitude"
130 #define PARAM "Parameter"
131 #define PARAM_VAL "Chlorophyll a concentration"
132 #define UNITS "Units"
133 #define UNITS_VAL "mg m^-3"
134 #define PX_START "Start Pixel"
135 #define PX_END "End Pixel"
136 #define LAC_PX_ST "LAC Pixel Start Number"
137 #define PX_SUBSAMP "Pixel Subsampling Rate"
138 #define LAC_PX_SUBSAMP "LAC Pixel Subsampling"
139 #define PX_NUM "Pixels per Scan Line"
140 #define SC_START "Start Scan"
141 #define SC_END "End Scan"
142 #define SC_SUBSAMP "Scan Subsampling Rate"
143 #define SC_NUM "Number of Scan Lines"
144 #define PX_LL_NUM "Pixel Coordinates"
145 #define SC_LL_NUM "Scan Coordinates"
146 #define SC_TYPE "Scaling"
147 #define SC_TY_VAL "logarithmic"
148 #define SC_EQN "Scaling Equation"
149 #define SC_EQN_VAL "Base**((Slope*brs_data) + Intercept) = chlorophyll a"
151 #define BASE_VAL 10.0
152 #define SLOPE "Slope"
153 #define SLOPE_VAL 0.015
154 #define INTERCEPT "Intercept"
155 #define INTERCEPT_VAL -2.0
156 #define SCALE_OFF "Scale Offset"
159 #define PX_LL_FIRST "px_ll_first"
160 #define PX_LL_FST_ATTR "Lat/lon of pixels along first scan line"
161 #define PX_LL_LAST "px_ll_last"
162 #define PX_LL_LST_ATTR "Lat/lon of pixels along last scan line"
163 #define SC_LL_FIRST "sc_ll_first"
164 #define SC_LL_FST_ATTR "Lat/lon of starts of scan lines"
165 #define SC_LL_LAST "sc_ll_last"
166 #define SC_LL_LST_ATTR "Lat/lon of ends of scan lines"
169 #define NTILTS "ntilts"
170 #define NTILTS_NAME "Number of scene tilt states"
171 #define T_FLAGS "tilt_flags"
172 #define T_FLAGS_NAME "Tilt indicators"
173 #define T_RANGES "tilt_ranges"
174 #define T_RANGES_NAME "Scan-line number ranges of scene tilt states"
175 #define T_LATS "tilt_lats"
176 #define T_LATS_NAME "Latitudes of tilt-range scan line end points"
177 #define T_LONS "tilt_lons"
178 #define T_LONS_NAME "Longitudes of tilt-range scan line end points"
181 #define ORBVEC "orb_vec"
182 #define ORBVEC_NAME "Orbit position vector at scan line time"
183 #define ORBVEC_UNITS "kilometers"
184 #define LVERT "l_vert"
185 #define LVERT_NAME "Local vertical vector in ECEF frame"
186 #define SUNREF "sun_ref"
187 #define SUNREF_NAME "Reference Sun vector in ECEF frame"
188 #define ATTANG "att_ang"
189 #define ATTANG_NAME "Computed yaw, roll, pitch"
190 #define SENMAT "sen_mat"
191 #define SENMAT_NAME "ECEF-to-sensor-frame matrix"
192 #define SCANELL "scan_ell"
193 #define SCANELL_NAME "Scan-track ellipse coefficients"
194 #define NFLAG "nflag"
195 #define NFLAG_NAME "Navigation flags"
196 #define CNTLPTCOLS "cntl_pt_cols"
197 #define CNTLPTCOLS_NAME "Control point column values"
199 #define CNTLPTLAT "latitude"
200 #define CNTLPTLAT_NAME "Latitude values"
201 #define CNTLPTLON "longitude"
202 #define CNTLPTLON_NAME "Longitude values"
210 l2_prod *l2_str, meta_l2Type *meta_l2);
211 int32
put_l2brs(
char *l2brs_path,
char *replaces,
char *ptime,
char *infiles,
212 int32 px_start, int32 px_end, int32 px_subsamp, int32 brs_nsamp,
213 int32 sc_start, int32 sc_end, int32 sc_subsamp, int32 brs_nrec,
214 char *l2brs_name, float32 *l2brs_data, int32 *l2brs_flags,
215 char *
flag_names, int32_t * l2_bits,
char *mskflg,
unsigned char *palette,
216 float32 *px_ll_first, float32 *px_ll_last, float32 *sc_ll_first,
217 float32 *sc_ll_last,
char *proc_con,
int16 syear,
int16 sday,
219 int32 nrec, int32 nsamp, int32 ntilts,
short *tilt_flags,
221 meta_l2Type *meta_l2, product_table_t *ptable_rec,
const char* oformat, int32 apply_pal);
223 void write_attrs(int32 sdfid,
char *l2brs_path,
char *replaces,
char *ptime,
224 char *infiles, int32 px_start, int32 px_end, int32 px_subsamp,
225 int32 brs_nsamp, int32 sc_start, int32 sc_end, int32 sc_subsamp,
226 int32 brs_nrec,
char *l2brs_name,
char *proc_con,
int16 syear,
228 char *
dtype, int32 nrec, int32 nsamp, meta_l2Type *meta_l2);
230 int32
write_image(
char *l2brs_path,
unsigned char *l2brs_data, int32 brs_nsamp,
231 int32 brs_nrec, uint8 *palette);
234 int32 *dimsizes, int32 *
start,
void *buf);
239 int32
write_nav_sets(int32 fid, int32 sdfid, int32 brs_nrec, int32 brs_nsamp,
void write_attrs(int32 sdfid, char *l2brs_path, char *replaces, char *ptime, char *infiles, int32 px_start, int32 px_end, int32 px_subsamp, int32 brs_nsamp, int32 sc_start, int32 sc_end, int32 sc_subsamp, int32 brs_nrec, char *l2brs_name, char *proc_con, int16 syear, int16 sday, int32 smsec, int16 eyear, int16 eday, int32 emsec, char *dtype, int32 nrec, int32 nsamp, meta_l2Type *meta_l2)
int l2brsgen_read_options(clo_optionList_t *list, int argc, char *argv[], l2_prod *l2_str, meta_l2Type *meta_l2)
int32 put_l2brs(char *l2brs_path, char *replaces, char *ptime, char *infiles, int32 px_start, int32 px_end, int32 px_subsamp, int32 brs_nsamp, int32 sc_start, int32 sc_end, int32 sc_subsamp, int32 brs_nrec, char *l2brs_name, float32 *l2brs_data, int32 *l2brs_flags, char *flag_names, int32_t *l2_bits, char *mskflg, unsigned char *palette, float32 *px_ll_first, float32 *px_ll_last, float32 *sc_ll_first, float32 *sc_ll_last, char *proc_con, int16 syear, int16 sday, int32 smsec, int16 eyear, int16 eday, int32 emsec, char *dtype, int32 nrec, int32 nsamp, int32 ntilts, short *tilt_flags, int16 *tilt_ranges, int16 *cntl_pt_lat, int16 *cntl_pt_lon, meta_l2Type *meta_l2, product_table_t *ptable_rec, const char *oformat, int32 apply_pal)
int32 write_nav_sets(int32 fid, int32 sdfid, int32 brs_nrec, int32 brs_nsamp, int16 *cntl_pt_lat, int16 *cntl_pt_lon)
int32 write_image(char *l2brs_path, unsigned char *l2brs_data, int32 brs_nsamp, int32 brs_nrec, uint8 *palette)
list(APPEND LIBS ${NETCDF_LIBRARIES}) find_package(GSL REQUIRED) include_directories($
int32 write_SDS(int32 sdfid, char *label, int32 ntype, int32 rank, int32 *dimsizes, int32 *start, void *buf)
int l2brsgen_init_options(clo_optionList_t *list)
Extra metadata that will be written to the HDF4 file l2prod rank
int32 write_tilt_sets(int32 fid, int32 sdfid, int32 ntilts, int16 *tilt_flags, int16 *tilt_ranges)