visir_pfits.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef VISIR_PFITS_H
00029 #define VISIR_PFITS_H
00030
00031
00032
00033
00034
00035 #include <cpl.h>
00036
00037 #include "irplib_pfits.h"
00038
00039
00040
00041
00042
00043 #define VISIR_PFITS_STRING_ARCFILE "ARCFILE"
00044 #define VISIR_PFITS_STRING_DATE_OBS "DATE-OBS"
00045 #define VISIR_PFITS_DOUBLE_DEC "DEC"
00046 #define VISIR_PFITS_DOUBLE_PIXSPACE "ESO DET CHIP PXSPACE"
00047 #define VISIR_PFITS_INT_CHOP_NCYCLES "ESO DET CHOP NCYCLES"
00048 #define VISIR_PFITS_DOUBLE_DIT "ESO DET DIT"
00049 #define VISIR_PFITS_STRING_FRAME_TYPE "ESO DET FRAM TYPE"
00050 #define VISIR_PFITS_STRING_MODE "ESO DET MODE NAME"
00051 #define VISIR_PFITS_INT_NDIT "ESO DET NDIT"
00052 #define VISIR_PFITS_INT_NDITSKIP "ESO DET NDITSKIP"
00053 #define VISIR_PFITS_DOUBLE_VOLT1DCTA9 "ESO DET VOLT1 DCTA9"
00054 #define VISIR_PFITS_DOUBLE_VOLT1DCTB9 "ESO DET VOLT1 DCTB9"
00055 #define VISIR_PFITS_DOUBLE_VOLT2DCTA9 "ESO DET VOLT2 DCTA9"
00056 #define VISIR_PFITS_DOUBLE_VOLT2DCTB9 "ESO DET VOLT2 DCTB9"
00057 #define VISIR_PFITS_STRING_GRAT1_NAME "ESO INS GRAT1 NAME"
00058 #define VISIR_PFITS_DOUBLE_WLEN "ESO INS GRAT1 WLEN"
00059 #define VISIR_PFITS_STRING_INSMODE "ESO INS MODE"
00060 #define VISIR_PFITS_DOUBLE_MONOC_POS "ESO INS MONOC1 POS"
00061 #define VISIR_PFITS_STRING_PIXSCALE "ESO INS PFOV"
00062 #define VISIR_PFITS_STRING_RESOL "ESO INS RESOL"
00063 #define VISIR_PFITS_STRING_SLITNAME "ESO INS SLIT1 NAME"
00064 #define VISIR_PFITS_INT_OBS_ID "ESO OBS ID"
00065 #define VISIR_PFITS_STRING_STARNAME "ESO OBS TARG NAME"
00066 #define VISIR_PFITS_STRING_CHOPNOD_DIR "ESO SEQ CHOPNOD DIR"
00067 #define VISIR_PFITS_DOUBLE_CUMOFFSETX "ESO SEQ CUMOFFSETX"
00068 #define VISIR_PFITS_DOUBLE_CUMOFFSETY "ESO SEQ CUMOFFSETY"
00069 #define VISIR_PFITS_STRING_NODPOS "ESO SEQ NODPOS"
00070 #define VISIR_PFITS_DOUBLE_AIRMASS_END "ESO TEL AIRM END"
00071 #define VISIR_PFITS_DOUBLE_AIRMASS_START "ESO TEL AIRM START"
00072 #define VISIR_PFITS_DOUBLE_CHOP_THROW "ESO TEL CHOP THROW"
00073 #define VISIR_PFITS_STRING_CHOP_START "ESO TEL CHOP START"
00074 #define VISIR_PFITS_DOUBLE_CHOP_FREQ "ESO TEL CHOP FREQ"
00075 #define VISIR_PFITS_STRING_CHOP_START "ESO TEL CHOP START"
00076 #define VISIR_PFITS_STRING_OBS_START "DATE-OBS"
00077 #define VISIR_PFITS_DOUBLE_FOCUS "ESO TEL FOCU LEN"
00078 #define VISIR_PFITS_DOUBLE_ALPHA "ESO TEL TARG OFFSETALPHA"
00079 #define VISIR_PFITS_DOUBLE_DELTA "ESO TEL TARG OFFSETDELTA"
00080 #define VISIR_PFITS_DOUBLE_TEMP "ESO TEL TH M1 TEMP"
00081 #define VISIR_PFITS_INT_EXPNO "ESO TPL EXPNO"
00082 #define VISIR_PFITS_INT_NUMBEXP "ESO TPL NEXP"
00083 #define VISIR_PFITS_DOUBLE_EXPTIME "EXPTIME"
00084 #define VISIR_PFITS_STRING_INSTRUMENT "INSTRUME"
00085 #define VISIR_PFITS_DOUBLE_MJDOBS "MJD-OBS"
00086 #define VISIR_PFITS_INT_NAXIS3 "NAXIS3"
00087 #define VISIR_PFITS_DOUBLE_RA "RA"
00088
00089 #define VISIR_PFITS_DOUBLE_SLITWIDTH "ESO INS SLIT1 WID"
00090 #define VISIR_PFITS_STRING_FILTER1 "ESO INS FILT1 NAME"
00091 #define VISIR_PFITS_STRING_FILTER2 "ESO INS FILT2 NAME"
00092
00093 #define VISIR_PFITS_REGEXP_CAPA \
00094 VISIR_PFITS_STRING_INSMODE \
00095 "|" VISIR_PFITS_DOUBLE_VOLT1DCTA9 \
00096 "|" VISIR_PFITS_DOUBLE_VOLT1DCTB9 \
00097 "|" VISIR_PFITS_DOUBLE_VOLT2DCTA9 \
00098 "|" VISIR_PFITS_DOUBLE_VOLT2DCTB9
00099
00100 #define VISIR_PFITS_REGEXP_INPUTS_COMBINE \
00101 VISIR_PFITS_STRING_NODPOS \
00102 "|" "NAXIS[12]" \
00103 "|" VISIR_PFITS_DOUBLE_DIT \
00104 "|" VISIR_PFITS_REGEXP_LOAD_IMAGELIST
00105
00106 #define VISIR_PFITS_REGEXP_IMG_RECOMBINE \
00107 VISIR_PFITS_DOUBLE_CUMOFFSETX \
00108 "|" VISIR_PFITS_DOUBLE_CUMOFFSETY \
00109 "|" VISIR_PFITS_REGEXP_INPUTS_COMBINE \
00110 "|" VISIR_PFITS_STRING_CHOPNOD_DIR \
00111 "|" VISIR_PFITS_STRING_PIXSCALE \
00112 "|" VISIR_PFITS_DOUBLE_CHOP_THROW \
00113 "|" VISIR_PFITS_REGEXP_CAPA
00114
00115 #define VISIR_PFITS_REGEXP_SPC_GET_RES_WL \
00116 VISIR_PFITS_DOUBLE_WLEN \
00117 "|" VISIR_PFITS_DOUBLE_SLITWIDTH \
00118 "|" VISIR_PFITS_DOUBLE_PIXSPACE \
00119 "|" VISIR_PFITS_STRING_RESOL \
00120 "|" VISIR_PFITS_STRING_SLITNAME \
00121 "|" VISIR_PFITS_DOUBLE_TEMP
00122
00123
00124
00125 #define VISIR_PFITS_REGEXP_SPC_SENSIT \
00126 VISIR_PFITS_INT_NDIT \
00127 "|" VISIR_PFITS_DOUBLE_RA \
00128 "|" VISIR_PFITS_DOUBLE_DEC \
00129 "|" VISIR_PFITS_STRING_STARNAME
00130
00131
00132
00133 #define VISIR_PFITS_REGEXP_LOAD_IMAGELIST \
00134 VISIR_PFITS_STRING_FRAME_TYPE \
00135 "|" VISIR_PFITS_INT_NAXIS3 \
00136 "|" VISIR_PFITS_INT_CHOP_NCYCLES \
00137 "|" IRPLIB_PFITS_REGEXP_DPR
00138
00139
00140
00141 #define VISIR_PFITS_REGEXP_IMG_SENSIT \
00142 VISIR_PFITS_STRING_FILTER1 \
00143 "|" VISIR_PFITS_STRING_FILTER2 \
00144 "|" VISIR_PFITS_STRING_PIXSCALE \
00145 "|" VISIR_PFITS_STRING_INSMODE \
00146 "|" VISIR_PFITS_REGEXP_SPC_SENSIT
00147
00148
00149 #define VISIR_PFITS_REGEXP_DARK_PAF \
00150 IRPLIB_PFITS_REGEXP_PAF \
00151 "|" VISIR_PFITS_DOUBLE_DIT \
00152 "|" VISIR_PFITS_INT_NDIT \
00153 "|" VISIR_PFITS_STRING_MODE \
00154 "|ESO INS PFOV|ESO INS RESOL" \
00155 "|ESO INS GRAT1 WLEN|ESO INS SLIT1 WID" \
00156 "|ESO INS FILT1 NAME|ESO INS FILT2 NAME" \
00157 "|ESO DET NCORRS NAME|ESO TPL START"
00158
00159
00160 #define VISIR_PFITS_REGEXP_DARK \
00161 IRPLIB_PFITS_REGEXP_DPR \
00162 "|" VISIR_PFITS_DOUBLE_EXPTIME \
00163 "|" "NAXIS[12]"
00164
00165 #define VISIR_PFITS_REGEXP_COMBINE_PAF \
00166 IRPLIB_PFITS_REGEXP_PAF \
00167 "|" VISIR_PFITS_DOUBLE_DIT \
00168 "|" VISIR_PFITS_STRING_PIXSCALE \
00169 "|" VISIR_PFITS_DOUBLE_AIRMASS_START
00170
00171 #define VISIR_PFITS_REGEXP_IMG_PHOT_PAF \
00172 IRPLIB_PFITS_REGEXP_PAF \
00173 "|ESO DET DIT|ESO INS PFOV|ESO TEL AIRM START"
00174
00175 #define VISIR_PFITS_IMG_PHOT_COPY \
00176 IRPLIB_PFITS_REGEXP_RECAL \
00177 "|FILTER1|FILTER2"
00178
00179 #define VISIR_PFITS_SPC_PHOT_COPY \
00180 VISIR_PFITS_IMG_PHOT_COPY "|GRAT1"
00181
00182 #define VISIR_PFITS_FF_COPY \
00183 VISIR_PFITS_SPC_PHOT_COPY
00184
00185 #define VISIR_PFITS_REGEXP_SPC_WCAL_PAF \
00186 IRPLIB_PFITS_REGEXP_PAF \
00187 "|" VISIR_PFITS_STRING_GRAT1_NAME
00188
00189 #define VISIR_PFITS_REGEXP_SPC_PHOT_PAF \
00190 VISIR_PFITS_REGEXP_IMG_PHOT_PAF \
00191 "|" VISIR_PFITS_STRING_GRAT1_NAME
00192
00193
00194
00195 static const char visir_property_regexp[] =
00196 "^(" IRPLIB_PFITS_REGEXP_PAF
00197 "|" VISIR_PFITS_SPC_PHOT_COPY
00198 "|" VISIR_PFITS_STRING_ARCFILE
00199 "|" VISIR_PFITS_STRING_DATE_OBS
00200 "|" VISIR_PFITS_DOUBLE_DEC
00201 "|" VISIR_PFITS_DOUBLE_PIXSPACE
00202 "|" VISIR_PFITS_INT_CHOP_NCYCLES
00203 "|" VISIR_PFITS_DOUBLE_DIT
00204 "|" VISIR_PFITS_STRING_FRAME_TYPE
00205 "|" VISIR_PFITS_STRING_MODE
00206 "|" VISIR_PFITS_INT_NDIT
00207 "|" VISIR_PFITS_DOUBLE_VOLT1DCTA9
00208 "|" VISIR_PFITS_DOUBLE_VOLT1DCTB9
00209 "|" VISIR_PFITS_DOUBLE_VOLT2DCTA9
00210 "|" VISIR_PFITS_DOUBLE_VOLT2DCTB9
00211 "|" VISIR_PFITS_STRING_GRAT1_NAME
00212 "|" VISIR_PFITS_DOUBLE_WLEN
00213 "|" VISIR_PFITS_STRING_INSMODE
00214 "|" VISIR_PFITS_DOUBLE_MONOC_POS
00215 "|" VISIR_PFITS_STRING_PIXSCALE
00216 "|" VISIR_PFITS_STRING_RESOL
00217 "|" VISIR_PFITS_STRING_SLITNAME
00218 "|" VISIR_PFITS_DOUBLE_SLITWIDTH
00219 "|" VISIR_PFITS_INT_OBS_ID
00220 "|" VISIR_PFITS_STRING_STARNAME
00221 "|" VISIR_PFITS_STRING_CHOPNOD_DIR
00222 "|" VISIR_PFITS_DOUBLE_CHOP_THROW
00223 "|" VISIR_PFITS_DOUBLE_CUMOFFSETX
00224 "|" VISIR_PFITS_DOUBLE_CUMOFFSETY
00225 "|" VISIR_PFITS_STRING_NODPOS
00226 "|" VISIR_PFITS_DOUBLE_AIRMASS_END
00227 "|" VISIR_PFITS_DOUBLE_AIRMASS_START
00228 "|" VISIR_PFITS_DOUBLE_FOCUS
00229 "|" VISIR_PFITS_DOUBLE_ALPHA
00230 "|" VISIR_PFITS_DOUBLE_DELTA
00231 "|" VISIR_PFITS_DOUBLE_TEMP
00232 "|" VISIR_PFITS_INT_EXPNO
00233 "|" VISIR_PFITS_INT_NUMBEXP
00234 "|" VISIR_PFITS_DOUBLE_EXPTIME
00235 "|" VISIR_PFITS_STRING_INSTRUMENT
00236 "|" VISIR_PFITS_DOUBLE_MJDOBS
00237 "|" "NAXIS[12]"
00238 "|" VISIR_PFITS_INT_NAXIS3
00239 "|" VISIR_PFITS_DOUBLE_RA
00240 "|" VISIR_PFITS_STRING_FILTER1
00241 "|" VISIR_PFITS_STRING_FILTER2
00242 "|" IRPLIB_PFITS_REGEXP_DPR ")$";
00243
00244
00245
00246
00247
00248 double visir_pfits_get_airmass_start(const cpl_propertylist *);
00249 double visir_pfits_get_airmass_end(const cpl_propertylist *);
00250 double visir_pfits_get_alpha(const cpl_propertylist *);
00251 const char * visir_pfits_get_arcfile(const cpl_propertylist *);
00252 const char * visir_pfits_get_chopnod_dir(const cpl_propertylist *);
00253 int visir_pfits_get_chop_ncycles(const cpl_propertylist *);
00254 double visir_pfits_get_chop_throw(const cpl_propertylist *);
00255 double visir_pfits_get_chop_pthrow(const cpl_propertylist *);
00256 double visir_pfits_get_cumoffsetx(const cpl_propertylist *);
00257 double visir_pfits_get_cumoffsety(const cpl_propertylist *);
00258 const char * visir_pfits_get_date_obs(const cpl_propertylist *);
00259 double visir_pfits_get_delta(const cpl_propertylist *);
00260 double visir_pfits_get_dec(const cpl_propertylist *);
00261 double visir_pfits_get_dit(const cpl_propertylist *);
00262 int visir_pfits_get_expno(const cpl_propertylist *);
00263 const char * visir_pfits_get_filter(const cpl_propertylist *);
00264 double visir_pfits_get_focus(const cpl_propertylist *);
00265 double visir_pfits_get_exptime(const cpl_propertylist *);
00266 const char * visir_pfits_get_frame_type(const cpl_propertylist *);
00267 const char * visir_pfits_get_grat1_name(const cpl_propertylist *);
00268 const char * visir_pfits_get_insmode(const cpl_propertylist *);
00269 const char * visir_pfits_get_instrument(const cpl_propertylist *);
00270 double visir_pfits_get_mjdobs(const cpl_propertylist *);
00271 const char * visir_pfits_get_mode(const cpl_propertylist *);
00272 double visir_pfits_get_monoc_pos(const cpl_propertylist *);
00273 int visir_pfits_get_ndit(const cpl_propertylist *);
00274 int visir_pfits_get_naxis3(const cpl_propertylist *);
00275 int visir_pfits_get_numbexp(const cpl_propertylist *);
00276 int visir_pfits_get_obs_id(const cpl_propertylist *);
00277 const char * visir_pfits_get_nodpos(const cpl_propertylist *);
00278 const char * visir_pfits_get_pixscale(const cpl_propertylist *);
00279 double visir_pfits_get_pixspace(const cpl_propertylist *);
00280 double visir_pfits_get_ra(const cpl_propertylist *);
00281 double visir_pfits_get_slitwidth(const cpl_propertylist *);
00282 const char * visir_pfits_get_starname(const cpl_propertylist *);
00283 const char * visir_pfits_get_resol(const cpl_propertylist *);
00284 double visir_pfits_get_temp(const cpl_propertylist *);
00285 double visir_pfits_get_volt1dcta9(const cpl_propertylist *);
00286 double visir_pfits_get_volt1dctb9(const cpl_propertylist *);
00287 double visir_pfits_get_volt2dcta9(const cpl_propertylist *);
00288 double visir_pfits_get_volt2dctb9(const cpl_propertylist *);
00289 double visir_pfits_get_wlen(const cpl_propertylist *);
00290
00291 #endif