00001
00002 /*---------------------------------------------------------------------------
00003
00004 File name : psf_cfg.h
00005 Author : Juergen Schreiber
00006 Created on : February 2002
00007 Description : psf_cfg.c definitions + handling prototypes
00008
00009 ---------------------------------------------------------------------------*/
00010
00011
00012 #ifndef _PSF_CFG_H_
00013 #define _PSF_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 PSF star image reconstruction blackboard container
00038
00039 This structure holds all information related to the psf reconstruction
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 psf_config {
00047 /*-------General---------*/
00048 char inFrame[FILENAMESZ] ; /* input averaged, bad pixel corrected, off subtracted, \
00049 flatfielded, spectral tilt corrected list of frames */
00050 char outName[FILENAMESZ] ; /* output name of resulting fits data cube */
00051
00052 /*------ Reconstruction ------*/
00053 /* the fraction [0...1] of rejected low intensity pixels when taking the average of columns */
00054 float lo_reject ;
00055 /* the fraction [0...1] of rejected high intensity pixels when taking the average of columns */
00056 float hi_reject ;
00057 /* indicates if the slitlet distances are determined by a north-south test (1)
00058 or slitlet edge fits (0) */
00059 int northsouthInd ;
00060 /* name of the ASCII list of the fitted slitlet edge positions or the distances of the slitlets */
00061 char poslist[FILENAMESZ] ;
00062 /* number of slitlets (32) */
00063 int nslits ;
00064 /* sub pixel position of the column position of the left edge of
00065 the first slitlet needed if the slitlet distances were determined by a north
00066 south test */
00067 char firstCol[FILENAMESZ] ;
00068 /* indicator for the shifting method to use */
00069 char method[1] ;
00070 /* order of polynomial if the polynomial interpolation shifting method is used */
00071 int order ;
00072 } psf_config ;
00073 /*</python>*/
00074
00075
00076
00077 /*---------------------------------------------------------------------------
00078 Function prototypes
00079 ---------------------------------------------------------------------------*/
00080
00081
00082 /*---------------------------------------------------------------------------
00083 Function : psf_cfg_create()
00084 In : void
00085 Out : pointer to allocated base psf_cfg structure
00086 Job : allocate memory for a psf_config struct
00087 Notice : only the main (base) structure is allocated
00088 ---------------------------------------------------------------------------*/
00089
00090 psf_config * psf_cfg_create(void);
00091
00092
00093 /*---------------------------------------------------------------------------
00094 Function : psf_cfg_destroy()
00095 In : psf_config to deallocate
00096 Out : void
00097 Job : deallocate all memory associated with a psf_config data structure
00098 Notice :
00099 ---------------------------------------------------------------------------*/
00100 /*<python>*/
00101 void psf_cfg_destroy(psf_config * cc);
00102 /*</python>*/
00103
00104 #endif
1.2.13.1 written by Dimitri van Heesch,
© 1997-2001