irplib_detmon.h

00001 /* $Id: irplib_detmon.h,v 1.43 2008/03/17 17:33:54 lbilbao Exp $
00002  *
00003  * This file is part of the irplib package
00004  * Copyright (C) 2002, 2003 European Southern Observatory
00005  *
00006  * This program is free software; you can redistribute it and/or modify
00007  * it under the terms of the GNU General Public License as published by
00008  * the Free Software Foundation; either version 2 of the License, or
00009  * (at your option) any later version.
00010  *
00011  * This program is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00014  * GNU General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU General Public License
00017  * along with this program; if not, write to the Free Software
00018  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA
00019  */
00020 
00021 /*
00022  * $Author: lbilbao $
00023  * $Date: 2008/03/17 17:33:54 $
00024  * $Revision: 1.43 $
00025  * $Name: uves-3_9_0 $
00026  */
00027 
00028 #ifndef IRPLIB_DETMON_H
00029 #define IRPLIB_DETMON_H
00030 
00031 /*----------------------------------------------------------------------------
00032                                    Includes
00033  ----------------------------------------------------------------------------*/
00034 
00035 #include <cpl.h>
00036 
00037 /*----------------------------------------------------------------------------
00038                                    Prototypes
00039  ----------------------------------------------------------------------------*/
00040 
00041 
00042 /* Macros to generate the recipe(s) description(s) */
00043 #define irplib_detmon_ronbias_get_description(RECIPE_NAME, PIPE_NAME,          \
00044                                               DETMON_RONBIAS_RAW)              \
00045     RECIPE_NAME " -- " PIPE_NAME " linearity/gain recipe for IR.\n"            \
00046     "The files listed in the Set Of Frames must be tagged:\n"                  \
00047     "raw-file.fits  "DETMON_RONBIAS_RAW"\n"
00048 
00049 #define irplib_detmon_pernoise_get_description(RECIPE_NAME, PIPE_NAME,         \
00050                                               DETMON_PERNOISE_RAW)             \
00051     RECIPE_NAME " -- " PIPE_NAME " Recipe for Periodic Noise Characterisation.\n"            \
00052     "The files listed in the Set Of Frames must be tagged:\n"                  \
00053     "raw-file.fits  "DETMON_PERNOISE_RAW"\n"
00054 
00055 #define irplib_detmon_dark_get_description(RECIPE_NAME, PIPE_NAME,         \
00056                                               DETMON_DARK_RAW)             \
00057     RECIPE_NAME " -- " PIPE_NAME " Dark Recipe.\n"            \
00058     "The files listed in the Set Of Frames must be tagged:\n"                  \
00059     "raw-file.fits  "DETMON_DARK_RAW"\n"
00060 
00061 #define RANDOM       ((ronbias_method) 1 << 1)
00062 #define HISTO        ((ronbias_method) 1 << 2)
00063 #define PREOVERSCAN  ((ronbias_method) 1 << 3)
00064 #define REGION       ((ronbias_method) 1 << 4)
00065 
00066 typedef unsigned long ronbias_method;
00067 
00068 #undef REGEXP
00069 #define REGEXP "ARCFILE|MJD-OBS|ESO TPL ID|DATE-OBS|ESO DET DIT|ESO DET NDIT"
00070 
00071 cpl_error_code
00072 irplib_detmon_ronbias(cpl_frameset      *,
00073                       const cpl_parameterlist *,
00074                       const char        *,
00075                       const char        *,
00076                       const char        *,
00077                       const char        *,
00078                       const char        *,
00079                       const char        *,
00080                       const char        *,
00081                       const char        *,
00082                       const char        *,
00083                       const char        *,
00084                       const char        *,
00085                       const char        *,
00086                       int              (*)(const cpl_frame *,
00087                                            const cpl_frame *));
00088 
00089 cpl_error_code
00090 irplib_detmon_ronbias_fill_parlist_default(cpl_parameterlist *,
00091                        const char *,
00092                        const char *);
00093 
00094 cpl_error_code
00095 irplib_detmon_ronbias_fill_parlist(cpl_parameterlist * parlist,
00096                    const char *recipe_name,
00097                    const char *pipeline_name,
00098                    const char * method,
00099                    const char * pmethod,
00100                    const int preoverscan_degree,
00101                    const int random_nsamples,
00102                    const int random_sizex,
00103                    const int random_sizey,
00104                    const int criteria,
00105                    const int ref_llx,
00106                    const int ref_lly,
00107                    const int ref_urx,
00108                    const int ref_ury,
00109                    const char * stacking_method,
00110                    const int stacking_ks_low,
00111                    const int stacking_ks_high,
00112                    const int stacking_ks_iter,
00113                    const int master_shift_x,
00114                    const int master_shift_y,
00115                    const int ron_llx,
00116                    const int ron_lly,
00117                    const int ron_urx,
00118                    const int ron_ury,
00119                    const int exts);
00120 
00121 
00122 cpl_error_code
00123 irplib_detmon_fill_pernoise_params(cpl_parameterlist *,
00124                                    const char *,
00125                                    const char *,
00126                                    int mode,
00127                                    const char *direction,
00128                                    double speed,
00129                                    int llx,
00130                                    int lly,
00131                                    int urx,
00132                                    int ury,
00133                                    int kappa,
00134                                    int exts);
00135 
00136 int irplib_detmon_fill_pernoise_params_default(cpl_parameterlist        *,
00137                               const char        *,
00138                               const char        *);
00139 
00140 cpl_error_code
00141 irplib_detmon_pernoise(cpl_frameset      *,
00142                       const cpl_parameterlist *,
00143                       const char        *,
00144                       const char        *,
00145                       const char        *,
00146                       const char        *,
00147                       const char        *,
00148                       int              (*)(const cpl_frame *,
00149                                            const cpl_frame *));
00150 
00151 cpl_table *
00152 irplib_detmon_pernoise_reduce(cpl_image       *);
00153 
00154 cpl_error_code
00155 irplib_detmon_dark(cpl_frameset      *,
00156                    const cpl_parameterlist *,
00157                    const char        *,
00158                    const char        *,
00159                    const char        *,
00160                    const char        *,
00161                    const char        *,
00162                    const char        *,
00163                    const char        *,
00164                    int              (*)(const cpl_frame *,
00165                                         const cpl_frame *));
00166 
00167 cpl_error_code
00168 irplib_detmon_fill_dark_params(cpl_parameterlist * parlist,
00169                                const char *recipe_name,
00170                                const char *pipeline_name,
00171                                const char * ron_method,
00172                                const char * dsnu_method,
00173                                const char * optnir,
00174                                int exts);
00175 
00176 int
00177 irplib_detmon_fill_dark_params_default(cpl_parameterlist * parlist,
00178                                        const char *recipe_name,
00179                                        const char *pipeline_name);
00180 
00181 int
00182 irplib_detmon_compare_dits(const cpl_frame *, const cpl_frame *);
00183 
00184 double                  irplib_pfits_get_exptime(const cpl_propertylist *);
00185 
00186 cpl_error_code
00187 irplib_detmon_fill_parlist(cpl_parameterlist *,
00188                            const char *, const char *, int, ...);
00189 
00190 cpl_error_code
00191 irplib_get_clean_mean_window(const cpl_image *,
00192                              const int,
00193                              const int,
00194                              const int,
00195                              const int,
00196                              const double,
00197                  const int,
00198                              const double,
00199                  double *,
00200                  double *);
00201 int
00202 irplib_detmon_retrieve_par(const char *,
00203                             const char *,
00204                             const char *, const cpl_parameterlist *);
00205 
00206 
00207 #endif

Generated on Fri Apr 18 14:11:40 2008 for UVES Pipeline Reference Manual by  doxygen 1.5.1