00001 /* * 00002 * This file is part of the ESO UVES Pipeline * 00003 * Copyright (C) 2004,2005 European Southern Observatory * 00004 * * 00005 * This library is free software; you can redistribute it and/or modify * 00006 * it under the terms of the GNU General Public License as published by * 00007 * the Free Software Foundation; either version 2 of the License, or * 00008 * (at your option) any later version. * 00009 * * 00010 * This program is distributed in the hope that it will be useful, * 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 00013 * GNU General Public License for more details. * 00014 * * 00015 * You should have received a copy of the GNU General Public License * 00016 * along with this program; if not, write to the Free Software * 00017 * Foundation, 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA * 00018 * */ 00019 00020 /* 00021 * $Author: jmlarsen $ 00022 * $Date: 2007/06/11 13:28:26 $ 00023 * $Revision: 1.35 $ 00024 * $Name: uves-3_3_1 $ 00025 * $Log: uves_physmod_impl.c,v $ 00026 * Revision 1.35 2007/06/11 13:28:26 jmlarsen 00027 * Changed recipe contact address to cpl at eso.org 00028 * 00029 * Revision 1.34 2007/06/06 08:17:33 amodigli 00030 * replace tab with 4 spaces 00031 * 00032 * Revision 1.33 2007/02/09 13:39:51 jmlarsen 00033 * Use defines for recipe id 00034 * 00035 * Revision 1.32 2006/11/06 15:19:41 jmlarsen 00036 * Removed unused include directives 00037 * 00038 * Revision 1.31 2006/10/24 14:12:16 jmlarsen 00039 * Parametrized recipe id to support FLAMES recipe 00040 * 00041 * Revision 1.30 2006/10/19 13:53:25 jmlarsen 00042 * Changed guess line table tag to LINE_GUESS_TAB 00043 * 00044 * Revision 1.29 2006/10/17 12:33:02 jmlarsen 00045 * Added semicolon at UVES_RECIPE_DEFINE invocation 00046 * 00047 * Revision 1.28 2006/10/11 12:22:36 amodigli 00048 * now the stability check consist only i the msrawxy and the table comparison, as in MIDAS 00049 * 00050 * Revision 1.27 2006/10/09 13:01:13 jmlarsen 00051 * Use macro to define recipe interface functions 00052 * 00053 * Revision 1.26 2006/09/19 14:31:38 jmlarsen 00054 * uves_insert_frame(): use bitmap to specify which image statistics keywords must be computed 00055 * 00056 * Revision 1.25 2006/09/19 06:55:39 jmlarsen 00057 * Changed interface of uves_frameset to optionally write image statistics kewwords 00058 * 00059 * Revision 1.24 2006/08/24 11:36:37 jmlarsen 00060 * Write recipe start/stop time to header 00061 * 00062 * Revision 1.23 2006/08/18 13:35:42 jmlarsen 00063 * Fixed/changed QC parameter formats 00064 * 00065 * Revision 1.22 2006/08/17 13:56:53 jmlarsen 00066 * Reduced max line length 00067 * 00068 * Revision 1.21 2006/08/11 14:56:05 amodigli 00069 * removed Doxygen warnings 00070 * 00071 * Revision 1.20 2006/08/07 11:35:35 jmlarsen 00072 * Disabled parameter environment variable mode 00073 * 00074 * Revision 1.19 2006/08/01 14:42:34 amodigli 00075 * fixed bugs getting raw header from master formatcheck 00076 * 00077 * Revision 1.18 2006/07/31 06:29:26 amodigli 00078 * added QC on stability test 00079 * 00080 * Revision 1.17 2006/07/28 14:51:26 amodigli 00081 * fixed some bugs on improper table selection 00082 * 00083 * Revision 1.16 2006/07/14 12:19:28 jmlarsen 00084 * Support multiple QC tests per product 00085 * 00086 * Revision 1.15 2006/07/03 12:46:34 amodigli 00087 * updated description 00088 * 00089 * Revision 1.14 2006/06/28 13:28:29 amodigli 00090 * improved output 00091 * 00092 * Revision 1.13 2006/06/20 09:06:39 amodigli 00093 * correct input tag info in man page 00094 * 00095 * Revision 1.12 2006/06/16 08:25:45 jmlarsen 00096 * Manually propagate ESO.DET. keywords from 1st/2nd input header 00097 * 00098 * Revision 1.11 2006/06/13 11:57:02 jmlarsen 00099 * Check that calibration frames are from the same chip ID 00100 * 00101 * Revision 1.10 2006/06/07 13:06:28 jmlarsen 00102 * Changed doxygen tag addtogroup -> defgroup 00103 * 00104 * Revision 1.9 2006/06/07 09:01:28 amodigli 00105 * added some doc 00106 * 00107 * Revision 1.8 2006/05/08 15:42:16 amodigli 00108 * allow to specify order column label 00109 * 00110 * Revision 1.7 2006/04/20 10:47:39 amodigli 00111 * added qclog 00112 * 00113 * Revision 1.6 2006/04/07 07:11:12 jmlarsen 00114 * Minor doc. fix 00115 * 00116 * Revision 1.5 2006/04/06 09:48:15 amodigli 00117 * changed uves_frameset_insert interface to have QC log 00118 * 00119 * Revision 1.4 2006/04/06 08:42:19 jmlarsen 00120 * Changed indentation 00121 * 00122 * Revision 1.3 2006/03/03 13:54:11 jmlarsen 00123 * Changed syntax of check macro 00124 * 00125 * Revision 1.2 2006/02/28 09:15:22 jmlarsen 00126 * Minor update 00127 * 00128 * Revision 1.1 2006/02/03 07:46:30 jmlarsen 00129 * Moved recipe implementations to ./uves directory 00130 * 00131 * Revision 1.66 2006/01/25 10:09:18 jmlarsen 00132 * Added doxygen end marker 00133 * 00134 * Revision 1.65 2006/01/20 10:36:25 amodigli 00135 * 00136 * Fixed warings from doxigen 00137 * 00138 * Revision 1.64 2006/01/19 10:03:06 amodigli 00139 * Fixed leaks 00140 * 00141 * Revision 1.62 2006/01/16 13:52:58 jmlarsen 00142 * Removed memory leak 00143 * 00144 * Revision 1.61 2006/01/16 08:01:57 amodigli 00145 * 00146 * Added stability check 00147 * 00148 * Revision 1.60 2006/01/13 13:43:15 jmlarsen 00149 * Removed memory leak 00150 * 00151 * Revision 1.59 2006/01/13 09:54:42 amodigli 00152 * Fixed some bugs: improved agreement with MIDAS version 00153 * 00154 * Revision 1.58 2006/01/09 15:23:06 jmlarsen 00155 * Removed some warnings 00156 * 00157 * Revision 1.57 2006/01/09 14:05:42 amodigli 00158 * Fixed doxigen warnings 00159 * 00160 * Revision 1.56 2006/01/03 16:57:13 amodigli 00161 * Fixed bug 00162 * 00163 * Revision 1.55 2006/01/03 14:47:53 amodigli 00164 * 00165 * Added uves_physmod_chop_otab.h .c to match MIDAS 00166 * 00167 * Revision 1.54 2005/12/19 16:17:55 jmlarsen 00168 * Replaced bool -> int 00169 * 00170 */ 00171 #ifdef HAVE_CONFIG_H 00172 # include <config.h> 00173 #endif 00174 00175 /*----------------------------------------------------------------------------*/ 00183 /*----------------------------------------------------------------------------*/ 00184 00185 /*----------------------------------------------------------------------------- 00186 Includes 00187 -----------------------------------------------------------------------------*/ 00188 00189 #include <uves.h> 00190 #include <uves_physmod_body.h> 00191 #include <uves_recipe.h> 00192 #include <uves_error.h> 00193 00194 #include <cpl.h> 00195 00196 /*----------------------------------------------------------------------------- 00197 Defines 00198 -----------------------------------------------------------------------------*/ 00199 /*----------------------------------------------------------------------------- 00200 Functions prototypes 00201 ----------------------------------------------------------------------------*/ 00202 static int uves_physmod_define_parameters(cpl_parameterlist *parameters); 00203 00204 /*----------------------------------------------------------------------------- 00205 Recipe standard code 00206 -----------------------------------------------------------------------------*/ 00207 #define cpl_plugin_get_info uves_physmod_get_info 00208 UVES_RECIPE_DEFINE( 00209 UVES_PHYSMOD_ID, UVES_PHYSMOD_DOM, uves_physmod_define_parameters, 00210 "Andrea Modigliani", "cpl@eso.org", 00211 uves_physmod_desc_short, 00212 uves_physmod_desc); 00213 00215 /*----------------------------------------------------------------------------- 00216 Functions code 00217 -----------------------------------------------------------------------------*/ 00218 /*----------------------------------------------------------------------------*/ 00224 /*----------------------------------------------------------------------------*/ 00225 static int 00226 uves_physmod_define_parameters(cpl_parameterlist *parameters) 00227 { 00228 return uves_physmod_define_parameters_body(parameters, make_str(UVES_PHYSMOD_ID)); 00229 } 00230 00231 /*----------------------------------------------------------------------------*/ 00239 /*----------------------------------------------------------------------------*/ 00240 static void 00241 IRPLIB_CONCAT2X(UVES_PHYSMOD_ID,exe)(cpl_frameset *frames, 00242 const cpl_parameterlist *parameters, 00243 const char *starttime) 00244 { 00245 bool flames = false; 00246 uves_physmod_exe_body(frames, flames, make_str(UVES_PHYSMOD_ID), 00247 parameters, starttime); 00248 }
1.4.6