GIRAFFE Pipeline Reference Manual

giwlcalibration.h

00001 /* $Id: giwlcalibration.h,v 1.17 2007/03/12 12:53:24 rpalsa Exp $
00002  *
00003  * This file is part of the GIRAFFE Pipeline
00004  * Copyright (C) 2002-2006 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  02110-1301  USA
00019  */
00020 
00021 /*
00022  * $Author: rpalsa $
00023  * $Date: 2007/03/12 12:53:24 $
00024  * $Revision: 1.17 $
00025  * $Name: giraffe-2_8_8 $
00026  */
00027 
00028 #ifndef GIWLCALIBRATION_H
00029 #define GIWLCALIBRATION_H
00030 
00031 #include <cxtypes.h>
00032 
00033 #include <cpl_macros.h>
00034 #include <cpl_parameterlist.h>
00035 
00036 #include <gitable.h>
00037 #include <girange.h>
00038 #include <gilinedata.h>
00039 #include <gilocalization.h>
00040 #include <giextraction.h>
00041 #include <giwlsolution.h>
00042 
00043 
00044 #ifdef __cplusplus
00045 extern "C" {
00046 #endif
00047 
00048 
00057 struct GiWCalConfig {
00058 
00063     cxint line_nwidths;
00064 
00069     cxint *line_widths;
00070 
00077     cxdouble line_separation;
00078 
00084     cxdouble line_fluxratio;
00085 
00091     cxdouble line_brightness;
00092 
00098     cxint line_count;
00099 
00104     GiRange *line_wlrange;
00105 
00106 
00114     cxchar *line_model;
00115 
00122     cxchar *line_residuals;
00123 
00129     cxdouble line_threshold;
00130 
00135     cxdouble line_offset;
00136 
00142     cxint line_niter;
00143 
00149     cxint line_ntest;
00150 
00156     cxdouble line_dchisq;
00157 
00163     cxdouble line_rwidthratio;
00164 
00170     cxdouble line_widthexponent;
00171 
00176     cxdouble line_saturation;
00177 
00182     cxint16 slit_position;
00183 
00188     cxdouble slit_dx;
00189 
00194     cxdouble slit_dy;
00195 
00200     cxdouble slit_phi;
00201 
00209     cxchar *opt_model;
00210 
00215     cxint opt_direction;
00216 
00222     cxbool opt_solution;
00223 
00229     cxbool opt_subslits;
00230 
00235     cxint16 opt_flags;
00236 
00242     cxint opt_niter;
00243 
00249     cxint opt_ntest;
00250 
00256     cxdouble opt_dchisq;
00257 
00263     cxdouble pxw_cliplevel;
00264 
00270     cxint pxw_clipniter;
00271 
00277     cxdouble pxw_clipmfrac;
00278 
00283     cxint pxw_xorder;
00284 
00289     cxint pxw_yorder;
00290 
00296     cxdouble xws_cliplevel;
00297 
00303     cxint xws_clipniter;
00304 
00310     cxdouble xws_clipmfrac;
00311 
00316     cxint xws_xorder;
00317 
00322     cxint xws_yorder;
00323 
00324 };
00325 
00326 typedef struct GiWCalConfig GiWCalConfig;
00327 
00328 
00329 struct GiWCalData {
00330     GiTable *coeffs;
00331     GiTable *lines;
00332     GiLineData *linedata;
00333 };
00334 
00335 typedef struct GiWCalData GiWCalData;
00336 
00337 
00338 GiWCalData *giraffe_wcaldata_new(void);
00339 void giraffe_wcaldata_delete(GiWCalData *self);
00340 
00341 
00342 cxint giraffe_calibrate_wavelength(GiWCalData *result,
00343                                    GiExtraction *extraction,
00344                                    GiLocalization *localization,
00345                                    GiTable *fibers, GiTable *slitgeometry,
00346                                    GiTable *grating, GiTable *lines,
00347                                    GiTable *initial, GiWCalConfig *config);
00348 
00349 GiWCalConfig *giraffe_wlcalibration_config_create(cpl_parameterlist *);
00350 void giraffe_wlcalibration_config_destroy(GiWCalConfig *);
00351 void giraffe_wlcalibration_config_add(cpl_parameterlist *);
00352 
00353 
00354 #ifdef __cplusplus
00355 }
00356 #endif
00357 
00358 #endif /* GIWLCALIBRATION_H */

This file is part of the GIRAFFE Pipeline Reference Manual 2.8.8.
Documentation copyright © 2002-2006 European Southern Observatory.
Generated on Fri Mar 4 10:50:28 2011 by doxygen 1.6.3 written by Dimitri van Heesch, © 1997-2004