source: branches/plotter2/src/STCalSkyTable.h@ 3040

Last change on this file since 3040 was 2742, checked in by Takeshi Nakazato, 12 years ago

New Development: No

JIRA Issue: Yes CAS-4770

Ready for Test: Yes

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...

Defined python interface for calibration that supports both
on-the-fly and interferometry-style (generate caltable and apply)
calibration.

File size: 1.9 KB
Line 
1//
2// C++ Interface: STCalSkyTable
3//
4// Description:
5//
6// ApplyTable for sky calibration.
7//
8// Author: Takeshi Nakazato <takeshi.nakazato@nao.ac.jp> (C) 2012
9//
10// Copyright: See COPYING file that comes with this distribution
11//
12//
13#ifndef ASAP_CALSKY_TABLE_H
14#define ASAP_CALSKY_TABLE_H
15
16#include <casa/Arrays/Vector.h>
17#include <casa/Arrays/Matrix.h>
18#include <tables/Tables/ArrayColumn.h>
19#include <tables/Tables/ScalarColumn.h>
20
21#include "Scantable.h"
22#include "STApplyTable.h"
23
24namespace asap {
25
26/**
27ApplyTable for sky calibration
28
29@author Takeshi Nakazato
30@date $Date:$
31@version $Revision:$
32*/
33class STCalSkyTable : public STApplyTable {
34public:
35 STCalSkyTable() {;}
36 STCalSkyTable(const Scantable& parent, const casa::String &caltype);
37 STCalSkyTable(const casa::String &name);
38
39 virtual ~STCalSkyTable();
40
41 void setup();
42 void attachOptionalColumns();
43
44 const casa::String& name() const {return name_;}
45
46 void setdata(casa::uInt irow, casa::uInt scannos, casa::uInt cycleno,
47 casa::uInt beamno, casa::uInt ifno, casa::uInt polno,
48 casa::uInt freqid, casa::Double time, casa::Float elevation,
49 casa::Vector<casa::Float> spectra);
50 void appenddata(casa::uInt scanno, casa::uInt cycleno, casa::uInt beamno,
51 casa::uInt ifno, casa::uInt polno, casa::uInt freqid,
52 casa::Double time, casa::Float elevation,
53 casa::Vector<casa::Float> spectra);
54
55 casa::Vector<casa::Float> getElevation() {return elCol_.getColumn();}
56 casa::Matrix<casa::Float> getSpectra() {return spectraCol_.getColumn();}
57 casa::uInt nchan(casa::uInt ifno);
58
59 //casa::Vector<casa::Double> getBaseFrequency(casa::uInt whichrow);
60
61private:
62 static const casa::String name_;
63 const casa::String caltype_;
64 casa::ArrayColumn<casa::Float> spectraCol_;
65 casa::ScalarColumn<casa::Float> elCol_;
66};
67
68}
69
70#endif
Note: See TracBrowser for help on using the repository browser.