source: trunk/src/Calibrator.h @ 3106

Last change on this file since 3106 was 3106, checked in by Takeshi Nakazato, 8 years ago

New Development: No

JIRA Issue: No

Ready for Test: Yes/No?

Interface Changes: Yes/No?

What Interface Changed: Please list interface changes

Test Programs: List test programs

Put in Release Notes: Yes/No?

Module(s): Module Names change impacts.

Description: Describe your changes here...


Check-in asap modifications from Jim regarding casacore namespace conversion.

File size: 1.2 KB
Line 
1//
2// C++ Interface: Calibrator
3//
4// Description:
5//
6//
7// Author: Takeshi Nakazato <takeshi.nakazato@nao.ac.jp>, (C) 2012
8//
9// Copyright: See COPYING file that comes with this distribution
10//
11//
12#ifndef ASAP_CALIBRATOR_H
13#define ASAP_CALIBRATOR_H
14
15#include <memory>
16
17#include <casa/aips.h>
18#include <casa/Arrays/Vector.h>
19#include <casa/BasicSL/String.h>
20#include <casa/Utilities/CountedPtr.h>
21
22namespace asap {
23
24/**
25 * Base class for calibration operation
26 * @author TakeshiNakazato
27 */
28class Calibrator {
29public:
30  Calibrator();
31  Calibrator(unsigned int nchan);
32
33  virtual ~Calibrator();
34
35  void setSource(casacore::Vector<casacore::Float> &v);
36  void setReference(casacore::Vector<casacore::Float> &v);
37  void setReference2(casacore::Vector<casacore::Float> &v);
38  void setScaler(casacore::Vector<casacore::Float> &v);
39
40  const casacore::Vector<casacore::Float> getCalibrated();
41
42  virtual void calibrate() = 0;
43
44protected:
45  void initStorage();
46  void freeStorage();
47  void set(casacore::Float *p, casacore::Vector<casacore::Float> &v);
48
49  unsigned int nchan_;
50  unsigned int nchanS_;
51
52  casacore::Float *source_;
53  casacore::Float *ref_;
54  casacore::Float *ref2_;
55  casacore::Float *scaler_;
56  casacore::Float *calibrated_;
57};
58
59}
60#endif
Note: See TracBrowser for help on using the repository browser.