source: trunk/external/atnf/PKSIO/SDFITSwriter.h @ 1720

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

Update from livedata CVS repository

File size: 3.0 KB
RevLine 
[1325]1//#---------------------------------------------------------------------------
2//# SDFITSwriter.h: ATNF CFITSIO interface class for SDFITS output.
3//#---------------------------------------------------------------------------
[1720]4//# livedata - processing pipeline for single-dish, multibeam spectral data.
5//# Copyright (C) 2000-2009, Australia Telescope National Facility, CSIRO
[1325]6//#
[1720]7//# This file is part of livedata.
[1325]8//#
[1720]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
[1325]15//# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
[1720]16//# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
17//# more details.
[1325]18//#
[1720]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/>.
[1325]21//#
[1720]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
[1325]28//#                        AUSTRALIA
29//#
[1720]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 $
[1325]32//#---------------------------------------------------------------------------
33//# Original: 2000/07/24, Mark Calabretta, ATNF
34//#---------------------------------------------------------------------------
35
36#ifndef ATNF_SDFITSWRITER_H
37#define ATNF_SDFITSWRITER_H
38
[1452]39#include <atnf/PKSIO/MBrecord.h>
40#include <atnf/PKSIO/PKSmsg.h>
[1325]41
42#include <fitsio.h>
43
[1452]44using namespace std;
45
[1325]46// <summary>
47// ATNF CFITSIO interface class for SDFITS output.
48// </summary>
49
[1452]50class SDFITSwriter : public PKSmsg
[1325]51{
52  public:
53    // Default constructor.
54    SDFITSwriter();
55
56    // Destructor.
[1452]57    virtual ~SDFITSwriter();
[1325]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,
[1399]67        char*  bunit,
[1325]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.
[1452]78    int write(MBrecord &record);
[1325]79
[1399]80    // Write a history record.
81    int history(char* text);
82
[1325]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;
[1452]94
95    // Message handling.
96    char cMsg[256];
97    virtual void logMsg(const char *msg = 0x0);
[1325]98};
99
100#endif
Note: See TracBrowser for help on using the repository browser.