uves_extract.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef UVES_EXTRACT_H
00028 #define UVES_EXTRACT_H
00029 #include <uves_cpl_size.h>
00030
00031 #include <uves_utils_polynomial.h>
00032 #include <uves_chip.h>
00033
00034 #include <cpl.h>
00035
00036 #include <stdbool.h>
00037
00038 typedef enum {EXTRACT_AVERAGE,
00039 EXTRACT_LINEAR,
00040 EXTRACT_2D,
00041 EXTRACT_ARCLAMP,
00042 EXTRACT_WEIGHTED,
00043 EXTRACT_OPTIMAL} extract_method;
00044
00045
00046 cpl_parameterlist *uves_extract_define_parameters(void);
00047
00048 extract_method
00049 uves_get_extract_method(const cpl_parameterlist *parameters,
00050 const char *context, const char *subcontext);
00051
00052 cpl_image *
00053 uves_extract(cpl_image *image,
00054 cpl_image *image_noise,
00055 const uves_propertylist *image_header,
00056 const cpl_table *ordertable,
00057 const polynomial *order_locations_raw,
00058 double slit_length,
00059 double offset,
00060 const cpl_parameterlist *parameters,
00061 const char *context,
00062 const char *mode,
00063 bool extract_partial,
00064 bool DEBUG,
00065 enum uves_chip chip,
00066 uves_propertylist **header,
00067 cpl_image **spectrum_noise,
00068 cpl_image **sky_spectrum,
00069 cpl_image **sky_spectrum_noise,
00070 cpl_table **cosmic_mask,
00071 cpl_image **cosmic_image,
00072 cpl_table **profile_table,
00073 cpl_image **weights,
00074 cpl_table **info_tbl,
00075 cpl_table **order_trace);
00076
00077 #endif