LALPulsar  6.1.0.1-fe68b98
FITSPulsarIO.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2016, 2017 Karl Wette
3 //
4 // This program is free software; you can redistribute it and/or modify
5 // it under the terms of the GNU General Public License as published by
6 // the Free Software Foundation; either version 2 of the License, or
7 // (at your option) any later version.
8 //
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU General Public License for more details.
13 //
14 // You should have received a copy of the GNU General Public License
15 // along with with program; see the file COPYING. If not, write to the
16 // Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
17 // MA 02110-1301 USA
18 //
19 
20 #ifndef _FITSPULSARIO_H
21 #define _FITSPULSARIO_H
22 
23 #include <stdint.h>
24 #include <gsl/gsl_matrix.h>
25 #include <lal/LALStdlib.h>
26 #include <lal/FITSFileIO.h>
27 #include <lal/Segments.h>
28 #include <lal/LALBarycenter.h>
29 
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33 
34 ///
35 /// \defgroup FITSPulsarIO_h Header FITSPulsarIO.h
36 /// \ingroup lalpulsar_general
37 /// \author Karl Wette
38 /// \brief Routines for reading/writing pulsar-related data to/from FITS files
39 ///
40 
41 /// @{
42 
43 ///
44 /// Write a segment list to a FITS file
45 ///
47  FITSFile *file, ///< [in] FITS file pointer
48  const CHAR *name, ///< [in] Name of FITS table to write segment list to
49  const LALSegList *segments, ///< [in] Segment list
50  const CHAR *comment ///< [in] Comment for FITS table
51 );
52 
53 ///
54 /// Read a segment list from a FITS file
55 ///
56 #ifdef SWIG // SWIG interface directives
57 SWIGLAL( INOUT_STRUCTS( LALSegList **, segments ) );
58 #endif
60  FITSFile *file, ///< [in] FITS file pointer
61  const CHAR *name, ///< [in] Name of FITS table to read segment list from
62  LALSegList **segments ///< [out] Segment list
63 );
64 
65 ///
66 /// Write ephemeris data to a FITS file
67 ///
69  FITSFile *file, ///< [in] FITS file pointer
70  const EphemerisData *ephemerides ///< [in] Ephemeris data
71 );
72 
73 ///
74 /// Read ephemeris data from a FITS file
75 ///
76 #ifdef SWIG // SWIG interface directives
77 SWIGLAL( INOUT_STRUCTS( EphemerisData **, ephemerides ) );
78 #endif
80  FITSFile *file, ///< [in] FITS file pointer
81  EphemerisData **ephemerides ///< [out] Ephemeris data
82 );
83 
84 /// @}
85 
86 #ifdef __cplusplus
87 }
88 #endif
89 
90 #endif // _FITSPULSARIO_H
91 
92 // Local Variables:
93 // c-file-style: "linux"
94 // c-basic-offset: 2
95 // End:
const char * name
Definition: SearchTiming.c:93
const char * comment
Definition: SearchTiming.c:94
struct tagFITSFile FITSFile
Representation of a FITS file.
Definition: FITSFileIO.h:54
int XLALFITSReadEphemerisData(FITSFile *file, EphemerisData **ephemerides)
Read ephemeris data from a FITS file.
Definition: FITSPulsarIO.c:144
int XLALFITSWriteEphemerisData(FITSFile *file, const EphemerisData *ephemerides)
Write ephemeris data to a FITS file.
Definition: FITSPulsarIO.c:106
int XLALFITSWriteSegmentList(FITSFile *file, const CHAR *name, const LALSegList *segments, const CHAR *comment)
Write a segment list to a FITS file.
Definition: FITSPulsarIO.c:37
int XLALFITSReadSegmentList(FITSFile *file, const CHAR *name, LALSegList **segments)
Read a segment list from a FITS file.
Definition: FITSPulsarIO.c:62
char CHAR
This structure contains all information about the center-of-mass positions of the Earth and Sun,...