source: branches/alma/external/atnf/PKSIO/SDFITSwriter.h @ 1757

Last change on this file since 1757 was 1757, checked in by Kana Sugimoto, 14 years ago

New Development: Yes

JIRA Issue: Yes (CAS-2211)

Ready for Test: Yes

Interface Changes: Yes

What Interface Changed: ASAP 3.0.0 interface changes

Test Programs:

Put in Release Notes: Yes

Module(s): all the CASA sd tools and tasks are affected.

Description: Merged ATNF-ASAP 3.0.0 developments to CASA (alma) branch.

Note you also need to update casa/code/atnf.


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 <casa/Logging/LogIO.h>
41
42#include <fitsio.h>
43
44using namespace std;
45using namespace casa;
46
47// <summary>
48// ATNF CFITSIO interface class for SDFITS output.
49// </summary>
50
51class SDFITSwriter
52{
53  public:
54    // Default constructor.
55    SDFITSwriter();
56
57    // Destructor.
58    virtual ~SDFITSwriter();
59
60    // Create a new SDFITSwriter and store static data.
61    int create(
62        char*  sdname,
63        char*  observer,
64        char*  project,
65        char*  telescope,
66        double antPos[3],
67        char*  obsMode,
68        char*  bunit,
69        float  equinox,
70        char*  dopplerFrame,
71        int    nIF,
72        int*   nChan,
73        int*   nPol,
74        int*   haveXPol,
75        int    haveBase,
76        int    extraSysCal);
77
78    // Store time-variable data.
79    int write(MBrecord &record);
80
81    // Write a history record.
82    int history(char* text);
83
84    // Close the SDFITS file.
85    void close();
86
87    // Close and delete the SDFITS file.
88    void deleteFile();
89
90  private:
91    fitsfile *cSDptr;
92    int  cDoTDIM, cDoXPol, cExtraSysCal, cHaveBase, *cHaveXPol, cIsMX,
93         *cNChan, cNIF, *cNPol, cStatus;
94    long cRow;
95
96    // Message handling.
97    char cMsg[256];
98    void log(LogOrigin origin, LogIO::Command cmd, const char *msg = 0x0);
99};
100
101#endif
Note: See TracBrowser for help on using the repository browser.