source: trunk/src/STCalibration.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.8 KB
Line 
1//
2// C++ Interface: STCalibration
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 ASAPSTCALIBRATION_H
13#define ASAPSTCALIBRATION_H
14
15#include <casa/aips.h>
16#include <casa/Arrays/Vector.h>
17#include <casa/BasicSL/String.h>
18#include <casa/Utilities/CountedPtr.h>
19#include <casa/Logging/LogIO.h>
20#include <casa/Containers/Record.h>
21
22#include <scimath/Mathematics/InterpolateArray1D.h>
23
24#include "Scantable.h"
25#include "STDefs.h"
26#include "STApplyTable.h"
27#include "STSelector.h"
28
29namespace asap {
30
31/**
32 * Calibration operations on Scantable objects
33 * @author TakeshiNakazato
34 */
35class STCalibration {
36public:
37  STCalibration(casacore::CountedPtr<Scantable> &s, const casacore::String target_column);
38
39  void calibrate();
40
41  virtual ~STCalibration() {;}
42
43  void save(casacore::String name) {applytable_->save(name);}
44  //const STApplyTable &applytable() {return *applytable_;}
45  const casacore::CountedPtr<STApplyTable> applytable() {return applytable_;}
46
47  void setOption(casacore::Record &rec) {options_ = rec;}
48
49protected:
50  virtual void setupSelector(const STSelector &sel) = 0;
51  virtual void fillCalTable();
52  virtual void appenddata(casacore::uInt scanno, casacore::uInt cycleno,
53                          casacore::uInt beamno, casacore::uInt ifno, casacore::uInt polno,
54                          casacore::uInt freqid, casacore::Double time, casacore::Float elevation,
55                          const casacore::Vector<casacore::Float> &any_data,
56                          const casacore::Vector<casacore::uChar> &channel_flag) = 0;
57
58  STSelector sel_;
59  casacore::CountedPtr<Scantable> scantable_;
60  casacore::CountedPtr<STApplyTable> applytable_;
61  casacore::LogIO os_;
62  casacore::Record options_;
63  const casacore::String target_column_;
64};
65 
66}
67#endif
Note: See TracBrowser for help on using the repository browser.