88 double returnvalue = 0;
102 double returnvalue = 0;
103 returnvalue=cpl_propertylist_get_double(plist,
XSH_TPL_END);
116 double returnvalue = 0;
117 returnvalue=cpl_propertylist_get_double(plist,
XSH_GEOLAT);
130 double returnvalue = 0;
131 returnvalue=cpl_propertylist_get_double(plist,
XSH_GEOLON);
144 double returnvalue = 0;
145 returnvalue=cpl_propertylist_get_double(plist,
XSH_UTC);
160 const char* val=NULL;
161 val=cpl_propertylist_get_string(plist,
"ESO INS OPTI1 NAME");
174 return cpl_propertylist_get_double(plist,
"ESO ADA POSANG");
188 double returnvalue = 0;
191 CPL_TYPE_DOUBLE, &returnvalue),
273 const char *arm =
"";
513 double airmass_start=0;
514 double airmass_end=0;
518 return 0.5*(airmass_start+airmass_end);
604 sscanf( str,
"%64lf", &ret ) ;
659 const char * tel =NULL;
732 double returnvalue = 0;
751 double returnvalue = 0;
754 CPL_TYPE_DOUBLE,&returnvalue),
771 double returnvalue = 0;
774 CPL_TYPE_DOUBLE,&returnvalue),
790 double returnvalue = 0;
793 CPL_TYPE_DOUBLE,&returnvalue),
810 double returnvalue = 0;
813 CPL_TYPE_DOUBLE,&returnvalue),
830 double returnvalue = 0;
833 CPL_TYPE_DOUBLE,&returnvalue),
849 double returnvalue = 0;
852 CPL_TYPE_DOUBLE,&returnvalue),
869 double returnvalue = 0;
872 CPL_TYPE_DOUBLE,&returnvalue),
888 double returnvalue = 0;
891 CPL_TYPE_DOUBLE,&returnvalue),
910 cpl_propertylist* plist=NULL;
913 const char* current_tag=NULL;
916 cpl_imagelist* iml=NULL;
920 check(plist=cpl_propertylist_load(fname,0));
922 if(cpl_propertylist_has(plist,
XSH_PCATG)) {
925 if(strcmp(current_tag,tag)!= 0) {
939 check(tab=cpl_table_load(fname,1,0));
940 check(cpl_table_save(tab,plist,NULL,fname,CPL_IO_DEFAULT));
945 check(ima=cpl_image_load(fname,CPL_TYPE_FLOAT,0,0));
946 check(cpl_image_save(ima,fname,CPL_BPP_IEEE_FLOAT,plist,CPL_IO_DEFAULT));
950 check(iml=cpl_imagelist_load(fname,CPL_TYPE_FLOAT,0));
951 check(cpl_image_save(ima,fname,CPL_BPP_IEEE_FLOAT,plist,CPL_IO_DEFAULT));
966 return cpl_error_get_code();
991 const char* value = NULL;
1011 "Error writing keyword '%s'",
XSH_PCATG);
1078 check_msg (cpl_propertylist_update_double
1099 check_msg (cpl_propertylist_update_double
1119 check_msg (cpl_propertylist_update_double
1140 check_msg (cpl_propertylist_update_double
1158 check_msg (cpl_propertylist_update_double
1178 check_msg (cpl_propertylist_update_double
1197 check_msg (cpl_propertylist_update_double
1214 check_msg (cpl_propertylist_update_double
1231 check_msg (cpl_propertylist_update_double
1270 check_msg (cpl_propertylist_update_double
1287 check_msg (cpl_propertylist_update_double
1304 check_msg (cpl_propertylist_update_double
1321 check_msg (cpl_propertylist_update_double
1338 check_msg (cpl_propertylist_update_double
1387 double returnvalue = 0;
1407 double returnvalue = 0;
1410 (plist,
XSH_DET_DIT, CPL_TYPE_DOUBLE, &returnvalue),
1428 int returnvalue = 0;
1448 const char *returnvalue =
"";
1469 const char *returnvalue =
"";
1472 (plist,
XSH_BUNIT, CPL_TYPE_STRING, &returnvalue),
1473 "Error reading keyword '%s'",
XSH_BUNIT);
1489 const char *returnvalue =
"";
1492 (plist,
XSH_CUNIT1, CPL_TYPE_STRING, &returnvalue),
1509 const char *returnvalue =
"";
1512 (plist,
XSH_CUNIT2, CPL_TYPE_STRING, &returnvalue),
1529 const char *returnvalue =
"";
1532 (plist,
XSH_CUNIT3, CPL_TYPE_STRING, &returnvalue),
1550 const char *returnvalue =
"";
1571 const char *returnvalue =
"";
1591 const char *returnvalue =
"";
1594 (plist,
XSH_ARCFILE, CPL_TYPE_STRING, &returnvalue),
1609 const char *returnvalue =
"";
1629 const char *returnvalue =
"";
1632 (plist,
XSH_PCATG, CPL_TYPE_STRING, &returnvalue),
1633 "Error reading keyword '%s'",
XSH_PCATG);
1649 const char *returnvalue =
"";
1669 const char *returnvalue =
"";
1690 const char *returnvalue =
"";
1709 const char *returnvalue =
"";
1712 (plist,
XSH_EXTNAME, CPL_TYPE_STRING, &returnvalue),
1728 const char *returnvalue =
"";
1731 (plist,
XSH_DATE, CPL_TYPE_STRING, &returnvalue),
1732 "Error reading keyword '%s'",
XSH_DATE);
1748 const char *returnvalue =
"";
1767 double returnvalue = 0.0;
1771 "Error reading keyword '%s'",
XSH_PSZX);
1786 double returnvalue = 0.0;
1790 "Error reading keyword '%s'",
XSH_PSZY);
1805 double returnvalue = 0.0;
1826 int returnvalue = 0;
1847 double returnvalue = 0.0;
1868 double returnvalue = 0.0;
1889 double returnvalue = 0.0;
1909 double returnvalue = 0.0;
1928 double returnvalue = 0.0;
1948 double returnvalue = 0.0;
1967 double returnvalue = 0.0;
1984 double returnvalue = 0.0;
2001 double returnvalue = 0.0;
2019 double returnvalue = 0.0;
2023 "Error reading keyword '%s'",
XSH_CD11);
2040 double returnvalue = 0.0;
2044 "Error reading keyword '%s'",
XSH_CD12);
2059 double returnvalue = 0.0;
2063 "Error reading keyword '%s'",
XSH_CD21);
2079 double returnvalue = 0.0;
2083 "Error reading keyword '%s'",
XSH_CD22);
2098 double returnvalue = 0.0;
2102 "Error reading keyword '%s'",
XSH_CD13);
2118 double returnvalue = 0.0;
2122 "Error reading keyword '%s'",
XSH_CD23);
2138 double returnvalue = 0.0;
2142 "Error reading keyword '%s'",
XSH_CD33);
2157 double returnvalue = 0.0;
2161 "Error reading keyword '%s'",
XSH_CD31);
2177 double returnvalue = 0.0;
2181 "Error reading keyword '%s'",
XSH_CD32);
2198 double returnvalue = 0.0;
2218 double returnvalue = 0.0;
2237 double returnvalue = 0.0;
2256 double returnvalue = 0.0;
2276 double returnvalue = 0.0;
2311 "Error writing keyword '%s'",
XSH_CD1);
2327 "Error writing keyword '%s'",
XSH_CD11);
2342 "Error writing keyword '%s'",
XSH_CD12);
2357 "Error writing keyword '%s'",
XSH_CD21);
2372 "Error writing keyword '%s'",
XSH_CD22);
2387 "Error writing keyword '%s'",
XSH_CD13);
2402 "Error writing keyword '%s'",
XSH_CD23);
2418 "Error writing keyword '%s'",
XSH_CD33);
2433 "Error writing keyword '%s'",
XSH_CD32);
2449 "Error writing keyword '%s'",
XSH_CD31);
2609 "Error writing keyword '%s'",
XSH_BUNIT);
2921 double returnvalue = 0.0;
2924 CPL_TYPE_DOUBLE, &returnvalue),
2940 double returnvalue = 0.0;
2943 CPL_TYPE_DOUBLE, &returnvalue),
2959 double returnvalue = 0.0;
2962 CPL_TYPE_DOUBLE, &returnvalue),
2978 double returnvalue = 0.0;
2981 CPL_TYPE_DOUBLE, &returnvalue),
2997 double returnvalue = 0.0;
3000 CPL_TYPE_DOUBLE, &returnvalue),
3016 double returnvalue = 0.0;
3019 CPL_TYPE_DOUBLE, &returnvalue),
3035 double returnvalue = 0.0;
3038 CPL_TYPE_DOUBLE, &returnvalue),
3054 double returnvalue = 0.0;
3057 CPL_TYPE_DOUBLE, &returnvalue),
3073 double returnvalue = 0.0;
3076 CPL_TYPE_DOUBLE, &returnvalue),
3092 double returnvalue = 0.0;
3095 CPL_TYPE_DOUBLE, &returnvalue),
3111 double returnvalue = 0.0;
3114 CPL_TYPE_DOUBLE, &returnvalue),
3130 double returnvalue = 0.0;
3133 CPL_TYPE_DOUBLE, &returnvalue),
3153 const char *returnvalue =
"";
3286 double returnvalue = 0.0;
3289 CPL_TYPE_DOUBLE, &returnvalue),
3304 double returnvalue = 0.0;
3307 CPL_TYPE_DOUBLE, &returnvalue),
3321 double returnvalue = 0.0;
3324 CPL_TYPE_DOUBLE, &returnvalue),
3338 double returnvalue = 0.0;
3341 CPL_TYPE_DOUBLE, &returnvalue),
3355 double returnvalue = 0.0;
3358 CPL_TYPE_DOUBLE, &returnvalue),
3372 double returnvalue = 0.0;
3375 CPL_TYPE_DOUBLE, &returnvalue),
3390 int returnvalue = 0;
3393 CPL_TYPE_INT, &returnvalue),
3411 const char* pinhole = NULL;
3423 xsh_error_msg(
"Undefined pinhole : can't identify DPR keyword %s\n\
3424 Authorized keyword are ( single %s multi %s )", pinhole,
3441 double returnvalue = 0. ;
3444 CPL_TYPE_DOUBLE, &returnvalue),
3461 double returnvalue = 0. ;
3464 CPL_TYPE_DOUBLE, &returnvalue),
3481 double returnvalue = 0. ;
3484 CPL_TYPE_DOUBLE, &returnvalue),
3485 "Error reading keyword '%s'",
XSH_RA ) ;
3502 double returnvalue = 0. ;
3505 CPL_TYPE_DOUBLE, &returnvalue),
3506 "Error reading keyword '%s'",
XSH_DEC ) ;
3515 double returnvalue = 0. ;
3518 CPL_TYPE_DOUBLE, &returnvalue),
3530 double returnvalue = 0. ;
3533 CPL_TYPE_DOUBLE, &returnvalue),
3545 double returnvalue = 0. ;
3548 CPL_TYPE_DOUBLE, &returnvalue),
3560 double returnvalue = 0. ;
3563 CPL_TYPE_DOUBLE, &returnvalue),
3573 double returnvalue = 0. ;
3576 CPL_TYPE_DOUBLE, &returnvalue),
3587 double returnvalue = 0. ;
3590 CPL_TYPE_DOUBLE, &returnvalue),
3602 double returnvalue = 0. ;
3605 CPL_TYPE_DOUBLE, &returnvalue),
3617 double returnvalue = 0. ;
3620 CPL_TYPE_DOUBLE, &returnvalue),
3632 double returnvalue = 0. ;
3635 CPL_TYPE_DOUBLE, &returnvalue),
3647 double returnvalue = 0. ;
3650 CPL_TYPE_DOUBLE, &returnvalue),
3662 double returnvalue = 0. ;
3665 CPL_TYPE_DOUBLE, &returnvalue),
3677 check_msg( cpl_propertylist_update_double
3689 check_msg( cpl_propertylist_update_double
3702 check_msg( cpl_propertylist_update_double
3714 check_msg( cpl_propertylist_update_double
3731 check_msg( cpl_propertylist_update_double
3732 (plist, name, value),
3733 "Error writing keyword '%s'", name);
3749 check_msg( cpl_propertylist_update_double
3750 (plist, name, value),
3751 "Error writing keyword '%s'", name);
3766 check_msg( cpl_propertylist_update_double
3767 (plist, name, value),
3768 "Error writing keyword '%s'", name);
3783 check_msg( cpl_propertylist_update_double
3784 (plist, name, value),
3785 "Error writing keyword '%s'", name);
3801 check_msg( cpl_propertylist_update_double
3802 (plist, name, value),
3803 "Error writing keyword '%s'", name);
3819 check_msg( cpl_propertylist_update_double
3820 (plist, name, value),
3821 "Error writing keyword '%s'", name);
3836 check_msg( cpl_propertylist_update_double
3837 (plist, name, value),
3838 "Error writing keyword '%s'", name);
3853 check_msg( cpl_propertylist_update_double
3854 (plist, name, value),
3855 "Error writing keyword '%s'", name);
3870 check_msg( cpl_propertylist_update_double
3871 (plist, name, value),
3872 "Error writing keyword '%s'", name);
3887 check_msg( cpl_propertylist_update_double
3888 (plist, name, value),
3889 "Error writing keyword '%s'", name);
3900 double returnvalue = 0.;
3904 CPL_TYPE_DOUBLE, &returnvalue),
3905 "Error reading keyword '%s'", name);
3916 double returnvalue = 0.;
3920 CPL_TYPE_DOUBLE, &returnvalue),
3921 "Error reading keyword '%s'", name);
3932 double returnvalue = 0.;
3936 CPL_TYPE_DOUBLE, &returnvalue),
3937 "Error reading keyword '%s'", name);
3948 double returnvalue = 0.;
3952 CPL_TYPE_DOUBLE, &returnvalue),
3953 "Error reading keyword '%s'", name);
3964 double returnvalue = 0.;
3968 CPL_TYPE_DOUBLE, &returnvalue),
3969 "Error reading keyword '%s'", name);
3986 check_msg( cpl_propertylist_update_double
3987 (plist, name, value),
3988 "Error writing keyword '%s'", name);
4004 check_msg( cpl_propertylist_update_double
4005 (plist, name, value),
4006 "Error writing keyword '%s'", name);
4019 check_msg( cpl_propertylist_update_double
4032 double returnvalue = 0;
4035 CPL_TYPE_DOUBLE, &returnvalue),
4048 check_msg( cpl_propertylist_update_double
4063 check_msg( cpl_propertylist_update_double
4078 check_msg( cpl_propertylist_update_double
4093 check_msg( cpl_propertylist_update_double
4106 double returnvalue = 0;
4109 CPL_TYPE_DOUBLE, &returnvalue),
4127 double returnvalue = 0. ;
4128 double dec = 0., ra = 0. ;
4131 CPL_TYPE_DOUBLE, &dec),
4134 CPL_TYPE_DOUBLE, &ra),
4136 returnvalue = sqrt( dec*dec + ra*ra ) ;
4137 xsh_msg_dbg_high(
"dec: %lf, ra: %lf, reloffset: %lf", dec, ra, returnvalue ) ;
4153 double returnvalue = 0 ;
4154 double dec = 0., ra = 0. ;
4157 CPL_TYPE_DOUBLE, &dec),
4160 CPL_TYPE_DOUBLE, &ra),
4162 returnvalue = sqrt( dec*dec + ra*ra ) ;
4163 xsh_msg_dbg_high (
"dec: %lf, ra: %lf, cumoffset: %lf", dec, ra, returnvalue ) ;
4180 double returnvalue = 0 ;
4183 CPL_TYPE_DOUBLE, &returnvalue),
4201 double returnvalue = 0 ;
4204 CPL_TYPE_DOUBLE, &returnvalue),
4221static cpl_error_code
4225 cpl_propertylist_append_string(plist,
"HDUCLASS",
"ESO") ;
4226 cpl_propertylist_set_comment(plist,
"HDUCLASS",
"hdu classification") ;
4228 cpl_propertylist_append_string(plist,
"HDUDOC",
"DICD") ;
4229 cpl_propertylist_set_comment(plist,
"HDUDOC",
"hdu reference document") ;
4231 cpl_propertylist_append_string(plist,
"HDUVERS",
"DICD V6.0") ;
4232 cpl_propertylist_set_comment(plist,
"HDUVERS",
"hdu reference document version") ;
4234 return cpl_error_get_code();
4251 const char* hduclas1,
4252 const char* hduclas2,
4253 const char* hduclas3,
4254 const char* scidata,
4255 const char* errdata,
4256 const char* qualdata,
4265 cpl_propertylist_append_string(plist,
"HDUCLAS1",hduclas1) ;
4266 cpl_propertylist_set_comment(plist,
"HDUCLAS1",
"hdu format classification") ;
4268 cpl_propertylist_append_string(plist,
"HDUCLAS2",hduclas2) ;
4269 cpl_propertylist_set_comment(plist,
"HDUCLAS2",
"hdu type classification") ;
4272 if(!cpl_propertylist_has(plist,
"EXTNAME")) {
4273 cpl_propertylist_append_string(plist,
"EXTNAME",scidata) ;
4274 cpl_propertylist_set_comment(plist,
"EXTNAME",
"name of data extension") ;
4279 if(!cpl_propertylist_has(plist,
"HDUCLAS3")) {
4280 cpl_propertylist_append_string(plist,
"HDUCLAS3",hduclas3) ;
4281 cpl_propertylist_set_comment(plist,
"HDUCLAS3",
"hdu info classification") ;
4283 if(!cpl_propertylist_has(plist,
"SCIDATA")) {
4284 cpl_propertylist_append_string(plist,
"SCIDATA",scidata) ;
4285 cpl_propertylist_set_comment(plist,
"SCIDATA",
"name of data extension") ;
4290 if(!cpl_propertylist_has(plist,
"ERRDATA")) {
4291 cpl_propertylist_append_string(plist,
"ERRDATA",errdata) ;
4292 cpl_propertylist_set_comment(plist,
"ERRDATA",
"name of errs extension") ;
4297 if(!cpl_propertylist_has(plist,
"QUALDATA")) {
4298 cpl_propertylist_append_string(plist,
"QUALDATA",qualdata) ;
4299 cpl_propertylist_set_comment(plist,
"QUALDATA",
"name of qual extension") ;
4303 return cpl_error_get_code();
4308 const double crpix1,
4309 const double crval1,
4310 const double cdelt1) {
4312 cpl_propertylist_append_double(header,
XSH_CRPIX1, crpix1);
4313 cpl_propertylist_append_double(header,
XSH_CRVAL1, crval1);
4314 cpl_propertylist_append_double(header,
XSH_CDELT1, cdelt1);
4315 cpl_propertylist_append_string(header,
XSH_CTYPE1,
"LINEAR");
4317 return cpl_error_get_code();
4323 const double crpix2,
4324 const double crval2,
4325 const double cdelt2) {
4327 cpl_propertylist_append_double(header,
XSH_CRPIX2, crpix2);
4328 cpl_propertylist_append_double(header,
XSH_CRVAL2, crval2);
4329 cpl_propertylist_append_double(header,
XSH_CDELT2, cdelt2);
4330 cpl_propertylist_append_string(header,
XSH_CTYPE2,
"LINEAR");
4332 return cpl_error_get_code();
4337 const double crpix3,
4338 const double crval3,
4339 const double cdelt3) {
4341 cpl_propertylist_append_double(header,
XSH_CRPIX3, crpix3);
4342 cpl_propertylist_append_double(header,
XSH_CRVAL3, crval3);
4343 cpl_propertylist_append_double(header,
XSH_CDELT3, cdelt3);
4344 cpl_propertylist_append_string(header,
XSH_CTYPE3,
"LINEAR");
4346 return cpl_error_get_code();
4350 const double cdelt1,
4351 const double cdelt2) {
4358 return cpl_error_get_code();
4365 const double crval1,
const double cdelt1,
const double crpix2,
4366 const double crval2,
const double cdelt2) {
4372 return cpl_error_get_code();
4375static cpl_error_code
4380 if(cpl_propertylist_has(*plist,kname) > 0) {
4383 check(cpl_propertylist_set_int(*plist,kname,value*fct));
4387 cpl_propertylist_append_int(*plist,kname,1);
4392 return cpl_error_get_code();
4395static cpl_error_code
4400 if(cpl_propertylist_has(*plist,kname) > 0) {
4403 check(cpl_propertylist_set_int(*plist,kname,value/fct));
4407 cpl_propertylist_append_int(*plist,kname,1);
4412 return cpl_error_get_code();
4427 return cpl_error_get_code();
4440 cpl_propertylist* plist=NULL;
4441 cpl_propertylist* head_first=NULL;
4442 cpl_propertylist* head_last=NULL;
4443 const char* fname=NULL;
4444 cpl_frame* frame=NULL;
4446 cpl_error_ensure(header != NULL, CPL_ERROR_NULL_INPUT,
4447 return CPL_ERROR_NULL_INPUT,
"NULL input header");
4448 cpl_error_ensure(set != NULL, CPL_ERROR_NULL_INPUT,
4449 return CPL_ERROR_NULL_INPUT,
"NULL input frameset");
4451 size=cpl_frameset_get_size(set);
4453 return CPL_ERROR_NONE;
4455 for(i=0;i<
size;i++) {
4456 frame=cpl_frameset_get_frame(set,i);
4457 fname=cpl_frame_get_filename(frame);
4460 plist=cpl_propertylist_load(fname,0);
4463 if(expno_cur < expno_min) {
4464 expno_min=expno_cur;
4467 if(expno_cur > expno_max) {
4468 expno_max=expno_cur;
4474 frame=cpl_frameset_get_frame(set,i_min);
4475 fname=cpl_frame_get_filename(frame);
4478 head_first=cpl_propertylist_load_regexp(fname,0,
"START",0);
4479 cpl_propertylist_copy_property_regexp(header,head_first,
"START",0);
4482 frame=cpl_frameset_get_frame(set,i_max);
4483 fname=cpl_frame_get_filename(frame);
4486 head_last=cpl_propertylist_load_regexp(fname,0,
"END",0);
4487 cpl_propertylist_copy_property_regexp(header,head_last,
"END",0);
4494 return cpl_error_get_code();
4503 int expno_min = 999;
4514 cpl_propertylist* plist = NULL;
4515 cpl_propertylist* head_first = NULL;
4516 cpl_propertylist* head_last = NULL;
4517 const char* fname = NULL;
4520 cpl_error_ensure(
first != NULL, CPL_ERROR_NULL_INPUT,
4521 return CPL_ERROR_NULL_INPUT,
"NULL input header");
4522 cpl_error_ensure(second != NULL, CPL_ERROR_NULL_INPUT,
4523 return CPL_ERROR_NULL_INPUT,
"NULL input frameset");
4525 fname = cpl_frame_get_filename(
first);
4526 plist = cpl_propertylist_load(fname, 0);
4528 if (expno_cur < expno_min) {
4529 head_first = cpl_propertylist_duplicate(plist);
4530 expno_min=expno_cur;
4534 fname = cpl_frame_get_filename(second);
4535 plist = cpl_propertylist_load(fname, 0);
4537 if (expno_cur < expno_min) {
4539 head_first = cpl_propertylist_load(cpl_frame_get_filename(second), 0);
4540 head_last = cpl_propertylist_load(cpl_frame_get_filename(
first), 0);
4542 head_last = cpl_propertylist_load(cpl_frame_get_filename(second), 0);
4548 plist = cpl_propertylist_load(cpl_frame_get_filename(
first), 0);
4550 cpl_propertylist_copy_property_regexp(plist,head_first,
"START", 0);
4551 cpl_propertylist_copy_property_regexp(plist,head_last,
"END", 0);
4557 return cpl_error_get_code();
static xsh_instrument * instrument
#define XSH_REGDEBUG(...)
#define check_msg(COMMAND,...)
#define XSH_ASSURE_NOT_ILLEGAL_MSG(cond, msg)
#define xsh_error_msg(...)
#define XSH_ASSURE_NOT_NULL(pointer)
const char * xsh_instrument_arm_tostring(xsh_instrument *i)
Get the string associated with an arm.
XSH_ARM xsh_arm_get(const char *tag)
get the arm from the frame tag
XSH_ARM xsh_instrument_get_arm(xsh_instrument *i)
Get an arm on instrument structure.
#define xsh_msg_error(...)
Print an error message.
#define xsh_msg(...)
Print a message on info level.
#define xsh_msg_dbg_high(...)
const char * xsh_pfits_get_raw1catg(const cpl_propertylist *plist)
find out the ESO.RAW1.CATG
double xsh_pfits_get_wavesol_lambda_min(cpl_propertylist *plist)
find out the min lambda
cpl_error_code xsh_pfits_set_wcs2(cpl_propertylist *header, const double crpix2, const double crval2, const double cdelt2)
double xsh_pfits_get_crval2(const cpl_propertylist *plist)
find out the crval2
void xsh_pfits_set_cd1(cpl_propertylist *plist, double value)
Write the CD1 value.
double xsh_pfits_get_rectify_space_max(cpl_propertylist *plist)
find out the rectify SPACE max
const char * xsh_pfits_get_bunit(const cpl_propertylist *plist)
find out the BUNIT
double xsh_pfits_get_bias_down_median(cpl_propertylist *plist)
find out the BIAS DOWN MEDIAN value
void xsh_pfits_set_cd13(cpl_propertylist *plist, double value)
Write the CD1_3 value.
cpl_error_code xsh_plist_set_extra_keys(cpl_propertylist *plist, const char *hduclas1, const char *hduclas2, const char *hduclas3, const char *scidata, const char *errdata, const char *qualdata, const int type)
set hdu keys
void xsh_pfits_set_b_ra_reloffset(cpl_propertylist *plist, double value)
const char * xsh_pfits_get_dpr_type(const cpl_propertylist *plist)
find out the DPR TECH
double xsh_pfits_get_cumoffsetx(const cpl_propertylist *plist)
void xsh_pfits_set_arm(cpl_propertylist *plist, xsh_instrument *instr)
void xsh_pfits_set_cd22(cpl_propertylist *plist, double value)
Write the CD2_2 value.
double xsh_pfits_get_wavesol_lambda_max(cpl_propertylist *plist)
find out the wavesol max lambda
int xsh_pfits_get_ovscx(const cpl_propertylist *plist)
find out the OVSCX value
void xsh_pfits_set_shiftifu_slitcenref(cpl_propertylist *plist, double value)
double xsh_pfits_get_pszx(const cpl_propertylist *plist)
find out the PSZX (size of 1 pixel in Microns)
double xsh_pfits_get_ra_cumoffset(const cpl_propertylist *plist)
double xsh_pfits_get_bias_up_median(cpl_propertylist *plist)
find out the BIAS UP MEDIAN value
void xsh_pfits_set_pcatg(cpl_propertylist *plist, const char *value)
Write the PCATG value.
void xsh_pfits_set_cd21(cpl_propertylist *plist, double value)
Write the CD2_1 value.
void xsh_pfits_set_slitmap_median_cen(cpl_propertylist *plist, double value)
int xsh_pfits_get_out_ny(const cpl_propertylist *plist)
find out the OUT NY value
double xsh_pfits_get_b_ra_reloffset(const cpl_propertylist *plist)
double xsh_pfits_get_lst(const cpl_propertylist *plist)
find out the LST value
double xsh_pfits_get_cdelt2(const cpl_propertylist *plist)
find out the cdelt2
double xsh_pfits_get_conad(const cpl_propertylist *plist)
find out the CONAD value
void xsh_pfits_set_rectify_bin_lambda(cpl_propertylist *plist, double value)
WRITE the lambda binning.
int xsh_pfits_get_nb_pinhole(const cpl_propertylist *plist)
Get the number of pinhole.
void xsh_pfits_set_rectify_lambda_max(cpl_propertylist *plist, double value)
WRITE the lambda max value.
void xsh_pfits_set_total_frac_sat(cpl_propertylist *plist, double value)
Write the fraction of saturated pixels value.
void xsh_pfits_set_dit(cpl_propertylist *plist, double dit)
Write the DIT value.
static cpl_error_code xsh_plist_set_extra_common_keys(cpl_propertylist *plist)
set hdu keys
double xsh_pfits_get_rectify_lambda_min(cpl_propertylist *plist)
find out the rectify lambda min
void xsh_pfits_set_crpix1(cpl_propertylist *plist, double value)
Write the CRPIX1 value.
double xsh_pfits_get_rectify_space_min(cpl_propertylist *plist)
find out the rectify space min
double xsh_pfits_get_shiftifu_lambdaref(cpl_propertylist *plist)
double xsh_pfits_get_temp5(const cpl_propertylist *plist)
find out the temp5 (VIS prism)
void xsh_pfits_set_dpr_tech(cpl_propertylist *plist, const char *value)
Write the DPR TECH value.
double xsh_pfits_get_nod_jitterwidth(const cpl_propertylist *plist)
Get the Jitter Box size.
double xsh_pfits_get_cdelt3(const cpl_propertylist *plist)
find out the cdelt3
double xsh_pfits_get_airm_end(const cpl_propertylist *plist)
find out the TEL AIRM END value
double xsh_pfits_get_slitmap_median_edglo(const cpl_propertylist *plist)
void xsh_pfits_set_ndit(cpl_propertylist *plist, int ndit)
Write the NDIT value.
int xsh_pfits_get_binx(const cpl_propertylist *plist)
find out the BINX value
void xsh_pfits_set_wavesol_x_min(cpl_propertylist *plist, double value)
WRITE the min x.
void xsh_pfits_set_ctype2(cpl_propertylist *plist, const char *value)
Write the CTYPE2 value.
double xsh_pfits_get_slitmap_median_cen(const cpl_propertylist *plist)
void xsh_pfits_set_slitmap_median_slicup(cpl_propertylist *plist, double value)
double xsh_pfits_get_rectify_bin_lambda(cpl_propertylist *plist)
find out the rectify lambda binning
double xsh_pfits_get_cd13(const cpl_propertylist *plist)
find out the cd1_3
double xsh_pfits_get_wavesol_order_min(cpl_propertylist *plist)
find out the min order
const char * xsh_pfits_get_extname(const cpl_propertylist *plist)
find out the EXTNAME
double xsh_pfits_get_wavesol_y_max(cpl_propertylist *plist)
find out the wavesol max y position
void xsh_pfits_set_shiftifu_lambdaref(cpl_propertylist *plist, double value)
double xsh_pfits_get_bias_up_stdev(cpl_propertylist *plist)
find out the BIAS UP STDEV value
double xsh_pfits_get_wavesol_slit_min(cpl_propertylist *plist)
find out the min slit
double xsh_pfits_get_det_gain(const cpl_propertylist *plist)
find out the ESO DET OUT1 GAIN value
int xsh_pfits_get_chip_nx(const cpl_propertylist *plist)
find out the CHIP NX value
void xsh_pfits_set_rectify_space_max(cpl_propertylist *plist, double value)
WRITE the space (slit) max value.
void xsh_pfits_set_b_dec_cumoffset(cpl_propertylist *plist, double value)
bool xsh_pfits_get_lamp_on_off(const cpl_propertylist *plist)
find out the Lamp status (ON/OFF)
double xsh_pfits_get_det_win1_uit1(const cpl_propertylist *plist)
find out the user defined exposure time
void xsh_pfits_set_cdelt3(cpl_propertylist *plist, double value)
Write the CDELT3 value.
int xsh_pfits_get_ndit(const cpl_propertylist *plist)
find out the NDIT value
double xsh_pfits_get_bias_right_stdev(cpl_propertylist *plist)
find out the BIAS RIGHT STDEV value
double xsh_pfits_get_pixscale(const cpl_propertylist *plist)
find out the number of chopping cycles
void xsh_pfits_set_wavesol_y_min(cpl_propertylist *plist, double value)
WRITE the min y.
void xsh_pfits_set_cdelt1(cpl_propertylist *plist, double value)
Write the CDELT1 value.
double xsh_pfits_get_dit(const cpl_propertylist *plist)
find out the DIT value
XSH_ARM xsh_pfits_get_arm(const cpl_propertylist *plist)
void xsh_pfits_set_slitmap_order_cen(cpl_propertylist *plist, int absorder, double value)
double xsh_pfits_get_seeing_start(const cpl_propertylist *plist)
find out the TEL AMBI START value (Seeing)
double xsh_pfits_get_win1_dit1(const cpl_propertylist *plist)
find out the DET WIN1 DIT1 value
void xsh_pfits_set_shiftifu_slitdownref(cpl_propertylist *plist, double value)
cpl_error_code xsh_pfits_set_wcs3(cpl_propertylist *header, const double crpix3, const double crval3, const double cdelt3)
static cpl_error_code xsh_key_scan_div_by_fct(cpl_propertylist **plist, const char *kname, const int fct)
void xsh_pfits_set_ctype1(cpl_propertylist *plist, const char *value)
Write the CTYPE1 value.
void xsh_pfits_set_extname(cpl_propertylist *plist, const char *value)
Write the EXTNAME value.
double xsh_pfits_get_nodthrow(const cpl_propertylist *plist)
Get the Nod Throw value.
double xsh_pfits_get_tpl_end(const cpl_propertylist *plist)
Find out the template end.
void xsh_pfits_set_nsat(cpl_propertylist *plist, int value)
Write the number of saturated pixels value.
double xsh_pfits_get_geolon(const cpl_propertylist *plist)
Find out the telescope longitude.
double xsh_pfits_get_rectify_bin_space(cpl_propertylist *plist)
find out the rectify space (slit) binning
double xsh_pfits_get_extract_slit_max(cpl_propertylist *plist)
find out the extraction min slit
int xsh_pfits_get_out_nx(const cpl_propertylist *plist)
find out the OUT NX value
double xsh_pfits_get_cd31(const cpl_propertylist *plist)
find out the cd3_1
void xsh_pfits_set_datancom(cpl_propertylist *plist, int value)
double xsh_pfits_get_temp2(const cpl_propertylist *plist)
find out the temp2 (UVB prism)
cpl_error_code xsh_pfits_set_wcs(cpl_propertylist *header, const double crpix1, const double crval1, const double cdelt1, const double crpix2, const double crval2, const double cdelt2)
void xsh_pfits_set_total_nsat(cpl_propertylist *plist, int value)
Write the total number of saturated pixels value.
double xsh_pfits_get_tel_targ_delta(const cpl_propertylist *plist)
Get the TEL TARG DELTA.
double xsh_pfits_get_b_ra_cumoffset(const cpl_propertylist *plist)
double xsh_pfits_get_utc(const cpl_propertylist *plist)
Find out the observation time.
void xsh_pfits_set_bias_right_median(cpl_propertylist *plist, double value)
Write the BIAS RIGHT MEDIAN value.
double xsh_pfits_get_cd32(const cpl_propertylist *plist)
find out the cd3_2
void xsh_pfits_set_cd31(cpl_propertylist *plist, double value)
Write the CD3_2 value.
static cpl_error_code xsh_key_bin_mult_by_fct(cpl_propertylist **plist, const char *kname, const int fct)
const char * xsh_pfits_get_pcatg(const cpl_propertylist *plist)
find out the pcatg
void xsh_pfits_set_cd32(cpl_propertylist *plist, double value)
Write the CD3_2 value.
const char * xsh_pfits_get_raw1name(const cpl_propertylist *plist)
find out the ESO.RAW1.NAME
void xsh_pfits_set_shiftifu_slitref(cpl_propertylist *plist, double value)
void xsh_pfits_set_bias_up_median(cpl_propertylist *plist, double value)
Write the BIAS UP MEDIAN value.
double xsh_pfits_get_shiftifu_slitref(cpl_propertylist *plist)
void xsh_pfits_set_cd23(cpl_propertylist *plist, double value)
Write the CD2_3 value.
double xsh_pfits_get_slit_width(const cpl_propertylist *plist, xsh_instrument *instrument)
find out the INS OPTIx NAME value (the width of the slit)
double xsh_pfits_get_wavesol_x_max(cpl_propertylist *plist)
find out the wavesol max x position
void xsh_pfits_set_rectify_space_min(cpl_propertylist *plist, double value)
WRITE the space (slit) min value.
const char * xsh_pfits_get_cunit2(const cpl_propertylist *plist)
find out the CUNIT2
double xsh_pfits_get_dec(const cpl_propertylist *plist)
Get the Right Ascension.
void xsh_pfits_set_wavesol_y_max(cpl_propertylist *plist, double value)
WRITE the max y position.
void xsh_pfits_set_frac_sat(cpl_propertylist *plist, double value)
Write the fraction of saturated pixels value.
void xsh_pfits_set_b_dec_reloffset(cpl_propertylist *plist, double value)
const char * xsh_pfits_get_date(const cpl_propertylist *plist)
find out the DATE
void xsh_pfits_set_slitmap_median_edglo(cpl_propertylist *plist, double value)
double xsh_pfits_get_posang(const cpl_propertylist *plist)
double xsh_pfits_get_wavesol_y_min(cpl_propertylist *plist)
find out the min y position
void xsh_pfits_set_cunit3(cpl_propertylist *plist, const char *value)
Write the CUNIT1 value.
const char * xsh_pfits_get_telescop(const cpl_propertylist *plist)
find out the TELESCOP value (telescope ID)
double xsh_pfits_get_dec_cumoffset(const cpl_propertylist *plist)
const char * xsh_pfits_get_dpr_catg(const cpl_propertylist *plist)
find out the DPR CATG
void xsh_pfits_set_ctype3(cpl_propertylist *plist, const char *value)
Write the CTYPE3 value.
int xsh_pfits_get_ovscy(const cpl_propertylist *plist)
find out the OVSCY value
void xsh_pfits_set_shiftifu_slitupref(cpl_propertylist *plist, double value)
void xsh_pfits_set_wavesol_slit_min(cpl_propertylist *plist, double value)
WRITE the min slit.
double xsh_pfits_get_cd12(const cpl_propertylist *plist)
find out the cd1_2
void xsh_pfits_set_frac_range_pix(cpl_propertylist *plist, double value)
Write the fraction of range pixels value.
void xsh_pfits_set_slitmap_order_edgup(cpl_propertylist *plist, int absorder, double value)
void xsh_pfits_set_n_range_pix(cpl_propertylist *plist, int value)
Write the number of range pixels value.
void xsh_pfits_set_slitmap_median_edgup(cpl_propertylist *plist, double value)
void xsh_pfits_set_wavemap_order_lambda_max(cpl_propertylist *plist, int absorder, double value)
const char * xsh_pfits_get_date_obs(const cpl_propertylist *plist)
find out the DATE
void xsh_pfits_set_crpix3(cpl_propertylist *plist, double value)
Write the CRPIX3 value.
void xsh_pfits_set_dpr_catg(cpl_propertylist *plist, const char *value)
Write the DPR CATG value.
void xsh_pfits_set_wavesol_lambda_max(cpl_propertylist *plist, double value)
WRITE the max lambda.
cpl_error_code xsh_plist_div_by_fct(cpl_propertylist **plist, const int fctx, const int fcty)
double xsh_pfits_get_slitmap_median_slicup(const cpl_propertylist *plist)
double xsh_pfits_get_tpl_start(const cpl_propertylist *plist)
Find out the template start.
double xsh_pfits_get_tel_targ_alpha(const cpl_propertylist *plist)
Get the TEL TARG ALPHA.
double xsh_pfits_get_crpix1(const cpl_propertylist *plist)
find out the CRPIX1 value
cpl_error_code xsh_pfits_set_wcs1(cpl_propertylist *header, const double crpix1, const double crval1, const double cdelt1)
double xsh_pfits_get_geolat(const cpl_propertylist *plist)
Find out the telescope latitude.
double xsh_pfits_get_gain(const cpl_propertylist *plist)
find out the GAIN value
void xsh_pfits_set_wavesoltype(cpl_propertylist *plist, const char *value)
Write the WAVESOL TYPE value.
double xsh_pfits_get_cd22(const cpl_propertylist *plist)
find out the cd2_2
double xsh_pfits_get_slitmap_median_edgup(const cpl_propertylist *plist)
int xsh_pfits_get_naxis3(const cpl_propertylist *plist)
find out the NAXIS3 value
void xsh_pfits_set_slitmap_order_slicup(cpl_propertylist *plist, int absorder, double value)
void xsh_pfits_set_wavesol_slit_max(cpl_propertylist *plist, double value)
WRITE the max slit.
void xsh_pfits_set_wavesol_order_max(cpl_propertylist *plist, double value)
WRITE the max order.
double xsh_pfits_get_bias_left_stdev(cpl_propertylist *plist)
find out the BIAS LEFT STDEV value
const char * xsh_pfits_get_obs_targ_name(const cpl_propertylist *plist)
find out the ESO.OBS.TARG.NAME
double xsh_pfits_get_crpix3(const cpl_propertylist *plist)
find out the CRPIX3 value
double xsh_pfits_get_cdelt1(const cpl_propertylist *plist)
find out the cdelt1
double xsh_pfits_get_pszy(const cpl_propertylist *plist)
find out the PSZY (size of 1 pixel in Microns)
void xsh_pfits_set_exptime(cpl_propertylist *plist, double value)
Write the EXPTIME value.
void xsh_pfits_set_cunit1(cpl_propertylist *plist, const char *value)
Write the CUNIT1 value.
void xsh_pfits_set_rectify_bin_space(cpl_propertylist *plist, double value)
WRITE the space (slit) binning.
double xsh_pfits_get_cd33(const cpl_propertylist *plist)
find out the cd3_3
const char * xsh_pfits_get_arcfile(const cpl_propertylist *plist)
find out the arcfile
int xsh_pfits_get_biny(const cpl_propertylist *plist)
find out the BINY value
double xsh_pfits_get_dec_reloffset(const cpl_propertylist *plist)
double xsh_pfits_get_nod_reloffset(const cpl_propertylist *plist)
Get the Relative Jitter Offset.
int xsh_pfits_get_chip_ny(const cpl_propertylist *plist)
find out the CHIP NY value
void xsh_pfits_set_dpr_type(cpl_propertylist *plist, const char *value)
Write the DPR TYPE value.
void xsh_pfits_set_bunit(cpl_propertylist *plist, const char *value)
Write the BUNIT value.
const char * xsh_pfits_get_dpr_tech(const cpl_propertylist *plist)
find out the DPR TECH
double xsh_pfits_get_wavesol_x_min(cpl_propertylist *plist)
find out the min x position
double xsh_pfits_get_wavesol_slit_max(cpl_propertylist *plist)
find out the wavesol max slit
double xsh_pfits_get_slitmap_median_sliclo(const cpl_propertylist *plist)
int xsh_pfits_get_obs_id(cpl_propertylist *plist)
find out the OBS ID
double xsh_pfits_get_bias_right_median(cpl_propertylist *plist)
find out the BIAS RIGHT MEDIAN value
void xsh_pfits_set_cd33(cpl_propertylist *plist, double value)
Write the CD3_3 value.
double xsh_pfits_get_exptime(const cpl_propertylist *plist)
find out the exposure time
int xsh_pfits_is_flat(cpl_propertylist *plist)
int xsh_pfits_get_prscx(const cpl_propertylist *plist)
find out the PRSCX value
double xsh_pfits_get_ra(const cpl_propertylist *plist)
Get the Right Ascension.
double xsh_pfits_get_ron(const cpl_propertylist *plist)
find out the RON value
const char * xsh_pfits_get_cunit3(const cpl_propertylist *plist)
find out the CUNIT3
void xsh_pfits_set_b_ra_cumoffset(cpl_propertylist *plist, double value)
void xsh_pfits_set_bias_left_median(cpl_propertylist *plist, double value)
Write the BIAS LEFT MEDIAN value.
double xsh_pfits_get_bias_down_stdev(cpl_propertylist *plist)
find out the BIAS DOWN STDEV value
double xsh_pfits_get_b_dec_cumoffset(const cpl_propertylist *plist)
int xsh_pfits_get_datancom(const cpl_propertylist *plist)
find out the DATANCOM value
void xsh_pfits_set_slitmap_median_sliclo(cpl_propertylist *plist, double value)
cpl_error_code xsh_frame_force_pro_catg(const char *fname, const char *tag)
Force a frame PRO.CATG to a given value.
double xsh_pfits_get_mjdobs(const cpl_propertylist *plist)
Find out the modified julian observation date.
double xsh_pfits_get_b_dec_reloffset(const cpl_propertylist *plist)
void xsh_pfits_set_cunit2(cpl_propertylist *plist, const char *value)
Write the CUNIT2 value.
double xsh_pfits_get_cd21(const cpl_propertylist *plist)
find out the cd2_1
double xsh_pfits_get_airm_mean(const cpl_propertylist *plist)
find out the mean airmass value
void xsh_pfits_set_rectify_lambda_min(cpl_propertylist *plist, double value)
WRITE the lambda min value.
cpl_error_code xsh_pfits_combine_headers(cpl_propertylist *header, cpl_frameset *set)
void xsh_pfits_set_bias_down_stdev(cpl_propertylist *plist, double value)
Write the BIAS DOWN STDEV value.
void xsh_pfits_set_crval3(cpl_propertylist *plist, double value)
Write the CRVAL3 value.
void xsh_pfits_set_crval1(cpl_propertylist *plist, double value)
Write the CRVAL1 value.
void xsh_pfits_set_wavesol_lambda_min(cpl_propertylist *plist, double value)
WRITE the min lambda.
void xsh_pfits_set_bias_right_stdev(cpl_propertylist *plist, double value)
Write the BIAS RIGHT STDEV value.
void xsh_pfits_set_wavesol_x_max(cpl_propertylist *plist, double value)
WRITE the max x position.
int xsh_pfits_get_naxis1(const cpl_propertylist *plist)
find out the NAXIS1 value
double xsh_pfits_get_ra_reloffset(const cpl_propertylist *plist)
cpl_error_code xsh_pfits_set_cd_matrix(cpl_propertylist *header, const double cdelt1, const double cdelt2)
int xsh_pfits_get_FOCU1ENC(const cpl_propertylist *plist)
find out the FOCU1 POS (UVB prism auto-focus temperature)
void xsh_pfits_set_bias_down_median(cpl_propertylist *plist, double value)
Write the BIAS DOWN MEDIAN value.
double xsh_pfits_get_crpix2(const cpl_propertylist *plist)
find out the CRPIX2 value
int xsh_pfits_get_tpl_expno(const cpl_propertylist *plist)
Find out the template start.
void xsh_pfits_set_cdelt2(cpl_propertylist *plist, double value)
Write the CDELT2 value.
double xsh_pfits_get_bias_left_median(cpl_propertylist *plist)
find out the BIAS LEFT MEDIAN value
double xsh_pfits_get_crval1(const cpl_propertylist *plist)
find out the crval1
void xsh_pfits_set_crpix2(cpl_propertylist *plist, double value)
Write the CRPIX2 value.
void xsh_pfits_set_cd12(cpl_propertylist *plist, double value)
Write the CD1_2 value.
void xsh_pfits_set_crval2(cpl_propertylist *plist, double value)
Write the CRVAL2 value.
double xsh_pfits_get_cd23(const cpl_propertylist *plist)
find out the cd2_3
double xsh_pfits_get_seeing_end(const cpl_propertylist *plist)
find out the TEL AMBI END value (Seeing)
void xsh_pfits_set_bias_up_stdev(cpl_propertylist *plist, double value)
Write the BIAS UP STDEV value.
void xsh_pfits_set_extract_slit_min(cpl_propertylist *plist, double value)
WRITE the min slit for extraction.
const char * xsh_pfits_get_wavesoltype(const cpl_propertylist *plist)
Find out the WAVESOL TYPE.
void xsh_pfits_set_bias_left_stdev(cpl_propertylist *plist, double value)
Write the BIAS LEFT STDEV value.
void xsh_pfits_set_cd11(cpl_propertylist *plist, double value)
Write the CD1_1 value.
int xsh_pfits_get_prscy(const cpl_propertylist *plist)
find out the PRSCY value
double xsh_pfits_get_extract_slit_min(cpl_propertylist *plist)
find out the extraction min slit
void xsh_pfits_set_extract_slit_max(cpl_propertylist *plist, double value)
WRITE the min slit for extraction.
double xsh_pfits_get_nod_cumoffset(const cpl_propertylist *plist)
Get the Cumulative Jitter Offset.
int xsh_pfits_get_naxis(const cpl_propertylist *plist)
find out the NAXIS value
void xsh_pfits_set_slitmap_order_edglo(cpl_propertylist *plist, int absorder, double value)
cpl_error_code xsh_pfits_combine_two_frames_headers(cpl_frame *first, cpl_frame *second)
double xsh_pfits_get_cd11(const cpl_propertylist *plist)
find out the cd1_1
char * xsh_pfits_get_slit_value(const cpl_propertylist *plist, xsh_instrument *instrument)
find out the INS OPTIx NAME value (the width of the slit)
double xsh_pfits_get_cumoffsety(const cpl_propertylist *plist)
const char * xsh_pfits_get_cunit1(const cpl_propertylist *plist)
find out the CUNIT1
double xsh_pfits_get_rectify_lambda_max(cpl_propertylist *plist)
find out the rectify lambda max
double xsh_pfits_get_airm_start(const cpl_propertylist *plist)
find out the TEL AIRM START value
double xsh_pfits_get_posangle(const cpl_propertylist *plist)
find out the value of the CUMOFFSETX keyword in a header
int xsh_pfits_is_obs(cpl_propertylist *plist)
double xsh_pfits_get_det_pxspace(const cpl_propertylist *plist)
find out the DET CHIP PXSPACE
void xsh_pfits_set_slitmap_order_sliclo(cpl_propertylist *plist, int absorder, double value)
double xsh_pfits_get_wavesol_order_max(cpl_propertylist *plist)
find out the wavesol max order
void xsh_pfits_set_wavemap_order_lambda_min(cpl_propertylist *plist, int absorder, double value)
void xsh_pfits_set_wavesol_order_min(cpl_propertylist *plist, double value)
WRITE the min order.
int xsh_pfits_get_naxis2(const cpl_propertylist *plist)
find out the NAXIS2 value
double xsh_pfits_get_crval3(const cpl_propertylist *plist)
find out the crval3
double xsh_pfits_get_temp82(const cpl_propertylist *plist)
find out the temp82 (NIR prisms)
void xsh_free_image(cpl_image **i)
Deallocate an image and set the pointer to NULL.
cpl_error_code xsh_get_property_value(const cpl_propertylist *plist, const char *keyword, cpl_type keywordtype, void *result)
Read a property value from a property list.
void xsh_free_table(cpl_table **t)
Deallocate a table and set the pointer to NULL.
void xsh_free_propertylist(cpl_propertylist **p)
Deallocate a property list and set the pointer to NULL.
void xsh_free_imagelist(cpl_imagelist **i)
Deallocate an image list and set the pointer to NULL.
#define XSH_NOD_RELATIVE_B_OFFSET_DEC
#define XSH_NOD_RELATIVE_OFFSET_DEC
#define XSH_TEL_TARG_DELTA
#define XSH_SLITMAP_ORDER_EDGLO
#define XSH_WAVESOL_X_MAX
#define XSH_BIAS_DOWN_MEDIAN
#define XSH_QC_NPIXRANGE_C
#define XSH_WAVESOL_Y_MAX
#define XSH_DET_WIN1_UIT1
#define XSH_SLITMAP_MEDIAN_CEN
#define XSH_WAVESOL_LAMBDA_MAX
#define XSH_BIAS_RIGHT_STDEV
#define XSH_QC_NPIXSAT_TOT
#define XSH_SLITMAP_ORDER_EDGUP
#define XSH_DPR_TECH_MULTI_PINHOLE
#define XSH_WAVESOL_ORDER_MIN
#define XSH_NOD_RELATIVE_B_OFFSET_RA
#define XSH_RECTIFY_BIN_SPACE
#define XSH_BIAS_RIGHT_MEDIAN
#define XSH_EXTRACT_SLIT_MIN
#define XSH_SHIFTIFU_SLITDOWNREF
#define XSH_SHIFTIFU_SLITCENREF
#define XSH_SLITMAP_ORDER_CEN
#define XSH_NOD_RELATIVE_OFFSET_RA
#define XSH_SLITMAP_ORDER_SLICUP
#define XSH_PFITS_GET(RET, LIST, KW, TYPE)
#define XSH_NOD_CUMULATIVE_OFFSETY
#define XSH_QC_FPIXSAT_TOT_C
#define XSH_DET_WIN1_DIT1
#define XSH_WAVESOL_LAMBDA_MIN
#define XSH_WAVESOL_X_MIN
#define XSH_QC_FPIXRANGE_C
#define XSH_WAVESOL_Y_MIN
#define XSH_BIAS_LEFT_MEDIAN
#define XSH_NOD_CUMULATIVE_OFFSET_RA
#define XSH_WAVESOL_ORDER_MAX
#define XSH_WAVESOL_SLIT_MAX
#define XSH_RECTIFY_SPACE_MAX
#define XSH_NOD_CUMULATIVE_OFFSET_DEC
#define XSH_BIAS_UP_STDEV
#define XSH_WAVESOL_SLIT_MIN
#define XSH_QC_NPIXSAT_TOT_C
#define XSH_RECTIFY_BIN_LAMBDA
#define XSH_BIAS_DOWN_STDEV
#define XSH_NOD_JITTER_BOX
#define XSH_SLITMAP_MEDIAN_SLICUP
#define XSH_DPR_TECH_SINGLE_PINHOLE
#define XSH_SHIFTIFU_WAVEREF
#define XSH_SHIFTIFU_SLITUPREF
#define XSH_SLITMAP_MEDIAN_EDGUP
#define XSH_SLITMAP_ORDER_SLICLO
#define XSH_WAVEMAP_ORDER_LAMBDA_MAX
#define XSH_BIAS_LEFT_STDEV
#define XSH_OBS_TARG_NAME
#define XSH_RECTIFY_LAMBDA_MIN
#define XSH_BIAS_UP_MEDIAN
#define XSH_SHIFTIFU_SLITREF
#define XSH_SLITMAP_MEDIAN_EDGLO
#define XSH_WAVEMAP_ORDER_LAMBDA_MIN
#define XSH_NOD_CUMULATIVE_B_OFFSET_DEC
#define XSH_SLITMAP_MEDIAN_SLICLO
#define XSH_NOD_CUMULATIVE_B_OFFSET_RA
#define XSH_TEL_TARG_ALPHA
#define XSH_NOD_CUMULATIVE_OFFSETX
#define XSH_RECTIFY_LAMBDA_MAX
#define XSH_RECTIFY_SPACE_MIN
#define XSH_QC_FPIXSAT_TOT
#define XSH_EXTRACT_SLIT_MAX