Source
232
232
// Local implementation of selfSolveOne (generalized signature)
233
233
// virtual void selfSolveOne(VisBuffGroupAcc& vbga);
234
234
virtual void selfSolveOne(SDBList&);
235
235
236
236
virtual void solveOneVB(const VisBuffer&);
237
237
238
238
// SolveDataBuffer is being phased out; we no longer support it.
239
239
// virtual void solveOneSDB(const SolveDataBuffer&);
240
240
241
241
virtual casacore::Bool& zeroRates() { return zeroRates_; }
242
-
virtual casacore::Bool& globalSolve() { return globalSolve_; }
242
+
virtual casacore::Bool& globalSolve() { return globalSolve_; }
243
+
virtual casacore::Int& weightFactor() { return weightFactor_; }
244
+
virtual casacore::Array<casacore::Double>& delayWindow() { return delayWindow_; }
245
+
virtual casacore::Array<casacore::Double>& rateWindow() { return rateWindow_; }
246
+
243
247
protected:
244
248
245
249
// phase, delay, rate
246
250
// TBD: Need to cater for parameter opt-out (e.g., no rate solve, etc.)
247
251
virtual casacore::Int nPar() { return 6; };
248
252
249
253
// Jones matrix elements are NOT trivial
250
254
virtual casacore::Bool trivialJonesElem() { return false; };
251
255
252
256
// dJ/dp are trivial
264
268
265
269
private:
266
270
267
271
// Pointer to CTRateAwareTimeInterp1 factory method
268
272
// This ensures the rates are incorporated into the time-dep interpolation
269
273
virtual CTTIFactoryPtr cttifactoryptr() { cout << "Using Rate-Aware CTTIFactory!" << endl; return &CTRateAwareTimeInterp1::factory; };
270
274
void calculateSNR(casacore::Int, DelayRateFFT);
271
275
272
276
casacore::Bool zeroRates_;
273
277
casacore::Bool globalSolve_;
278
+
casacore::Array<casacore::Double> delayWindow_;
279
+
casacore::Array<casacore::Double> rateWindow_;
280
+
casacore::Int weightFactor_;
274
281
};
275
282
276
283
277
284
} //# NAMESPACE CASA - END
278
285
279
286
#endif