39 #include "omega_utils.h"
40 #include "omega_fits.h"
98 fr = cpl_frame_duplicate(inframe);
101 im = cpl_image_load(cpl_frame_get_filename(inframe),type,0,extnum);
103 cpl_msg_error(cpl_func,
"Unable to load %s -- %s\n",
104 cpl_frame_get_filename(inframe),cpl_error_get_message());
110 p = cpl_malloc(
sizeof(omega_fits));
119 p->fname = cpl_strdup(cpl_frame_get_filename(inframe));
127 if (cpl_propertylist_has(p->ehu,
"EXTNAME")) {
128 p->extname = cpl_strdup(cpl_propertylist_get_string(p->ehu,
"EXTNAME"));
131 nf = 11 + log10(extnum);
132 p->extname = cpl_malloc(nf);
133 (void)snprintf(p->extname,nf,
"DET1.CHIP%d",extnum);
135 nf = strlen(p->extname) + strlen(p->fname) + 3;
136 p->fullname = cpl_malloc(nf);
137 (void)snprintf(p->fullname,nf,
"%s[%s]",p->fname,p->extname);
173 p = cpl_malloc(
sizeof(omega_fits));
188 if (in->frame !=NULL) p->frame = cpl_frame_duplicate(in->frame);
189 if (in->image != NULL) p->image = cpl_image_duplicate(in->image);
190 if (in->phu != NULL) p->phu = cpl_propertylist_duplicate(in->phu);
191 if (in->ehu != NULL) p->ehu = cpl_propertylist_duplicate(in->ehu);
192 if (in->fname != NULL) p->fname = cpl_strdup(in->fname);
193 if (in->extname != NULL) p->extname = cpl_strdup(in->extname);
194 if (in->fullname != NULL) p->fullname = cpl_strdup(in->fullname);
195 p->extnum = in->extnum;
196 p->status = in->status;
241 p = cpl_malloc(cpl_frameset_get_size(f)*
sizeof(omega_fits *));
245 for (i = 0; i < cpl_frameset_get_size(f); i++) {
246 p[i] =
omega_fits_load(cpl_frameset_get_position_const(f,i),type,exten);
289 freespace(p->extname);
290 freespace(p->fullname);
323 for (i = 0; i < n; i++)
458 p->phu = cpl_propertylist_load(p->fname,0);
500 if (p->ehu == NULL) {
501 p->ehu = cpl_propertylist_load(p->fname,p->extnum);
681 if (cpl_error_get_code() != CPL_ERROR_NONE) {
682 cpl_msg_error(
"",
"%s",cpl_error_get_message());
723 if (p == NULL || fname == NULL)
729 p->fname = cpl_strdup(fname);
762 cpl_propertylist *phu,
763 cpl_propertylist *ehu) {
773 p = cpl_malloc(
sizeof(omega_fits));
781 p->phu = cpl_propertylist_duplicate(phu);
782 else if (model != NULL)
787 p->ehu = cpl_propertylist_duplicate(ehu);
788 else if (model != NULL)
char * omega_fits_get_filename(omega_fits *p)
void omega_fits_delete(omega_fits *p)
cpl_image * omega_fits_get_image(omega_fits *p)
char * omega_fits_get_extname(omega_fits *p)
int omega_fits_get_status(omega_fits *p)
omega_fits ** omega_fits_load_list(const cpl_frameset *f, cpl_type type, int exten)
cpl_propertylist * omega_fits_get_phu(omega_fits *p)
char * omega_fits_get_fullname(omega_fits *p)
omega_fits * omega_fits_load(const cpl_frame *inframe, cpl_type type, int extnum)
void omega_fits_set_filename(omega_fits *p, char *fname)
int omega_fits_get_extnum(omega_fits *p)
cpl_frame * omega_fits_get_frame(omega_fits *p)
void omega_fits_delete_list(omega_fits **p, int n)
omega_fits * omega_fits_wrap(cpl_image *im, omega_fits *model, cpl_propertylist *phu, cpl_propertylist *ehu)
cpl_propertylist * omega_fits_get_ehu(omega_fits *p)
omega_fits * omega_fits_duplicate(omega_fits *in)
int omega_fits_set_error(omega_fits *p, int status)