Go to the documentation of this file.
8 free((
void *) l2rec->data);
26 if(
l1rec->uncertainty) {
27 printf(
"ERROR: %s:%d - Why is l1rec->uncertainty not NULL", __FILE__, __LINE__);
31 if(
input->proc_uncertainty){
33 printf(
"-E- %s line %d: Unable to calculate the uncertainty for aer_opt other than -17 or -18.\n", __FILE__, __LINE__);
37 l1rec->uncertainty= (uncertainty_t*) malloc(
sizeof (uncertainty_t));
40 printf(
"-E- %s line %d: Unable to allocate error record.\n", __FILE__, __LINE__);
45 int32_t len = 5 *
sizeof (int32_t) *
npix
46 + 7 *
sizeof (
float)*
npix
49 if(
l1rec->uncertainty){
51 if(
input->proc_uncertainty==2)
57 len = len / 4 * 4 + 4;
59 if ((
p = (
char *) malloc(len)) ==
NULL) {
61 "-E- %s line %d: Memory allocation failure.\n",
70 l2rec->num_iter = (int32_t *)
p;
71 p +=
sizeof(int32_t)*
npix;
72 l2rec->aermodmin = (int32_t *)
p;
73 p +=
sizeof(int32_t)*
npix;
74 l2rec->aermodmax = (int32_t *)
p;
75 p +=
sizeof(int32_t)*
npix;
76 l2rec->aermodmin2 = (int32_t *)
p;
77 p +=
sizeof(int32_t)*
npix;
78 l2rec->aermodmax2 = (int32_t *)
p;
79 p +=
sizeof(int32_t)*
npix;
81 l2rec->chl = (
float *)
p;
83 l2rec->eps = (
float *)
p;
85 l2rec->chi2 = (
float *)
p;
87 l2rec->aerratio = (
float *)
p;
89 l2rec->aerratio2 = (
float *)
p;
91 l2rec->aerindex = (
float *)
p;
95 l2rec->taua = (
float *)
p;
97 l2rec->La = (
float *)
p;
99 l2rec->Lw = (
float *)
p;
101 l2rec->nLw = (
float *)
p;
104 l2rec->brdf = (
float *)
p;
106 l2rec->Rrs = (
float *)
p;
108 if(
l1rec->uncertainty){
109 l2rec->Rrs_unc = (
float *)
p;
112 l2rec->Rrs_unc =
NULL;
114 l2rec->outband_correction = (
float *)
p;
116 l2rec->a = (
float *)
p;
118 l2rec->bb = (
float *)
p;
120 l2rec->chl_unc = (
float *)
p;
123 if(
input->proc_uncertainty==2){
124 l2rec->covariance_matrix = (
float *)
p;
127 l2rec->covariance_matrix =
NULL;
130 if ((len - (int32_t) (
p - l2rec->data)) < 0) {
131 printf(
"%s Line %d: bad allocation on L2 record\n", __FILE__, __LINE__);
138 l2rec->Rrs_raman =
NULL;
141 printf(
"Allocated %d bytes in L2 record.\n", (
int) (
p - l2rec->data));
void free_l2(l2str *l2rec)
int alloc_l2(l1str *l1rec, l2str *l2rec)
int bindex_get(int32_t wave)
int alloc_uncertainty(int32_t nbands, int32_t nbands_ac, int32_t npix, uncertainty_t *uncertainty)