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