Source
xxxxxxxxxx
247
247
// virtual void solveOneSDB(const SolveDataBuffer&);
248
248
249
249
virtual casacore::Bool& zeroRates() { return zeroRates_; }
250
250
virtual casacore::Bool& globalSolve() { return globalSolve_; }
251
251
virtual casacore::Array<casacore::Double>& delayWindow() { return delayWindow_; }
252
252
virtual casacore::Array<casacore::Double>& rateWindow() { return rateWindow_; }
253
253
254
254
// Apply reference antenna
255
255
virtual void applyRefAnt();
256
256
257
+
virtual casacore::Int& refant() { return refant_; }
258
+
257
259
protected:
258
260
259
261
// phase, delay, rate
260
262
// TBD: Need to cater for parameter opt-out (e.g., no rate solve, etc.)
261
263
virtual casacore::Int nPar() { return 6; };
262
264
263
265
// Jones matrix elements are NOT trivial
264
266
virtual casacore::Bool trivialJonesElem() { return false; };
265
267
266
268
// dJ/dp are trivial
276
278
277
279
278
280
279
281
private:
280
282
281
283
// Pointer to CTRateAwareTimeInterp1 factory method
282
284
// This ensures the rates are incorporated into the time-dep interpolation
283
285
virtual CTTIFactoryPtr cttifactoryptr() { return &CTRateAwareTimeInterp1::factory; };
284
286
void calculateSNR(casacore::Int, DelayRateFFT);
285
287
288
+
casacore::Int refant_; // Override
286
289
casacore::Bool zeroRates_;
287
290
casacore::Bool globalSolve_;
288
291
casacore::Array<casacore::Double> delayWindow_;
289
292
casacore::Array<casacore::Double> rateWindow_;
290
293
};
291
294
292
295
293
296
} //# NAMESPACE CASA - END
294
297
295
298
#endif