cubecreate_cfg.h

00001 
00002 /*---------------------------------------------------------------------------
00003    
00004    File name    :   cubecreate_cfg.h
00005    Author   :   Juergen Schreiber
00006    Created on   :   November 2001
00007    Description  :   cubecreate_ini definitions + handling prototypes
00008 
00009  ---------------------------------------------------------------------------*/
00010 
00011 
00012 #ifndef _CUBECREATE_CFG_H_
00013 #define _CUBECREATE_CFG_H_
00014 
00015 /*---------------------------------------------------------------------------
00016                                 Includes
00017  ---------------------------------------------------------------------------*/
00018 
00019 /*
00020 #include <stdio.h>
00021 */
00022 #include <stdlib.h>
00023 #include "static_sz.h"
00024 
00025 
00026 /*---------------------------------------------------------------------------
00027                                 Defines
00028  ---------------------------------------------------------------------------*/
00029 
00030 
00031 /*---------------------------------------------------------------------------
00032                                 New types
00033  ---------------------------------------------------------------------------*/
00034 
00035 
00036 /*
00037   data cube creation blackboard container
00038 
00039   This structure holds all information related to the cube creation
00040   routine. It is used as a container for the flux of ancillary data,
00041   computed values, and algorithm status. Pixel flux is separated from
00042   the blackboard.
00043   */
00044 
00045 /*<python>*/
00046 typedef struct cube_config {
00047 /*-------General---------*/
00048         char inFrame[FILENAMESZ] ; /* input averaged, bad pixel corrected, sky subtracted, \
00049                             flatfielded and interleaved frame */
00050         char wavemap[FILENAMESZ] ; /* input wavelength calibration map */
00051         char outName[FILENAMESZ] ; /* output name of resulting fits data cube */
00052 
00053 /*------ Resampling ------*/
00054         /* number of coefficients for the polynomial interpolation (order + 1) */
00055         int ncoeffs ;      
00056         /* number of rows in the resulting resampled image = number of spectral bins */
00057         int nrows ;
00058 
00059 /*------ Calibration ------*/
00060         /* indicates if the halogen lamp feature from flatfielding should be corrected for or not */
00061         int halocorrectInd ;
00062         /* name of the fits file of the calibrated halogen lamp spectrum */
00063         char halospectrum[FILENAMESZ] ;
00064 
00065 /*------ CubeCreation ------*/
00066         /* indicates if the slitlet distances are determined by a north-south test (1) 
00067            or slitlet edge fits (0) */ 
00068         int northsouthInd  ;
00069         /* name of the ASCII list of the fitted slitlet edge positions or the distances of the slitlets */
00070         char poslist[FILENAMESZ] ;
00071         /* number of slitlets (32) */
00072         int nslits ;
00073         /* sub pixel position of the column position of the left edge of 
00074            the first slitlet needed if the slitlet distances were determined by a north
00075            south test */
00076         char firstCol[FILENAMESZ] ;
00077 
00078 /*------ FineTuning ------*/
00079     /* indicator for the shifting method to use */
00080     char  method ;
00081         /* order of polynomial if the polynomial interpolation shifting method is used */
00082         int order ;
00083 
00084   int qc_chop_xmin;
00085   int qc_chop_xmax;
00086   int qc_chop_ymin;
00087   int qc_chop_ymax;
00088   int qc_chop_zmin;
00089   int qc_chop_zmax;
00090 
00091 } cube_config ;
00092 /*</python>*/
00093 
00094 
00095 
00096 /*---------------------------------------------------------------------------
00097                             Function prototypes
00098  ---------------------------------------------------------------------------*/
00099 
00100 
00101 /*---------------------------------------------------------------------------
00102    Function :   cube_cfg_create()
00103    In       :   void
00104    Out      :   pointer to allocated base cube_cfg structure
00105    Job      :   allocate memory for a cube_cfg struct
00106    Notice   :   only the main (base) structure is allocated
00107  ---------------------------------------------------------------------------*/
00108 
00109 cube_config * cube_cfg_create(void);
00110 
00111 
00112 /*---------------------------------------------------------------------------
00113    Function :   cube_cfg_destroy()
00114    In       :   cube_config to deallocate
00115    Out      :   void
00116    Job      :   deallocate all memory associated with a cube_config data structure
00117    Notice   :   
00118  ---------------------------------------------------------------------------*/
00119 /*<python>*/
00120 void cube_cfg_destroy(cube_config * cc);
00121 /*</python>*/
00122 
00123 #endif

Generated on Wed Oct 26 13:08:52 2005 for SINFONI Pipeline Reference Manual by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001