source: trunk/external/atnf/PKSIO/PKSSDwriter.h@ 1406

Last change on this file since 1406 was 1399, checked in by Malte Marquarding, 17 years ago

Mark C added brightness unit to getHeader()

File size: 4.5 KB
Line 
1//#---------------------------------------------------------------------------
2//# PKSSDwriter.h: Class to write Parkes multibeam data to an SDFITS file.
3//#---------------------------------------------------------------------------
4//# Copyright (C) 2000-2007
5//# Associated Universities, Inc. Washington DC, USA.
6//#
7//# This library is free software; you can redistribute it and/or modify it
8//# under the terms of the GNU Library General Public License as published by
9//# the Free Software Foundation; either version 2 of the License, or (at your
10//# option) any later version.
11//#
12//# This library is distributed in the hope that it will be useful, but WITHOUT
13//# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14//# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
15//# License for more details.
16//#
17//# You should have received a copy of the GNU Library General Public License
18//# along with this library; if not, write to the Free Software Foundation,
19//# Inc., 675 Massachusetts Ave, Cambridge, MA 02139, USA.
20//#
21//# Correspondence concerning AIPS++ should be addressed as follows:
22//# Internet email: aips2-request@nrao.edu.
23//# Postal address: AIPS++ Project Office
24//# National Radio Astronomy Observatory
25//# 520 Edgemont Road
26//# Charlottesville, VA 22903-2475 USA
27//#
28//# $Id: PKSSDwriter.h,v 19.14 2007/11/12 03:37:56 cal103 Exp $
29//# Original: 2000/07/21, Mark Calabretta, ATNF
30//#---------------------------------------------------------------------------
31
32#ifndef ATNF_PKSSDWRITER_H
33#define ATNF_PKSSDWRITER_H
34
35#include <atnf/PKSIO/PKSwriter.h>
36#include <atnf/PKSIO/SDFITSwriter.h>
37
38#include <casa/aips.h>
39#include <casa/Arrays/Vector.h>
40#include <casa/Arrays/Matrix.h>
41#include <casa/BasicSL/Complex.h>
42#include <casa/BasicSL/String.h>
43
44// <summary>
45// Class to write Parkes multibeam data to an SDFITS file.
46// </summary>
47
48#include <casa/namespace.h>
49class PKSSDwriter : public PKSwriter
50{
51 public:
52 // Default constructor.
53 PKSSDwriter();
54
55 // Destructor.
56 virtual ~PKSSDwriter();
57
58 // Create the SDFITS file and write static data.
59 virtual Int create(
60 const String sdName,
61 const String observer,
62 const String project,
63 const String antName,
64 const Vector<Double> antPosition,
65 const String obsMode,
66 const String bunit,
67 const Float equinox,
68 const String dopplerFrame,
69 const Vector<uInt> nChan,
70 const Vector<uInt> nPol,
71 const Vector<Bool> haveXPol,
72 const Bool haveBase);
73
74 // Write the next data record.
75 virtual Int write(
76 const Int scanNo,
77 const Int cycleNo,
78 const Double mjd,
79 const Double interval,
80 const String fieldName,
81 const String srcName,
82 const Vector<Double> srcDir,
83 const Vector<Double> srcPM,
84 const Double srcVel,
85 const String obsMode,
86 const Int IFno,
87 const Double refFreq,
88 const Double bandwidth,
89 const Double freqInc,
90 const Double restFreq,
91 const Vector<Float> tcal,
92 const String tcalTime,
93 const Float azimuth,
94 const Float elevation,
95 const Float parAngle,
96 const Float focusAxi,
97 const Float focusTan,
98 const Float focusRot,
99 const Float temperature,
100 const Float pressure,
101 const Float humidity,
102 const Float windSpeed,
103 const Float windAz,
104 const Int refBeam,
105 const Int beamNo,
106 const Vector<Double> direction,
107 const Vector<Double> scanRate,
108 const Vector<Float> tsys,
109 const Vector<Float> sigma,
110 const Vector<Float> calFctr,
111 const Matrix<Float> baselin,
112 const Matrix<Float> basesub,
113 const Matrix<Float> &spectra,
114 const Matrix<uChar> &flagged,
115 const Complex xCalFctr,
116 const Vector<Complex> &xPol);
117
118 // Write a history record.
119 virtual Int history(const String text);
120 virtual Int history(const char *text);
121
122 // Close the SDFITS file.
123 virtual void close();
124
125 private:
126 // Masks declaration in parent class.
127 Vector<uInt> cHaveXPol;
128
129 SDFITSwriter cSDwriter;
130};
131
132#endif
Note: See TracBrowser for help on using the repository browser.