00001 /* 00002 * This file is part of the ESO SINFONI Pipeline 00003 * Copyright (C) 2004,2005 European Southern Observatory 00004 * 00005 * This program 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 File name : sinfo_lamp_cfg.h 00021 Author : Juergen Schreiber 00022 Created on : March 2002 00023 Description : lamp_ini definitions + handling prototypes 00024 ---------------------------------------------------------------------------*/ 00025 #ifndef SINFO_LAMP_CFG_H 00026 #define SINFO_LAMP_CFG_H 00027 /*--------------------------------------------------------------------------- 00028 Includes 00029 ---------------------------------------------------------------------------*/ 00030 #include <stdlib.h> 00031 #include <cpl.h> 00032 #include "sinfo_globals.h" 00033 /*--------------------------------------------------------------------------- 00034 Defines 00035 ---------------------------------------------------------------------------*/ 00036 /*--------------------------------------------------------------------------- 00037 New types 00038 ---------------------------------------------------------------------------*/ 00039 /* 00040 prepare lamp spectrum blackboard container 00041 00042 This structure holds all information related to the halogen lamp 00043 spectrum handling 00044 routine. It is used as a container for the flux of ancillary data, 00045 computed values, and algorithm status. Pixel flux is separated from 00046 the blackboard. 00047 */ 00048 00049 typedef struct lamp_config { 00050 /*-------General---------*/ 00051 char inFrame[FILE_NAME_SZ] ; /* file name of the input halogen 00052 lamp frame */ 00053 char wavemapim[FILE_NAME_SZ] ; /* file name of the wavelength map */ 00054 char outName[FILE_NAME_SZ] ; /* output name of resulting fits frame */ 00055 /*------ Resampling ------*/ 00056 /* number of coefficients for the polynomial interpolation 00057 (order + 1) */ 00058 int ncoeffs ; 00059 /* number of rows in the resulting resampled image = 00060 number of spectral bins */ 00061 int nrows ; 00062 /*------ Extractspectrum ------*/ 00063 /* percentage of rejected low intensity pixels */ 00064 float loReject ; 00065 /* percentage of rejected high intensity pixels */ 00066 float hiReject ; 00067 /* conversion factor of detector counts per intensity unit */ 00068 float countsToIntensity ; 00069 } lamp_config ; 00070 00071 /*--------------------------------------------------------------------------- 00072 Function prototypes 00073 ---------------------------------------------------------------------------*/ 00081 lamp_config * 00082 sinfo_lamp_cfg_create(void); 00083 00091 void 00092 sinfo_lamp_cfg_destroy(lamp_config * sc); 00093 00094 #endif