Go to the documentation of this file.
4 int rd_sdr_scan(
int iscn, ctl_struc *ctl, sdr_info_struc *sdr_info,
27 int ipix, ibnd, ilin, idet;
28 static float *rhos =
NULL;
33 in_rec->ham_side = *(sdr_info->ham_side + iscn);
37 if (
rd_geo_scan(iscn, sdr_info, in_rec) != 0)
return 1;
41 switch (ctl->l2_use) {
48 printf(
"%s, %d: call to gen_const_rad_scn failed on line %d\n",
49 __FILE__, __LINE__, iscn);
57 if (ctl->rhos_use == 1)
59 in_rec->ndet_scan, &rhos) != 0)
return 1;
65 for (idet = 0; idet < in_rec->ndet_scan; idet++) {
66 ilin = idet + iscn * in_rec->ndet_scan;
67 if (
readL2(&(in_rec->l2_str), 0, ilin, -1,
NULL) != 0) {
68 printf(
"%s, %d: call to readL2 failed on line %d\n",
69 __FILE__, __LINE__, ilin);
73 for (ipix = 0; ipix < in_rec->npix; ipix++) {
75 rad = in_rec->l2_str.l2_data[ibnd][ipix];
76 if ((rad == in_rec->l2_str.bv_unscaled[ibnd]) ||
78 *(in_rec->bnd_q[ibnd] + idet * in_rec->npix + ipix) = 2;
79 *(in_rec->bnd_lt[ibnd] + idet * in_rec->npix + ipix) = 0.;
81 *(in_rec->bnd_lt[ibnd] + idet * in_rec->npix + ipix) =
83 *(in_rec->bnd_q[ibnd] + idet * in_rec->npix + ipix) = 0;
91 if (ctl->rhos_use == 1) {
92 if (
rhos_to_lt(ctl->rhos_opt, &rhos, in_rec, idet, sdr_info) != 0)
100 printf(
"%s, %d: call to gen_const_rad_scn failed on line %d\n",
101 __FILE__, __LINE__, iscn);
108 printf(
"%s: Bad Lt input source, Exiting\n",
int rd_geo_scan(int iscn, sdr_info_struc *sdr_info, in_rec_struc *in_rec)
int rhos_to_lt(int rhos_opt, float **rhos, in_rec_struc *in_rec, int idet, sdr_info_struc *sdr_info)
int gen_const_rad_scn(sdr_info_struc *sdr_info, int st_bnd, in_rec_struc *in_rec)
int rd_rhos_scan(char *file, int npix, int iscn, int ndet, float **rhos)
int32_t readL2(l2_prod *l2_str, int32_t ifile, int32_t recnum, int32_t iprod, unsigned char *scan_in_rowgroup)
int rd_sdr_scan(int iscn, ctl_struc *ctl, sdr_info_struc *sdr_info, in_rec_struc *in_rec)