00001
00002 /*---------------------------------------------------------------------------
00003
00004 File name : twiflat_cfg.h
00005 Author : Juergen Schreiber
00006 Created on : October 2001
00007 Description : twiflat_ini definitions + handling prototypes
00008
00009 ---------------------------------------------------------------------------*/
00010
00011
00012 #ifndef _TWIFLAT_CFG_H_
00013 #define _TWIFLAT_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 twilight flat blackboard container
00038
00039 This structure holds all information related to the generating of twilight flats
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 twiflat_config {
00047 /*-------General---------*/
00048 char inFile[FILENAMESZ] ; /* file name of the file containing the list of all input frames */
00049 char outName[FILENAMESZ] ; /* output name of resulting fits flatfield */
00050 char ** framelist ; /* list of frames */
00051 int * frametype ; /* list of frame types on or off */
00052 int nframes ; /* number of frames in frame list */
00053 int ntwi ; /* number of twilight frames in frame list */
00054 int ndark ; /* number of dark frames in frame list */
00055 int non ; /* number of frames of integrating sphere with lamp on in frame list */
00056 int noff ; /* number of frames of integrating sphere with lamp off in frame list */
00057
00058 /*------ BadPixel ------*/
00059 /* file name of the bad pixel mask fits file */
00060 char mask[FILENAMESZ] ;
00061
00062 /*------ ColTilt ------*/
00063 /* indicator if the tilt correction should be carried through */
00064 /*int coltiltInd ;*/
00065 /* file name of the ASCII file containing the slope value */
00066 /*char slopeFile[FILENAMESZ] ;*/
00067 /* order of polynomial used for polynomial interpolation for the row shifting */
00068 /*int order ;*/
00069 /*------ WarpFix ------*/
00070 /* indicator if the warping should be carried through */
00071 int warpfixInd ;
00072 /* file name of the ASCII file containing the polynomial values */
00073 char polyFile[FILENAMESZ] ;
00074 /* kernel to be used for the interpolation */
00075 char kernel[FILENAMESZ] ;
00076
00077 /*------ CleanMean ------*/
00078 /* percentage of rejected low intensity pixels */
00079 float loReject ;
00080 /* percentage of rejected high intensity pixels */
00081 float hiReject ;
00082 } twiflat_config ;
00083 /*</python>*/
00084
00085
00086
00087 /*---------------------------------------------------------------------------
00088 Function prototypes
00089 ---------------------------------------------------------------------------*/
00090
00091
00092 /*---------------------------------------------------------------------------
00093 Function : twiflat_cfg_create()
00094 In : void
00095 Out : pointer to allocated base twiflat_cfg structure
00096 Job : allocate memory for a twiflat_cfg struct
00097 Notice : only the main (base) structure is allocated
00098 ---------------------------------------------------------------------------*/
00099
00100 twiflat_config * twiflat_cfg_create(void);
00101
00102
00103 /*---------------------------------------------------------------------------
00104 Function : twiflat_cfg_destroy()
00105 In : twiflat_config to deallocate
00106 Out : void
00107 Job : deallocate all memory associated with a twiflat_config data structure
00108 Notice :
00109 ---------------------------------------------------------------------------*/
00110 /*<python>*/
00111 void twiflat_cfg_destroy(twiflat_config * sc);
00112 /*</python>*/
00113
00114 #endif
1.2.13.1 written by Dimitri van Heesch,
© 1997-2001