MUSE Pipeline Reference Manual  1.0.2
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-2014 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_pipefile(const cpl_propertylist *);
44 const char *muse_pfits_get_dpr_type(const cpl_propertylist *);
45 const char *muse_pfits_get_dpr_catg(const cpl_propertylist *);
46 const char *muse_pfits_get_pro_type(const cpl_propertylist *);
47 const char *muse_pfits_get_pro_catg(const cpl_propertylist *);
48 
49 /* instrument properties */
50 muse_ins_mode muse_pfits_get_mode(const cpl_propertylist *);
51 const char *muse_pfits_get_insmode(const cpl_propertylist *);
52 cpl_boolean muse_pfits_has_ifu(const cpl_propertylist *, unsigned char);
53 const char *muse_pfits_get_drot_mode(const cpl_propertylist *);
54 double muse_pfits_get_drot_posang(const cpl_propertylist *);
55 double muse_pfits_get_drot_start(const cpl_propertylist *);
56 double muse_pfits_get_drot_end(const cpl_propertylist *);
57 
58 const char *muse_pfits_get_extname(const cpl_propertylist *);
59 
60 /* general exposure properties */
61 cpl_size muse_pfits_get_naxis(const cpl_propertylist *, unsigned int);
62 double muse_pfits_get_ra(const cpl_propertylist *);
63 double muse_pfits_get_dec(const cpl_propertylist *);
64 double muse_pfits_get_equinox(const cpl_propertylist *);
65 double muse_pfits_get_lst(const cpl_propertylist *);
66 double muse_pfits_get_mjdobs(const cpl_propertylist *);
67 const char *muse_pfits_get_dateobs(const cpl_propertylist *);
68 double muse_pfits_get_exptime(const cpl_propertylist *);
69 
70 /* CCD properties */
71 int muse_pfits_get_read_id(const cpl_propertylist *);
72 const char *muse_pfits_get_read_name(const cpl_propertylist *);
73 int muse_pfits_get_binx(const cpl_propertylist *);
74 int muse_pfits_get_biny(const cpl_propertylist *);
75 const char *muse_pfits_get_chip_name(const cpl_propertylist *);
76 const char *muse_pfits_get_chip_id(const cpl_propertylist *);
77 const char *muse_pfits_get_chip_date(const cpl_propertylist *);
78 cpl_boolean muse_pfits_get_chip_live(const cpl_propertylist *);
79 double muse_pfits_get_ron(const cpl_propertylist *, unsigned char);
80 double muse_pfits_get_gain(const cpl_propertylist *, unsigned char);
81 int muse_pfits_get_out_output_x(const cpl_propertylist *, unsigned char);
82 int muse_pfits_get_out_output_y(const cpl_propertylist *, unsigned char);
83 int muse_pfits_get_out_nx(const cpl_propertylist *, unsigned char);
84 int muse_pfits_get_out_ny(const cpl_propertylist *, unsigned char);
85 int muse_pfits_get_out_prescan_x(const cpl_propertylist *, unsigned char);
86 int muse_pfits_get_out_prescan_y(const cpl_propertylist *, unsigned char);
87 int muse_pfits_get_out_overscan_x(const cpl_propertylist *, unsigned char);
88 int muse_pfits_get_out_overscan_y(const cpl_propertylist *, unsigned char);
89 
90 /* telescope properties */
91 double muse_pfits_get_geolat(const cpl_propertylist *);
92 double muse_pfits_get_geolon(const cpl_propertylist *);
93 double muse_pfits_get_geoelev(const cpl_propertylist *);
94 double muse_pfits_get_focu_scale(const cpl_propertylist *);
95 double muse_pfits_get_airmass_start(const cpl_propertylist *);
96 double muse_pfits_get_airmass_end(const cpl_propertylist *);
97 double muse_pfits_get_altang(const cpl_propertylist *);
98 double muse_pfits_get_parang_start(const cpl_propertylist *);
99 double muse_pfits_get_parang_end(const cpl_propertylist *);
100 
101 /* ambient telescope properties */
102 double muse_pfits_get_temp(const cpl_propertylist *);
103 double muse_pfits_get_rhum(const cpl_propertylist *);
104 double muse_pfits_get_pres_start(const cpl_propertylist *);
105 double muse_pfits_get_pres_end(const cpl_propertylist *);
106 double muse_pfits_get_fwhm_start(const cpl_propertylist *);
107 double muse_pfits_get_fwhm_end(const cpl_propertylist *);
108 
109 /* diode, lamp, and shutter properties */
110 double muse_pfits_get_pam_intensity(const cpl_propertylist *, int);
111 double muse_pfits_get_pam_stdev(const cpl_propertylist *, int);
112 const char *muse_pfits_get_pam2_filter(const cpl_propertylist *);
113 int muse_pfits_get_lampnum(const cpl_propertylist *);
114 const char *muse_pfits_get_lamp_name(const cpl_propertylist *, int);
115 int muse_pfits_get_lamp_status(const cpl_propertylist *, int);
116 const char *muse_pfits_get_shut_name(const cpl_propertylist *, int);
117 int muse_pfits_get_shut_status(const cpl_propertylist *, int);
118 
119 /* encoders */
120 int muse_pfits_get_posenc(const cpl_propertylist *, unsigned short);
121 double muse_pfits_get_pospos(const cpl_propertylist *, unsigned short);
122 
123 #endif /* MUSE_PFITS_H */
const char * muse_pfits_get_dpr_type(const cpl_propertylist *)
find out the DPR type
Definition: muse_pfits.c:88
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:164
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:709
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:579
cpl_boolean muse_pfits_get_chip_live(const cpl_propertylist *)
find out if the CCD was active (live)
Definition: muse_pfits.c:492
const char * muse_pfits_get_extname(const cpl_propertylist *)
find out the extension name
Definition: muse_pfits.c:188
const char * muse_pfits_get_insmode(const cpl_propertylist *)
find out the observation mode
Definition: muse_pfits.c:1125
int muse_pfits_get_read_id(const cpl_propertylist *)
find out the readout mode id
Definition: muse_pfits.c:365
const char * muse_pfits_get_dpr_catg(const cpl_propertylist *)
find out the DPR category
Definition: muse_pfits.c:106
double muse_pfits_get_rhum(const cpl_propertylist *)
find out the relavtive humidity (in %)
Definition: muse_pfits.c:877
double muse_pfits_get_ra(const cpl_propertylist *)
find out the right ascension
Definition: muse_pfits.c:232
cpl_size muse_pfits_get_naxis(const cpl_propertylist *, unsigned int)
find out the size of a given axis
Definition: muse_pfits.c:207
double muse_pfits_get_gain(const cpl_propertylist *, unsigned char)
find the detector gain (in units of count/adu)
Definition: muse_pfits.c:539
int muse_pfits_get_shut_status(const cpl_propertylist *, int)
query the status of one shutter
Definition: muse_pfits.c:1311
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:687
double muse_pfits_get_altang(const cpl_propertylist *)
find out the altitude angle at start of the exposure (in degrees)
Definition: muse_pfits.c:969
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:557
double muse_pfits_get_pres_start(const cpl_propertylist *)
find out the ambient pressure at start of exposure (in mbar)
Definition: muse_pfits.c:895
double muse_pfits_get_airmass_start(const cpl_propertylist *)
find out the airmass at start of exposure
Definition: muse_pfits.c:823
const char * muse_pfits_get_dateobs(const cpl_propertylist *)
find out the date of observations
Definition: muse_pfits.c:329
double muse_pfits_get_focu_scale(const cpl_propertylist *)
find out the scale in the VLT focal plane
Definition: muse_pfits.c:804
const char * muse_pfits_get_shut_name(const cpl_propertylist *, int)
query the name of one shutter
Definition: muse_pfits.c:1290
int muse_pfits_get_lampnum(const cpl_propertylist *)
query the number of lamps installed
Definition: muse_pfits.c:1225
double muse_pfits_get_drot_posang(const cpl_propertylist *)
find out the MUSE derotator position angle (in degrees)
Definition: muse_pfits.c:1041
const char * muse_pfits_get_chip_date(const cpl_propertylist *)
find out the chip installation date
Definition: muse_pfits.c:473
double muse_pfits_get_equinox(const cpl_propertylist *)
find out the equinox
Definition: muse_pfits.c:271
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:1201
double muse_pfits_get_fwhm_end(const cpl_propertylist *)
find out the ambient seeing at end of exposure (in arcsec)
Definition: muse_pfits.c:950
int muse_pfits_get_biny(const cpl_propertylist *)
find out the binning factor in y direction
Definition: muse_pfits.c:419
double muse_pfits_get_geolat(const cpl_propertylist *)
find out the telescope's latitude
Definition: muse_pfits.c:735
const char * muse_pfits_get_lamp_name(const cpl_propertylist *, int)
query the name of one lamp
Definition: muse_pfits.c:1248
double muse_pfits_get_pam_intensity(const cpl_propertylist *, int)
query the intensity measured by one photo diode (pico amplifier)
Definition: muse_pfits.c:1151
const char * muse_pfits_get_pipefile(const cpl_propertylist *)
find out the pipefile
Definition: muse_pfits.c:71
const char * muse_pfits_get_drot_mode(const cpl_propertylist *)
find out the MUSE derotator mode
Definition: muse_pfits.c:1023
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:665
int muse_pfits_get_out_nx(const cpl_propertylist *, unsigned char)
find out the horizontal size of the data region of one quadrant
Definition: muse_pfits.c:601
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:513
const char * muse_pfits_get_read_name(const cpl_propertylist *)
find out the readout mode name
Definition: muse_pfits.c:383
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:1181
double muse_pfits_get_drot_end(const cpl_propertylist *)
find out the MUSE derotator rotation at exposure end (in degrees)
Definition: muse_pfits.c:1077
double muse_pfits_get_fwhm_start(const cpl_propertylist *)
find out the ambient seeing at start of exposure (in arcsec)
Definition: muse_pfits.c:931
double muse_pfits_get_drot_start(const cpl_propertylist *)
find out the MUSE derotator rotation at exposure start (in degrees)
Definition: muse_pfits.c:1059
double muse_pfits_get_dec(const cpl_propertylist *)
find out the declination
Definition: muse_pfits.c:250
int muse_pfits_get_posenc(const cpl_propertylist *, unsigned short)
query the absolute encoder position of one encoder
Definition: muse_pfits.c:1334
const char * muse_pfits_get_chip_id(const cpl_propertylist *)
find out the chip id
Definition: muse_pfits.c:455
int muse_pfits_get_binx(const cpl_propertylist *)
find out the binning factor in x direction
Definition: muse_pfits.c:401
double muse_pfits_get_parang_start(const cpl_propertylist *)
find out the parallactic angle at start of exposure (in degrees)
Definition: muse_pfits.c:987
double muse_pfits_get_pres_end(const cpl_propertylist *)
find out the ambient pressure at end of exposure (in mbar)
Definition: muse_pfits.c:913
double muse_pfits_get_airmass_end(const cpl_propertylist *)
find out the airmass at end of exposure
Definition: muse_pfits.c:841
int muse_pfits_get_lamp_status(const cpl_propertylist *, int)
query the status of one lamp
Definition: muse_pfits.c:1269
double muse_pfits_get_mjdobs(const cpl_propertylist *)
find out the Julian Date of the observation
Definition: muse_pfits.c:311
double muse_pfits_get_pospos(const cpl_propertylist *, unsigned short)
query the position in user units of one encoder
Definition: muse_pfits.c:1363
const char * muse_pfits_get_pro_type(const cpl_propertylist *)
find out the PRO type
Definition: muse_pfits.c:124
double muse_pfits_get_exptime(const cpl_propertylist *)
find out the exposure time
Definition: muse_pfits.c:347
const char * muse_pfits_get_pro_catg(const cpl_propertylist *)
find out the PRO category
Definition: muse_pfits.c:142
double muse_pfits_get_temp(const cpl_propertylist *)
find out the ambient temperature (in degrees Celsius)
Definition: muse_pfits.c:859
double muse_pfits_get_geoelev(const cpl_propertylist *)
find out the telescope's elevation
Definition: muse_pfits.c:781
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:643
double muse_pfits_get_lst(const cpl_propertylist *)
find out the local siderial time
Definition: muse_pfits.c:293
int muse_pfits_get_out_ny(const cpl_propertylist *, unsigned char)
find out the vertical size of the data region of one quadrant
Definition: muse_pfits.c:622
const char * muse_pfits_get_chip_name(const cpl_propertylist *)
find out the chip name
Definition: muse_pfits.c:437
double muse_pfits_get_geolon(const cpl_propertylist *)
find out the telescope's longitude
Definition: muse_pfits.c:759
muse_ins_mode muse_pfits_get_mode(const cpl_propertylist *)
find out the observation mode
Definition: muse_pfits.c:1097
double muse_pfits_get_parang_end(const cpl_propertylist *)
find out the parallactic angle at end of exposure (in degrees)
Definition: muse_pfits.c:1005