SINFONI Pipeline Reference Manual  2.5.2
sinfo_psf_cfg.h
1 /*
2  * This file is part of the ESO SINFONI Pipeline
3  * Copyright (C) 2004,2005 European Southern Observatory
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA
18  */
19 /*---------------------------------------------------------------------------
20 
21  File name : sinfo_psf_cfg.h
22  Author : Juergen Schreiber
23  Created on : February 2002
24  Description : psf_cfg.c definitions + handling prototypes
25  ---------------------------------------------------------------------------*/
26 #ifndef SINFO_PSF_CFG_H
27 #define SINFO_PSF_CFG_H
28 /*---------------------------------------------------------------------------
29  Includes
30  ---------------------------------------------------------------------------*/
31 #include <stdlib.h>
32 #include "sinfo_globals.h"
33 #include <cpl.h>
34 /*---------------------------------------------------------------------------
35  Defines
36  ---------------------------------------------------------------------------*/
37 /*---------------------------------------------------------------------------
38  New types
39  ---------------------------------------------------------------------------*/
40 /*
41  PSF star image reconstruction blackboard container
42 
43  This structure holds all information related to the sinfo_psf reconstruction
44  routine. It is used as a container for the flux of ancillary data,
45  computed values, and algorithm status. Pixel flux is separated from
46  the blackboard.
47  */
48 
49 typedef struct psf_config {
50 /*-------General---------*/
51  char inFrame[FILE_NAME_SZ] ; /* input averaged, bad pixel corrected,
52  off subtracted, flatfielded, spectral
53  tilt corrected list of frames */
54  char outName[FILE_NAME_SZ] ; /* output name of resulting fits
55  data cube */
56 
57 /*------ Reconstruction ------*/
58  /* the fraction [0...1] of rejected low intensity pixels when taking
59  the average of columns */
60  float lo_reject ;
61  /* the fraction [0...1] of rejected high intensity pixels when taking
62  the average of columns */
63  float hi_reject ;
64  /* indicates if the slitlet distances are determined by a
65  north-south test (1) or slitlet edge fits (0) */
66  int northsouthInd ;
67  /* name of the ASCII list of the fitted slitlet edge positions or
68  the distances of the slitlets */
69  char poslist[FILE_NAME_SZ] ;
70  /* number of slitlets (32) */
71  int nslits ;
72  /* sub pixel position of the column position of the left sinfo_edge of
73  the first slitlet needed if the slitlet distances were determined
74  by a north south test */
75  char firstCol[FILE_NAME_SZ] ;
76  /* indicator for the shifting method to use */
77  char method[1] ;
78  /* order of polynomial if the polynomial interpolation shifting
79  method is used */
80  int order ;
81 } psf_config ;
82 
83 /*---------------------------------------------------------------------------
84  Function prototypes
85  ---------------------------------------------------------------------------*/
93 psf_config *
94 sinfo_psf_cfg_create(void);
95 
102 void
103 sinfo_psf_cfg_destroy(psf_config * cc);
104 
105 #endif