00001 #include <qfits.h>
00002 #include <cpl.h>
00003 #include "eclipse.h"
00004 #include "sinfoni_key_names.h"
00005 #include "fitshead.h"
00006 #include "utilities.h"
00007 #include "sinfoni_pro_types.h"
00008
00009
00010 OneCube * cube_getvig(
00011 OneCube * cube_in,
00012 int loleft_x,
00013 int loleft_y,
00014 int upright_x,
00015 int upright_y);
00016
00017 OneImage * image_getvig(
00018 OneImage * image_in,
00019 int loleft_x,
00020 int loleft_y,
00021 int upright_x,
00022 int upright_y);
00023
00024 int
00025 set_wcs_cube(cpl_imagelist* cub, char* name, double clambda,
00026 double dis, double cpix, double cx, double cy);
00027
00028 int
00029 set_wcs_image(cpl_image* img, char* name, double cx, double cy);
00030
00031 int
00032 set_wcs_spectrum(cpl_image* img, char* name, double clambda, double dis, double cpix);
00033
00034
00035 void change_plist_spectrum (cpl_propertylist * plist,
00036 double cenLambda,
00037 double dispersion,
00038 int cenpix);
00039
00040 void change_plist_cube (cpl_propertylist * plist,
00041 char * name,
00042 float cenLambda,
00043 float dispersion,
00044 int cenpix,
00045 float center_x,
00046 float center_y );
00047
00048 void change_plist_image (cpl_propertylist * plist,
00049 char * name,
00050 float center_x,
00051 float center_y );
00052
00053 int
00054 extract_ao_info(cpl_frameset* obj_set,cpl_frameset** set,
00055 const char* recid,cpl_parameterlist* config);
00056 OneCube* fine_tune(OneCube* cube,float* correct_dist, const char* method, const int order,
00057 const int nslits) ;
00058 int
00059 object_assign_offset(char* name, const int n, double* ref_offx, double* ref_offy, float** offsetx,
00060 float** offsety);
00061
00062 int
00063 assign_offset(const int n,char* name,float* offsetx,float* offsety,
00064 const float ref_offx,const float ref_offy);
00065
00066
00067 OneCube** sinfoni_correct_median(OneCube** cubeobject, const int n_cubes);
00068
00069 cpl_imagelist* sinfoni_cube2imglist(OneCube* cube);
00070 OneCube** sinfoni_correct_sky2(OneCube** cubes,
00071 const int nc,
00072 OneCube* sky_cube,
00073 OneCube* med_cube,
00074 OneCube* msk_cube,
00075 OneCube* avg_cube,
00076 OneCube* sig_cube,
00077 OneCube* ovr_cube);
00078
00079 OneCube** sinfoni_correct_sky(OneCube** cubes,
00080 const int nc,
00081 OneCube* sky_cube);
00082
00083 int sinfoni_correct_median_it(OneCube** inp);