source: branches/polybatch/external/atnf/PKSIO/SDFITSwriter.h@ 2897

Last change on this file since 2897 was 1720, checked in by Malte Marquarding, 15 years ago

Update from livedata CVS repository

File size: 3.0 KB
Line 
1//#---------------------------------------------------------------------------
2//# SDFITSwriter.h: ATNF CFITSIO interface class for SDFITS output.
3//#---------------------------------------------------------------------------
4//# livedata - processing pipeline for single-dish, multibeam spectral data.
5//# Copyright (C) 2000-2009, Australia Telescope National Facility, CSIRO
6//#
7//# This file is part of livedata.
8//#
9//# livedata is free software: you can redistribute it and/or modify it under
10//# the terms of the GNU General Public License as published by the Free
11//# Software Foundation, either version 3 of the License, or (at your option)
12//# any later version.
13//#
14//# livedata is distributed in the hope that it will be useful, but WITHOUT
15//# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
16//# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
17//# more details.
18//#
19//# You should have received a copy of the GNU General Public License along
20//# with livedata. If not, see <http://www.gnu.org/licenses/>.
21//#
22//# Correspondence concerning livedata may be directed to:
23//# Internet email: mcalabre@atnf.csiro.au
24//# Postal address: Dr. Mark Calabretta
25//# Australia Telescope National Facility, CSIRO
26//# PO Box 76
27//# Epping NSW 1710
28//# AUSTRALIA
29//#
30//# http://www.atnf.csiro.au/computing/software/livedata.html
31//# $Id: SDFITSwriter.h,v 19.10 2009-09-29 07:33:39 cal103 Exp $
32//#---------------------------------------------------------------------------
33//# Original: 2000/07/24, Mark Calabretta, ATNF
34//#---------------------------------------------------------------------------
35
36#ifndef ATNF_SDFITSWRITER_H
37#define ATNF_SDFITSWRITER_H
38
39#include <atnf/PKSIO/MBrecord.h>
40#include <atnf/PKSIO/PKSmsg.h>
41
42#include <fitsio.h>
43
44using namespace std;
45
46// <summary>
47// ATNF CFITSIO interface class for SDFITS output.
48// </summary>
49
50class SDFITSwriter : public PKSmsg
51{
52 public:
53 // Default constructor.
54 SDFITSwriter();
55
56 // Destructor.
57 virtual ~SDFITSwriter();
58
59 // Create a new SDFITSwriter and store static data.
60 int create(
61 char* sdname,
62 char* observer,
63 char* project,
64 char* telescope,
65 double antPos[3],
66 char* obsMode,
67 char* bunit,
68 float equinox,
69 char* dopplerFrame,
70 int nIF,
71 int* nChan,
72 int* nPol,
73 int* haveXPol,
74 int haveBase,
75 int extraSysCal);
76
77 // Store time-variable data.
78 int write(MBrecord &record);
79
80 // Write a history record.
81 int history(char* text);
82
83 // Close the SDFITS file.
84 void close();
85
86 // Close and delete the SDFITS file.
87 void deleteFile();
88
89 private:
90 fitsfile *cSDptr;
91 int cDoTDIM, cDoXPol, cExtraSysCal, cHaveBase, *cHaveXPol, cIsMX,
92 *cNChan, cNIF, *cNPol, cStatus;
93 long cRow;
94
95 // Message handling.
96 char cMsg[256];
97 virtual void logMsg(const char *msg = 0x0);
98};
99
100#endif
Note: See TracBrowser for help on using the repository browser.