MUSE Pipeline Reference Manual  2.1.1
muse_pfits.h
1 /* -*- Mode: C; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim:set sw=2 sts=2 et cin: */
3 /*
4  * This file is part of the MUSE Instrument Pipeline
5  * Copyright (C) 2005-2015 European Southern Observatory
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20  */
21 
22 #ifndef MUSE_PFITS_H
23 #define MUSE_PFITS_H
24 
25 /*----------------------------------------------------------------------------*
26  * Includes *
27  *----------------------------------------------------------------------------*/
28 #include <cpl.h>
29 
30 #include "muse_instrument.h"
31 
32 /*----------------------------------------------------------------------------*
33  * Defines *
34  *----------------------------------------------------------------------------*/
35 /* maximum keyword length for FITS headers, including '\0' */
36 #define KEYWORD_LENGTH 81
37 
38 /*----------------------------------------------------------------------------*
39  * Function prototypes *
40  *----------------------------------------------------------------------------*/
41 /* DFS stuff */
42 const char *muse_pfits_get_arcfile(const cpl_propertylist *);
43 const char *muse_pfits_get_origfile(const cpl_propertylist *);
44 const char *muse_pfits_get_pipefile(const cpl_propertylist *);
45 const char *muse_pfits_get_ancestor(const cpl_propertylist *);
46 const char *muse_pfits_get_dpr_type(const cpl_propertylist *);
47 const char *muse_pfits_get_dpr_catg(const cpl_propertylist *);
48 const char *muse_pfits_get_pro_type(const cpl_propertylist *);
49 const char *muse_pfits_get_pro_catg(const cpl_propertylist *);
50 const char *muse_pfits_get_raw_filename(const cpl_propertylist *, unsigned int);
51 const char *muse_pfits_get_pipe_id(const cpl_propertylist *, unsigned int);
52 const char *muse_pfits_get_progid(const cpl_propertylist *);
53 const char *muse_pfits_get_targname(const cpl_propertylist *);
54 long muse_pfits_get_obsid(const cpl_propertylist *);
55 
56 /* instrument properties */
57 muse_ins_mode muse_pfits_get_mode(const cpl_propertylist *);
58 const char *muse_pfits_get_insmode(const cpl_propertylist *);
59 cpl_boolean muse_pfits_has_ifu(const cpl_propertylist *, unsigned char);
60 const char *muse_pfits_get_drot_mode(const cpl_propertylist *);
61 double muse_pfits_get_drot_posang(const cpl_propertylist *);
62 double muse_pfits_get_drot_start(const cpl_propertylist *);
63 double muse_pfits_get_drot_end(const cpl_propertylist *);
64 
65 const char *muse_pfits_get_extname(const cpl_propertylist *);
66 const char *muse_pfits_get_bunit(const cpl_propertylist *);
67 
68 /* general exposure properties */
69 cpl_size muse_pfits_get_naxis(const cpl_propertylist *, unsigned int);
70 double muse_pfits_get_ra(const cpl_propertylist *);
71 double muse_pfits_get_dec(const cpl_propertylist *);
72 double muse_pfits_get_equinox(const cpl_propertylist *);
73 double muse_pfits_get_lst(const cpl_propertylist *);
74 double muse_pfits_get_mjdobs(const cpl_propertylist *);
75 const char *muse_pfits_get_dateobs(const cpl_propertylist *);
76 double muse_pfits_get_exptime(const cpl_propertylist *);
77 
78 /* WCS properties */
79 double muse_pfits_get_crpix(const cpl_propertylist *, unsigned int);
80 double muse_pfits_get_crval(const cpl_propertylist *, unsigned int);
81 double muse_pfits_get_cd(const cpl_propertylist *, unsigned int, unsigned int);
82 const char *muse_pfits_get_ctype(const cpl_propertylist *, unsigned int);
83 const char *muse_pfits_get_cunit(const cpl_propertylist *, unsigned int);
84 
85 /* CCD properties */
86 int muse_pfits_get_read_id(const cpl_propertylist *);
87 const char *muse_pfits_get_read_name(const cpl_propertylist *);
88 int muse_pfits_get_binx(const cpl_propertylist *);
89 int muse_pfits_get_biny(const cpl_propertylist *);
90 const char *muse_pfits_get_chip_name(const cpl_propertylist *);
91 const char *muse_pfits_get_chip_id(const cpl_propertylist *);
92 const char *muse_pfits_get_chip_date(const cpl_propertylist *);
93 cpl_boolean muse_pfits_get_chip_live(const cpl_propertylist *);
94 double muse_pfits_get_ron(const cpl_propertylist *, unsigned char);
95 double muse_pfits_get_gain(const cpl_propertylist *, unsigned char);
96 int muse_pfits_get_out_output_x(const cpl_propertylist *, unsigned char);
97 int muse_pfits_get_out_output_y(const cpl_propertylist *, unsigned char);
98 int muse_pfits_get_out_nx(const cpl_propertylist *, unsigned char);
99 int muse_pfits_get_out_ny(const cpl_propertylist *, unsigned char);
100 int muse_pfits_get_out_prescan_x(const cpl_propertylist *, unsigned char);
101 int muse_pfits_get_out_prescan_y(const cpl_propertylist *, unsigned char);
102 int muse_pfits_get_out_overscan_x(const cpl_propertylist *, unsigned char);
103 int muse_pfits_get_out_overscan_y(const cpl_propertylist *, unsigned char);
104 
105 /* telescope properties */
106 double muse_pfits_get_geolat(const cpl_propertylist *);
107 double muse_pfits_get_geolon(const cpl_propertylist *);
108 double muse_pfits_get_geoelev(const cpl_propertylist *);
109 double muse_pfits_get_focu_scale(const cpl_propertylist *);
110 double muse_pfits_get_airmass_start(const cpl_propertylist *);
111 double muse_pfits_get_airmass_end(const cpl_propertylist *);
112 double muse_pfits_get_altang(const cpl_propertylist *);
113 double muse_pfits_get_parang_start(const cpl_propertylist *);
114 double muse_pfits_get_parang_end(const cpl_propertylist *);
115 
116 /* seeing FWHM estimators */
117 double muse_pfits_get_agx_avg(const cpl_propertylist *);
118 double muse_pfits_get_agx_rms(const cpl_propertylist *);
119 double muse_pfits_get_agy_avg(const cpl_propertylist *);
120 double muse_pfits_get_agy_rms(const cpl_propertylist *);
121 double muse_pfits_get_ia_fwhm(const cpl_propertylist *);
122 double muse_pfits_get_ia_fwhmlin(const cpl_propertylist *aHeaders);
123 
124 /* ambient telescope properties */
125 double muse_pfits_get_temp(const cpl_propertylist *);
126 double muse_pfits_get_rhum(const cpl_propertylist *);
127 double muse_pfits_get_pres_start(const cpl_propertylist *);
128 double muse_pfits_get_pres_end(const cpl_propertylist *);
129 double muse_pfits_get_fwhm_start(const cpl_propertylist *);
130 double muse_pfits_get_fwhm_end(const cpl_propertylist *);
131 
132 /* diode, lamp, and shutter properties */
133 double muse_pfits_get_pam_intensity(const cpl_propertylist *, int);
134 double muse_pfits_get_pam_stdev(const cpl_propertylist *, int);
135 const char *muse_pfits_get_pam2_filter(const cpl_propertylist *);
136 int muse_pfits_get_lampnum(const cpl_propertylist *);
137 const char *muse_pfits_get_lamp_name(const cpl_propertylist *, int);
138 int muse_pfits_get_lamp_status(const cpl_propertylist *, int);
139 const char *muse_pfits_get_shut_name(const cpl_propertylist *, int);
140 int muse_pfits_get_shut_status(const cpl_propertylist *, int);
141 
142 /* encoders */
143 int muse_pfits_get_posenc(const cpl_propertylist *, unsigned short);
144 double muse_pfits_get_pospos(const cpl_propertylist *, unsigned short);
145 
146 #endif /* MUSE_PFITS_H */
const char * muse_pfits_get_dpr_type(const cpl_propertylist *)
find out the DPR type
Definition: muse_pfits.c:105
cpl_boolean muse_pfits_has_ifu(const cpl_propertylist *, unsigned char)
Find out the whether this header related to a certain IFU.
Definition: muse_pfits.c:181
int muse_pfits_get_out_overscan_y(const cpl_propertylist *, unsigned char)
find out the vertical size of the overscan region of one quadrant
Definition: muse_pfits.c:856
int muse_pfits_get_out_output_y(const cpl_propertylist *, unsigned char)
find out the vertical location of the output port of one quadrant
Definition: muse_pfits.c:726
double muse_pfits_get_cd(const cpl_propertylist *, unsigned int, unsigned int)
find out the WCS coordinate at the reference point
Definition: muse_pfits.c:446
cpl_boolean muse_pfits_get_chip_live(const cpl_propertylist *)
find out if the CCD was active (live)
Definition: muse_pfits.c:639
const char * muse_pfits_get_extname(const cpl_propertylist *)
find out the extension name
Definition: muse_pfits.c:205
const char * muse_pfits_get_insmode(const cpl_propertylist *)
find out the observation mode
Definition: muse_pfits.c:1383
int muse_pfits_get_read_id(const cpl_propertylist *)
find out the readout mode id
Definition: muse_pfits.c:512
const char * muse_pfits_get_dpr_catg(const cpl_propertylist *)
find out the DPR category
Definition: muse_pfits.c:123
double muse_pfits_get_rhum(const cpl_propertylist *)
find out the relavtive humidity (in %)
Definition: muse_pfits.c:1024
double muse_pfits_get_crval(const cpl_propertylist *, unsigned int)
find out the WCS coordinate at the reference point
Definition: muse_pfits.c:423
double muse_pfits_get_ra(const cpl_propertylist *)
find out the right ascension
Definition: muse_pfits.c:267
cpl_size muse_pfits_get_naxis(const cpl_propertylist *, unsigned int)
find out the size of a given axis
Definition: muse_pfits.c:242
double muse_pfits_get_gain(const cpl_propertylist *, unsigned char)
find the detector gain (in units of count/adu)
Definition: muse_pfits.c:686
int muse_pfits_get_shut_status(const cpl_propertylist *, int)
query the status of one shutter
Definition: muse_pfits.c:1569
double muse_pfits_get_ia_fwhm(const cpl_propertylist *)
find out the image analysis FWHM corrected by airmass (in arcsec)
Definition: muse_pfits.c:1242
int muse_pfits_get_out_overscan_x(const cpl_propertylist *, unsigned char)
find out the horizontal size of the overscan region of one quadrant
Definition: muse_pfits.c:834
const char * muse_pfits_get_ancestor(const cpl_propertylist *)
find out the ancestor of a file.
Definition: muse_pfits.c:1739
double muse_pfits_get_agy_avg(const cpl_propertylist *)
find out the y-FWHM average value from the auto-guider (in arcsec)
Definition: muse_pfits.c:1206
const char * muse_pfits_get_raw_filename(const cpl_propertylist *, unsigned int)
find out the i-th raw file name.
Definition: muse_pfits.c:1718
double muse_pfits_get_altang(const cpl_propertylist *)
find out the altitude angle at start of the exposure (in degrees)
Definition: muse_pfits.c:1116
int muse_pfits_get_out_output_x(const cpl_propertylist *, unsigned char)
find out the horizontal location of the output port of one quadrant
Definition: muse_pfits.c:704
double muse_pfits_get_pres_start(const cpl_propertylist *)
find out the ambient pressure at start of exposure (in mbar)
Definition: muse_pfits.c:1042
double muse_pfits_get_airmass_start(const cpl_propertylist *)
find out the airmass at start of exposure
Definition: muse_pfits.c:970
const char * muse_pfits_get_dateobs(const cpl_propertylist *)
find out the date of observations
Definition: muse_pfits.c:364
const char * muse_pfits_get_bunit(const cpl_propertylist *)
find out the unit string
Definition: muse_pfits.c:223
double muse_pfits_get_focu_scale(const cpl_propertylist *)
find out the scale in the VLT focal plane
Definition: muse_pfits.c:951
const char * muse_pfits_get_shut_name(const cpl_propertylist *, int)
query the name of one shutter
Definition: muse_pfits.c:1548
int muse_pfits_get_lampnum(const cpl_propertylist *)
query the number of lamps installed
Definition: muse_pfits.c:1483
const char * muse_pfits_get_cunit(const cpl_propertylist *, unsigned int)
find out the WCS axis unit string
Definition: muse_pfits.c:491
double muse_pfits_get_drot_posang(const cpl_propertylist *)
find out the MUSE derotator position angle (in degrees)
Definition: muse_pfits.c:1296
const char * muse_pfits_get_chip_date(const cpl_propertylist *)
find out the chip installation date
Definition: muse_pfits.c:620
double muse_pfits_get_equinox(const cpl_propertylist *)
find out the equinox
Definition: muse_pfits.c:306
const char * muse_pfits_get_targname(const cpl_propertylist *)
find out the ESO observation target name
Definition: muse_pfits.c:1677
double muse_pfits_get_crpix(const cpl_propertylist *, unsigned int)
find out the WCS reference point
Definition: muse_pfits.c:401
const char * muse_pfits_get_pam2_filter(const cpl_propertylist *)
query the filter set up in front of photo diode (pico amplifier) 2
Definition: muse_pfits.c:1459
double muse_pfits_get_fwhm_end(const cpl_propertylist *)
find out the ambient seeing at end of exposure (in arcsec)
Definition: muse_pfits.c:1097
int muse_pfits_get_biny(const cpl_propertylist *)
find out the binning factor in y direction
Definition: muse_pfits.c:566
double muse_pfits_get_geolat(const cpl_propertylist *)
find out the telescope&#39;s latitude
Definition: muse_pfits.c:882
const char * muse_pfits_get_lamp_name(const cpl_propertylist *, int)
query the name of one lamp
Definition: muse_pfits.c:1506
double muse_pfits_get_pam_intensity(const cpl_propertylist *, int)
query the intensity measured by one photo diode (pico amplifier)
Definition: muse_pfits.c:1409
const char * muse_pfits_get_pipefile(const cpl_propertylist *)
find out the pipefile
Definition: muse_pfits.c:88
const char * muse_pfits_get_drot_mode(const cpl_propertylist *)
find out the MUSE derotator mode
Definition: muse_pfits.c:1278
int muse_pfits_get_out_prescan_y(const cpl_propertylist *, unsigned char)
find out the vertical size of the prescan region of one quadrant
Definition: muse_pfits.c:812
int muse_pfits_get_out_nx(const cpl_propertylist *, unsigned char)
find out the horizontal size of the data section of one quadrant
Definition: muse_pfits.c:748
const char * muse_pfits_get_arcfile(const cpl_propertylist *)
find out the arcfile
Definition: muse_pfits.c:54
double muse_pfits_get_ron(const cpl_propertylist *, unsigned char)
find the detector read-out noise
Definition: muse_pfits.c:660
const char * muse_pfits_get_read_name(const cpl_propertylist *)
find out the readout mode name
Definition: muse_pfits.c:530
double muse_pfits_get_pam_stdev(const cpl_propertylist *, int)
query the intensity std. dev. of one photo diode (pico amplifier)
Definition: muse_pfits.c:1439
double muse_pfits_get_drot_end(const cpl_propertylist *)
find out the MUSE derotator rotation at exposure end (in degrees)
Definition: muse_pfits.c:1332
double muse_pfits_get_fwhm_start(const cpl_propertylist *)
find out the ambient seeing at start of exposure (in arcsec)
Definition: muse_pfits.c:1078
double muse_pfits_get_drot_start(const cpl_propertylist *)
find out the MUSE derotator rotation at exposure start (in degrees)
Definition: muse_pfits.c:1314
double muse_pfits_get_dec(const cpl_propertylist *)
find out the declination
Definition: muse_pfits.c:285
const char * muse_pfits_get_progid(const cpl_propertylist *)
find out the ESO program identification
Definition: muse_pfits.c:1659
int muse_pfits_get_posenc(const cpl_propertylist *, unsigned short)
query the absolute encoder position of one encoder
Definition: muse_pfits.c:1592
double muse_pfits_get_agy_rms(const cpl_propertylist *)
find out the y-FWHM root mean square from the auto-guider (in arcsec)
Definition: muse_pfits.c:1224
const char * muse_pfits_get_chip_id(const cpl_propertylist *)
find out the chip id
Definition: muse_pfits.c:602
const char * muse_pfits_get_ctype(const cpl_propertylist *, unsigned int)
find out the WCS axis type string
Definition: muse_pfits.c:469
long muse_pfits_get_obsid(const cpl_propertylist *)
find out the observation block id
Definition: muse_pfits.c:1641
double muse_pfits_get_agx_rms(const cpl_propertylist *)
find out the x-FWHM root mean square from the auto-guider (in arcsec)
Definition: muse_pfits.c:1188
int muse_pfits_get_binx(const cpl_propertylist *)
find out the binning factor in x direction
Definition: muse_pfits.c:548
double muse_pfits_get_parang_start(const cpl_propertylist *)
find out the parallactic angle at start of exposure (in degrees)
Definition: muse_pfits.c:1134
double muse_pfits_get_pres_end(const cpl_propertylist *)
find out the ambient pressure at end of exposure (in mbar)
Definition: muse_pfits.c:1060
double muse_pfits_get_airmass_end(const cpl_propertylist *)
find out the airmass at end of exposure
Definition: muse_pfits.c:988
int muse_pfits_get_lamp_status(const cpl_propertylist *, int)
query the status of one lamp
Definition: muse_pfits.c:1527
double muse_pfits_get_mjdobs(const cpl_propertylist *)
find out the Julian Date of the observation
Definition: muse_pfits.c:346
double muse_pfits_get_pospos(const cpl_propertylist *, unsigned short)
query the position in user units of one encoder
Definition: muse_pfits.c:1621
const char * muse_pfits_get_pro_type(const cpl_propertylist *)
find out the PRO type
Definition: muse_pfits.c:141
double muse_pfits_get_exptime(const cpl_propertylist *)
find out the exposure time
Definition: muse_pfits.c:382
const char * muse_pfits_get_pro_catg(const cpl_propertylist *)
find out the PRO category
Definition: muse_pfits.c:159
double muse_pfits_get_temp(const cpl_propertylist *)
find out the ambient temperature (in degrees Celsius)
Definition: muse_pfits.c:1006
double muse_pfits_get_geoelev(const cpl_propertylist *)
find out the telescope&#39;s elevation
Definition: muse_pfits.c:928
int muse_pfits_get_out_prescan_x(const cpl_propertylist *, unsigned char)
find out the horizontal size of the prescan region of one quadrant
Definition: muse_pfits.c:790
double muse_pfits_get_lst(const cpl_propertylist *)
find out the local siderial time
Definition: muse_pfits.c:328
double muse_pfits_get_agx_avg(const cpl_propertylist *)
find out the x-FWHM average value from the auto-guider (in arcsec)
Definition: muse_pfits.c:1170
const char * muse_pfits_get_pipe_id(const cpl_propertylist *, unsigned int)
find out the value of the flux calibration flag
Definition: muse_pfits.c:1696
double muse_pfits_get_ia_fwhmlin(const cpl_propertylist *aHeaders)
find out the image analysis FWHM from a linear fit (in arcsec)
Definition: muse_pfits.c:1260
const char * muse_pfits_get_origfile(const cpl_propertylist *)
find out the origfile
Definition: muse_pfits.c:71
int muse_pfits_get_out_ny(const cpl_propertylist *, unsigned char)
find out the vertical size of the data section of one quadrant
Definition: muse_pfits.c:769
const char * muse_pfits_get_chip_name(const cpl_propertylist *)
find out the chip name
Definition: muse_pfits.c:584
double muse_pfits_get_geolon(const cpl_propertylist *)
find out the telescope&#39;s longitude
Definition: muse_pfits.c:906
muse_ins_mode muse_pfits_get_mode(const cpl_propertylist *)
find out the observation mode
Definition: muse_pfits.c:1352
double muse_pfits_get_parang_end(const cpl_propertylist *)
find out the parallactic angle at end of exposure (in degrees)
Definition: muse_pfits.c:1152