27#ifndef XSH_DATA_LINETILT_H
28#define XSH_DATA_LINETILT_H 1.2
33#define XSH_LINETILT_TABLE_NB_COL 15
35#define XSH_LINETILT_TABLE_COLNAME_WAVELENGTH "WAVELENGTH"
36#define XSH_LINETILT_TABLE_UNIT_WAVELENGTH "none"
38#define XSH_LINETILT_TABLE_COLNAME_NAME "NAME"
39#define XSH_LINETILT_TABLE_UNIT_NAME "none"
41#define XSH_LINETILT_TABLE_COLNAME_ORDER "ORDER"
42#define XSH_LINETILT_TABLE_UNIT_ORDER "none"
44#define XSH_LINETILT_TABLE_COLNAME_FLUX "Flux"
45#define XSH_LINETILT_TABLE_UNIT_FLUX "ADU"
47#define XSH_LINETILT_TABLE_COLNAME_INTENSITY "Intensity"
48#define XSH_LINETILT_TABLE_UNIT_INTENSITY "ADU"
50#define XSH_LINETILT_TABLE_COLNAME_CENPOSX "Xcen"
51#define XSH_LINETILT_TABLE_UNIT_CENPOSX "pixel"
53#define XSH_LINETILT_TABLE_COLNAME_CENPOSY "Ycen"
54#define XSH_LINETILT_TABLE_UNIT_CENPOSY "pixel"
56#define XSH_LINETILT_TABLE_COLNAME_GAUSSY "YGauss"
57#define XSH_LINETILT_TABLE_UNIT_GAUSSY "pixel"
59#define XSH_LINETILT_TABLE_COLNAME_TILTY "Ytilt"
60#define XSH_LINETILT_TABLE_UNIT_TILTY "pixel"
62#define XSH_LINETILT_TABLE_COLNAME_FWHM "FWHM"
63#define XSH_LINETILT_TABLE_UNIT_FWHM "pixel"
65#define XSH_LINETILT_TABLE_COLNAME_SHIFTY "SHIFT_Y"
66#define XSH_LINETILT_TABLE_UNIT_SHIFTY "pixel"
68#define XSH_LINETILT_TABLE_COLNAME_TILT "TILT"
69#define XSH_LINETILT_TABLE_UNIT_TILT "none"
71#define XSH_LINETILT_TABLE_COLNAME_CHISQ "chisq"
72#define XSH_LINETILT_TABLE_UNIT_CHISQ "none"
74#define XSH_LINETILT_TABLE_COLNAME_SPECRES "SPECRES"
75#define XSH_LINETILT_TABLE_UNIT_SPECRES "none"
77#define XSH_LINETILT_TABLE_COLNAME_FLAG "FLAG"
78#define XSH_LINETILT_TABLE_UNIT_FLAG "none"
115 cpl_propertylist * header ) ;
123 const char * filename,
static xsh_instrument * instrument
double * xsh_linetilt_list_get_sigma_y(xsh_linetilt_list *list)
get the Y sigma. The returned array must be deallocated by the caller.
double * xsh_linetilt_list_get_slits(xsh_linetilt_list *list)
get the slits . The returned array must be deallocated by the caller.
void xsh_linetilt_list_free(xsh_linetilt_list **list)
free memory associated to a arclist
int xsh_linetilt_is_duplicate(xsh_linetilt_list *list, float lambda, int order)
double * xsh_linetilt_list_get_wavelengths(xsh_linetilt_list *list)
get the wavelength . The returned array must be deallocated by the caller.
xsh_linetilt * xsh_linetilt_new(void)
void xsh_linetilt_list_add(xsh_linetilt_list *list, xsh_linetilt *line, int idx)
int * xsh_linetilt_list_get_slit_index(xsh_linetilt_list *list)
get the slit_index array . The returned array must be deallocated by the caller.
cpl_propertylist * xsh_linetilt_list_get_header(xsh_linetilt_list *list)
double * xsh_linetilt_list_get_posx(xsh_linetilt_list *list)
get the X central positions. The returned array must be deallocated by the caller.
xsh_linetilt_list * xsh_linetilt_list_new(int size, cpl_propertylist *header)
cpl_frame * xsh_linetilt_list_save(xsh_linetilt_list *list, xsh_instrument *instrument, const char *filename, const char *tag, const double kappa, const int niter, float exptime)
save a (ks clip clean) linetilt list to a frame
void xsh_linetilt_free(xsh_linetilt **tilt)
free memory associated to a linetilt
double * xsh_linetilt_list_get_orders(xsh_linetilt_list *list)
get the orders . The returned array must be deallocated by the caller.
double * xsh_linetilt_list_get_deltay(xsh_linetilt_list *list)
get the Y Delta. The returned array must be deallocated by the caller.
double * xsh_linetilt_list_get_pre_posy(xsh_linetilt_list *list)
get the previous Y positions. The returned array must be deallocated by the caller.
double * xsh_linetilt_list_get_posy(xsh_linetilt_list *list)
get the Y central positions. The returned array must be deallocated by the caller.
cpl_propertylist * header