source: trunk/src/Calibrator.h@ 3145

Last change on this file since 3145 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.