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

Last change on this file since 1453 was 1453, checked in by TakTsutsumi, 15 years ago

New Development: No

JIRA Issue: No

Ready to Release: Yes

Interface Changes: Yes

What Interface Changed: many

Test Programs: sd.scantable(), sd.scantable.save()

Put in Release Notes: N/A

Description: copied from current casapy code tree


File size: 2.7 KB
Line 
1//#---------------------------------------------------------------------------
2//# SDFITSwriter.h: ATNF CFITSIO interface class for SDFITS output.
3//#---------------------------------------------------------------------------
4//# Copyright (C) 2000-2006
5//# Mark Calabretta, ATNF
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 this software should be addressed as follows:
22//#        Internet email: mcalabre@atnf.csiro.au.
23//#        Postal address: Dr. Mark Calabretta,
24//#                        Australia Telescope National Facility,
25//#                        P.O. Box 76,
26//#                        Epping, NSW, 2121,
27//#                        AUSTRALIA
28//#
29//# $Id$
30//#---------------------------------------------------------------------------
31//# Original: 2000/07/24, Mark Calabretta, ATNF
32//#---------------------------------------------------------------------------
33
34#ifndef ATNF_SDFITSWRITER_H
35#define ATNF_SDFITSWRITER_H
36
37#include <atnf/PKSIO/PKSMBrecord.h>
38
39#include <fitsio.h>
40
41// <summary>
42// ATNF CFITSIO interface class for SDFITS output.
43// </summary>
44
45class SDFITSwriter
46{
47  public:
48    // Default constructor.
49    SDFITSwriter();
50
51    // Destructor.
52    ~SDFITSwriter();
53
54    // Create a new SDFITSwriter and store static data.
55    int create(
56        char*  sdname,
57        char*  observer,
58        char*  project,
59        char*  telescope,
60        double antPos[3],
61        char*  obsMode,
62        float  equinox,
63        char*  dopplerFrame,
64        int    nIF,
65        int*   nChan,
66        int*   nPol,
67        int*   haveXPol,
68        int    haveBase,
69        int    extraSysCal);
70
71    // Store time-variable data.
72    int write(PKSMBrecord &record);
73
74    // Print out CFITSIO error messages.
75    void reportError();
76
77    // Close the SDFITS file.
78    void close();
79
80    // Close and delete the SDFITS file.
81    void deleteFile();
82
83  private:
84    fitsfile *cSDptr;
85    int  cDoTDIM, cDoXPol, cExtraSysCal, cHaveBase, *cHaveXPol, cIsMX,
86         *cNChan, cNIF, *cNPol, cStatus;
87    long cRow;
88};
89
90#endif
Note: See TracBrowser for help on using the repository browser.