Commits
163 163 | // pick the appropriate element of the Mueller Matrix (see note on |
164 164 | // this for details). Without reading the note/understanding, |
165 165 | // fiddle with this logic at your own risk (can easily lead to a |
166 166 | // lot of grief. --Sanjay). |
167 167 | // |
168 168 | //timer_p.mark(); |
169 169 | |
170 170 | if (wVal > 0.0) |
171 171 | { |
172 172 | cfcell=&(*(cfb.getCFCellPtr(fndx,wndx,mNdx[ipol][mRow]))); |
173 - | CFCell& cfO=cfb(fndx,wndx,mNdx[ipol][mRow]); |
174 - | convFuncV = &(*cfO.getStorage()); |
175 - | support(0)=support(1)=cfO.xSupport_p; |
176 - | // convFuncV=&(*(cfb.getCFCellPtr(fndx,wndx,mNdx[ipol][mRow])->getStorage()));//->getStorage(Dummy); |
177 - | // if (mNdx[ipol][mRow] != ipol) |
178 - | // cerr << "Indexes+: " << fndx << " " << wndx << " " << mNdx[ipol][mRow] << " " << ipol << " " << mRow << endl; |
173 + | // CFCell& cfO=cfb(fndx,wndx,mNdx[ipol][mRow]); |
174 + | // convFuncV = &(*cfO.getStorage()); |
175 + | // support(0)=support(1)=cfO.xSupport_p; |
179 176 | } |
180 177 | else |
181 178 | { |
182 179 | cfcell=&(*(cfb.getCFCellPtr(fndx,wndx,conjMNdx[ipol][mRow]))); |
183 - | CFCell& cfO=cfb(fndx,wndx,conjMNdx[ipol][mRow]); |
184 - | convFuncV = &(*cfO.getStorage()); |
185 - | support(0)=support(1)=cfO.xSupport_p; |
186 - | // convFuncV=&(*(cfb.getCFCellPtr(fndx,wndx,conjMNdx[ipol][mRow])->getStorage()));//->getStorage(Dummy); |
187 - | // if (conjMNdx[ipol][mRow] != ipol) |
188 - | // cerr << "Indexes-: " << fndx << " " << wndx << " " << conjMNdx[ipol][mRow] << " " << ipol << " " << mRow << endl; |
180 + | // CFCell& cfO=cfb(fndx,wndx,conjMNdx[ipol][mRow]); |
181 + | // convFuncV = &(*cfO.getStorage()); |
182 + | // support(0)=support(1)=cfO.xSupport_p; |
189 183 | } |
190 184 | |
191 - | |
192 - | // cerr << getpid() << " " << cfb.getCFCacheDir() << " " << cfcell->fileName_p << " " << cfcell->freqValue_p << endl; |
193 - | |
185 + | convFuncV = &(*cfcell->getStorage()); |
186 + | support(0)=support(1)=cfcell->xSupport_p; |
194 187 | |
195 188 | // Get the pointer to the CFCell storage (a single CF) |
196 189 | // if ((convFuncV = &(*cfcell->getStorage())) == NULL) |
197 190 | if (convFuncV == NULL) |
198 191 | throw(SynthesisFTMachineError("cfcell->getStorage() == null")); |
199 192 | |
200 193 | // Load the CF if it not already loaded. If a new CF is loaded, |
201 194 | // check if it needs to be rotated. |
202 195 | if (convFuncV->shape().product() == 0) |
203 196 | { |
216 209 | } |
217 210 | convFuncV = &(*cfcell->getStorage()); |
218 211 | } |
219 212 | |
220 213 | //cfShape.reference(cfcell->cfShape_p); |
221 214 | cfShape.assign(convFuncV->shape().asVector()); |
222 215 | |
223 216 | // Always extract the Mueller element value from mNdx. mNdx |
224 217 | // carries the direct mapping between Mueller Matrix and |
225 218 | // Visibility vector. |
226 - | muellerElement=cfb.getCFCellPtr(fndx,wndx,mNdx[ipol][mRow])->muellerElement_p; |
219 + | // muellerElement=cfb.getCFCellPtr(fndx,wndx,mNdx[ipol][mRow])->muellerElement_p; |
220 + | muellerElement=cfcell->muellerElement_p; |
227 221 | |
228 222 | // cfShape.assign(cfcell->cfShape_p); |
229 223 | //runTimeG1_p += timer_p.real(); |
230 224 | |
231 225 | |
232 226 | return convFuncV->getStorage(Dummy); |
233 227 | }; |
234 228 | |
235 229 | template <class T> |
236 230 | void AWVisResampler::XInnerLoop(const Int *scaledSupport, const Float* scaledSampling, |