27#ifndef XSH_UTILS_IFU_H
28#define XSH_UTILS_IFU_H
57 const char* order_tab_edges_ifu_name,
58 const char* slit_map_name,
59 const char* wave_map_name);
63 cpl_frame* wavemap_frame,
64 cpl_frame* slitmap_frame,
69 cpl_frame* ifu_cfg_tab_frame,
70 cpl_frame* ifu_cfg_cor_frame,
71 cpl_frame* spectral_format_frame,
72 cpl_frame* model_config_frame,
73 cpl_frame* wavesol_frame,
75 cpl_frameset* frameset,
76 cpl_parameterlist* parameters,
78 const char* recipe_id,
79 const char* rec_prefix,
80 const int frame_is_object);
99cpl_matrix *
xsh_atrous( cpl_vector *spec,
int nscales);
102 double offset_low,
double offset_up);
static xsh_instrument * instrument
cpl_error_code xsh_cube_set_wcs(cpl_propertylist *plist, float cenLambda, float disp_x, float disp_y, float disp_z, float center_x, float center_y, int center_z)
cpl_error_code xsh_table_edges_swap_low_upp(cpl_table **tab)
swap lower and upper edge columns
cpl_error_code xsh_build_ifu_cube(cpl_frame *div_frame, cpl_frame *ifu_cfg_tab_frame, cpl_frame *ifu_cfg_cor_frame, cpl_frame *spectral_format_frame, cpl_frame *model_config_frame, cpl_frame *wavesol_frame, xsh_instrument *instrument, cpl_frameset *frameset, cpl_parameterlist *parameters, xsh_rectify_param *rectify_par, const char *recipe_id, const char *rec_prefix, const int frame_is_object)
Reconstruct IFU cube.
void xsh_edge_check(const int px, const int nx, const int rad_x, int *llx, int *urx)
check edge values (llx,urx) fit in image size (1,nx)
cpl_matrix * xsh_atrous(cpl_vector *spec, int nscales)
Do a wavelet decomposition using atrous from IDL.
cpl_table * xsh_table_edge_prepare(const char *name)
Add to edges table columns to store LOW/CEN/UPP object positions.
cpl_error_code xsh_frame_check_model_cfg_is_proper_for_sci(cpl_frame *model_config_frame, cpl_frame *sci_frame, xsh_instrument *instrument)
Check if a model configuration frame has been corrected for flexures.
cpl_error_code xsh_frame_check_model_cfg_is_afc_corrected(cpl_frame *model_config_frame)
utility to check if a frame has been corrected for flexures
cpl_frame * xsh_build_ifu_map(cpl_frame *div_frame, cpl_frame *wavemap_frame, cpl_frame *slitmap_frame, xsh_instrument *instrument)
Reconstruct IFU cube.
cpl_frameset * xsh_shift_offsettab(cpl_frameset *shift_ifu_frameset, double offset_low, double offset_up)
Do a wavelet decomposition using atrous from IDL.
cpl_error_code xsh_ifu_trace_object_calibrate(const char *ifu_object_ff_name, const char *order_tab_edges_ifu_name, const char *slit_map_name, const char *wave_map_name)
Function to calibrate object traces in IFU mode.
void xsh_convert_xy_to_ws(double x_centroid, double *p_obj_cen, double *p_slit, double *p_wave, const int lly, const int nx, const int row, double *p_obj_cen_s, double *p_obj_cen_w)
convert X-Y coordinates to Wavelengt Slit space