00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082
00083
00084
00085
00086
00087
00088
00089
00090
00091
00092
00093
00094
00095
00096
00097
00098
00099 #ifndef FLAMES_MIDAS_DEF_H
00100 #define FLAMES_MIDAS_DEF_H
00101
00102 #ifdef HAVE_CONFIG_H
00103 # include <config.h>
00104 #endif
00105 #include <uves_cpl_size.h>
00106
00107
00108
00109 #include <fitsio.h>
00110 #include <cpl.h>
00111
00112
00113
00114
00115
00116
00117
00118
00119
00120 #define MAREMMA 2
00121
00122
00123 #define D_OLD_FORMAT 0
00124 #define D_I1_FORMAT 1
00125 #define D_I2_FORMAT 2
00126 #define D_UI2_FORMAT 102
00127 #define D_I4_FORMAT 4
00128 #define D_R4_FORMAT 10
00129 #define D_R8_FORMAT 18
00130
00131
00132 #define D_L4_FORMAT 24
00133 #define D_C_FORMAT 30
00134
00135
00136
00137
00138
00139
00140
00141 #define F_IMA_TYPE 1
00142
00143 #define F_TBL_TYPE 3
00144
00145
00146
00147
00148
00149
00150
00151
00152
00153
00154 #define F_I_MODE 0
00155 #define F_O_MODE 1
00156 #define F_IO_MODE 2
00157
00158
00159
00160
00161
00162
00163
00164
00165
00166
00167
00168 #define F_D_MODE 2
00169
00170
00171 #define TEXT_LEN 84
00172
00173
00174
00175
00176
00177
00178 #define SCSPRO(name) flames_midas_scspro(name)
00179 #define SCSEPI() flames_midas_scsepi()
00180
00181
00182
00183
00184 #define SCTPUT(msg) flames_midas_sctput(msg, __func__, __FILE__, __LINE__)
00185
00186
00187 #define SCKGETC(key, felem, maxvals, actvals, values) flames_midas_sckgetc(key, felem, maxvals, actvals, values)
00188 #define SCKGETC_fs(key, felem, maxvals, actvals, values) flames_midas_sckgetc_fs(key, felem, maxvals, actvals, values)
00189 #define SCKGETC_fsp(key, felem, maxvals, actvals, values) flames_midas_sckgetc_fsp(key, felem, maxvals, actvals, values)
00190 #define SCKFND(key, type, noelem, bytelem) flames_midas_sckfnd(key, type, noelem, bytelem)
00191 #define SCKFND_double(key, type, noelem, bytelem) flames_midas_sckfnd_double(key, type, noelem, bytelem)
00192 #define SCKFND_float(key, type, noelem, bytelem) flames_midas_sckfnd_float(key, type, noelem, bytelem)
00193 #define SCKFND_int(key, type, noelem, bytelem) flames_midas_sckfnd_int(key, type, noelem, bytelem)
00194 #define SCKFND_string(key, type, noelem, bytelem) flames_midas_sckfnd_string(key, type, noelem, bytelem)
00195
00196 #define SCKRDD(key, felem, maxvals, actvals, values, unit, null) flames_midas_sckrdd(key, felem, maxvals, actvals, values, unit, null)
00197 #define SCKRDC(key, noelem, felem, maxvals, actvals, values, unit, null) flames_midas_sckrdc(key, noelem, felem, maxvals, actvals, values, unit, null)
00198 #define SCKRDI(key, felem, maxvals, actvals, values, unit, null) flames_midas_sckrdi(key, felem, maxvals, actvals, values, unit, null)
00199 #define SCKRDR(key, felem, maxvals, actvals, values, unit, null) flames_midas_sckrdr(key, felem, maxvals, actvals, values, unit, null)
00200
00201 #define SCKWRC(key, noelem, values, felem, maxval, unit) flames_midas_sckwrc(key, noelem, values, felem, maxval, unit)
00202 #define SCKWRD(key, values, felem, maxval, unit) flames_midas_sckwrd(key, values, felem, maxval, unit)
00203 #define SCKWRI(key, values, felem, maxval, unit) flames_midas_sckwri(key, values, felem, maxval, unit)
00204
00205
00206 #define SCCADD(catfile, name, ident) flames_midas_sccadd(catfile, name, ident)
00207 #define SCCCRE(catfile, type, flag) flames_midas_scccre(catfile, type, flag)
00208 #define SCCFND(catfile, frmno, frame) flames_midas_sccfnd(catfile, frmno, frame)
00209 #define SCCGET(catfile, flag, name, ident, no) flames_midas_sccget(catfile, flag, name, ident, no)
00210 #define SCCSHO(catfile, noent, last) flames_midas_sccsho(catfile, noent, last)
00211
00212
00213 #define SCFINF(name, fno, ibuf) flames_midas_scfinf(name, fno, ibuf)
00214 #define SCFCRE(name, dattype, iomode, filtype, size, imno) flames_midas_scfcre(name, dattype, iomode, filtype, size, imno)
00215 #define SCFOPN(name, dattype, newopn, filtype, imno) flames_midas_scfopn(name, dattype, newopn, filtype, imno)
00216 #define SCFCLO(imno) flames_midas_scfclo(imno)
00217 #define SCFPUT(imno, felem, size, bufadr) flames_midas_scfput(imno, felem, size, bufadr)
00218 #define SCFGET(imno, felem, size, actsize, bufadr) flames_midas_scfget(imno, felem, size, actsize, bufadr)
00219
00220
00221 #define SCDFND(imno, descr, type, noelem, bytelem) flames_midas_scdfnd(imno, descr, type, noelem, bytelem)
00222 #define SCDPRS(imno, descr, type, noelem, bytelem) flames_midas_scdprs(imno, descr, type, noelem, bytelem)
00223 #define SCDRDI(imno, descr, felem, maxvals, actvals, values, unit, null) flames_midas_scdrdi(imno, descr, felem, maxvals, actvals, values, unit, null)
00224 #define SCDRDD(imno, descr, felem, maxvals, actvals, values, unit, null) flames_midas_scdrdd(imno, descr, felem, maxvals, actvals, values, unit, null)
00225 #define SCDWRI(imno, descr, values, felem, nval, unit) flames_midas_scdwri(imno, descr, values, felem, nval, unit)
00226 #define SCDWRD(imno, descr, values, felem, nval, unit) flames_midas_scdwrd(imno, descr, values, felem, nval, unit)
00227 #define SCDWRR(imno, descr, values, felem, nval, unit) flames_midas_scdwrr(imno, descr, values, felem, nval, unit)
00228 #define SCDWRC(imno, descr, noelm, values, felem, nval, unit) flames_midas_scdwrc(imno, descr, noelm, values, felem, nval, unit)
00229 #define SCDCOP(from, to, mask) flames_midas_scdcop(from, to, mask)
00230 #define SCDCOP_nonaxis(from, to, mask) flames_midas_scdcop_nonaxis(from, to, mask)
00231 #define SCDDEL(imno, descr) flames_midas_scddel(imno, descr)
00232 #define SCDRDR(imno, descr, felem, maxvals, actvals, values, unit, null) flames_midas_scdrdr(imno, descr, felem, maxvals, actvals, values, unit, null)
00233 #define SCDRDC(imno, descr, noelem, felem, maxvals, actvals, values, unit, null) flames_midas_scdrdc(imno, descr, noelem, felem, maxvals, actvals, values, unit, null)
00234
00235 #define SCDGETC(imno, descr, felem, maxvals, actvals, values) SCDRDC(imno, descr, 1, felem, maxvals, actvals, values, NULL, NULL)
00236
00237
00238 #define TCTOPN(name, mode, tid) flames_midas_tctopn(name, mode, -1, tid)
00239 #define TCTCLO(tid) flames_midas_tctclo(tid)
00240 #define TCCSER(tid, colref, column) flames_midas_tccser(tid, colref, column)
00241 #define TCIGET(tid, column, row) flames_midas_tciget(tid, column, row)
00242
00243 #define TCERDD(tid, row, column, value, null) flames_midas_tcerdd(tid, row, column, value, null)
00244
00245 #define TCBGET(tid, column, dtype, items, bytes) flames_midas_tcbget(tid, column, dtype, items, bytes)
00246
00247 #define TCCINI(tid, dtype, alen, form, unit, label, column) flames_midas_tccini(tid, dtype, alen, form, unit, label, column)
00248 #define TCDGET(tid, store) flames_midas_tcdget(tid, store)
00249
00250 #define TCERDC(tid, row, column, values, null) flames_midas_tcerdc(tid, row, column, values, null)
00251 #define TCERDI(tid, row, column, values, null) flames_midas_tcerdi(tid, row, column, values, null)
00252 #define TCERDR(tid, row, column, values, null) flames_midas_tcerdr(tid, row, column, values, null)
00253 #define TCEWRC(tid, row, column, value) flames_midas_tcewrc(tid, row, column, value)
00254 #define TCEWRD(tid, row, column, value) flames_midas_tcewrd(tid, row, column, value)
00255 #define TCEWRI(tid, row, column, value) flames_midas_tcewri(tid, row, column, value)
00256 #define TCEWRR(tid, row, column, value) flames_midas_tcewrr(tid, row, column, value)
00257
00258 #define TCARDC(tid, row, col, index, items, value) flames_midas_tcardc(tid, row, col, index, items, value)
00259 #define TCARDD(tid, row, col, index, items, value) flames_midas_tcardd(tid, row, col, index, items, value)
00260 #define TCARDI(tid, row, col, index, items, value) flames_midas_tcardi(tid, row, col, index, items, value)
00261 #define TCARDR(tid, row, col, index, items, value) flames_midas_tcardr(tid, row, col, index, items, value)
00262 #define TCAWRC(tid, row, col, index, items, value) flames_midas_tcawrc(tid, row, col, index, items, value)
00263 #define TCAWRD(tid, row, col, index, items, value) flames_midas_tcawrd(tid, row, col, index, items, value)
00264 #define TCAWRI(tid, row, col, index, items, value) flames_midas_tcawri(tid, row, col, index, items, value)
00265 #define TCAWRR(tid, row, col, index, items, value) flames_midas_tcawrr(tid, row, col, index, items, value)
00266
00267 #define TCFGET(tid, column, form, dtype) flames_midas_tcfget(tid, column, form, dtype)
00268 #define TCLGET(tid, column, label) flames_midas_tclget(tid, column, label)
00269 #define TCLSER(tid, label, column) flames_midas_tclser(tid, label, column)
00270 #define TCSGET(tid, row, value) flames_midas_tcsget(tid, row, value)
00271 #define TCSPUT(tid, row, value) flames_midas_tcsput(tid, row, value)
00272
00273
00274 #define TCTINI(name, mode, allrow, tid) flames_midas_tctopn(name, mode, allrow, tid)
00275
00276 #define TCUGET(tid, column, unit) flames_midas_tcuget(tid, column, unit)
00277
00278 #define flames_midas_fail() flames_midas_fail_macro(__FILE__, __func__, __LINE__)
00279 #define flames_midas_error(status) flames_midas_error_macro(__FILE__, __func__, __LINE__, status)
00280
00281
00282
00283
00284
00285
00286 int flames_midas_scspro(const char *name);
00287 int flames_midas_scsepi(void);
00288 int flames_midas_fail_macro(const char *file, const char *function, int line);
00289 int flames_midas_error_macro(const char *file, const char *function, int line,
00290 int status);
00291
00292
00293
00294
00295
00296 int flames_midas_sckgetc(const char *key,
00297 int felem, int maxvals,
00298 int *actvals, char *values);
00299 int flames_midas_sckgetc_fs(const cpl_frameset *key,
00300 int felem, int maxvals,
00301 int *actvals, const cpl_frameset **values);
00302
00303 int flames_midas_sckgetc_fsp(cpl_frameset **key,
00304 int felem, int maxvals,
00305 int *actvals, cpl_frameset ***values);
00306
00307 int flames_midas_sckrdd(const double *key, int felem, int maxvals,
00308 int *actvals, double *values, int *unit, int *null);
00309 int flames_midas_sckrdi(const int *key, int felem, int maxvals,
00310 int *actvals, int *values, int *unit, int *null);
00311 int flames_midas_sckrdr(const float *key, int felem, int maxvals,
00312 int *actvals, float *values, int *unit, int *null);
00313 int flames_midas_sckrdc(const char *key, int noelem, int felem, int maxvals,
00314 int *actvals, char *values, int *unit, int *null);
00315
00316 int flames_midas_sckwri(int *key, const int *values,
00317 int felem, int maxval, int *unit);
00318 int flames_midas_sckwrd(double *key, const double *values,
00319 int felem, int maxval, int *unit);
00320 int flames_midas_sckwrc(char *key, int noelem,
00321 const char *values, int felem, int maxvals, int *unit);
00322
00323 int flames_midas_sckfnd_double(const double *key, char *type, int *noelem, int *bytelem);
00324 int flames_midas_sckfnd_float(const float *key, char *type, int *noelem, int *bytelem);
00325 int flames_midas_sckfnd_int(const int *key, char *type, int *noelem, int *bytelem);
00326 int flames_midas_sckfnd_string(const char *key, char *type, int *noelem, int *bytelem);
00327
00328
00329
00330 int flames_midas_sctput(const char *msg,
00331 const char *func, const char *file, int line);
00332
00333
00334 int flames_midas_scfopn(const char *name, int dattype, int newopn, int filtype, int *imno);
00335 int flames_midas_scfclo(int imno);
00336 int flames_midas_scfcre(const char *name, int dattype, int iomode, int filtype,
00337 int size, int *imno);
00338 int flames_midas_scfinf(const char *name, int fno, int *ibuf);
00339 int flames_midas_scfget(int imno, int felem, int size, int *actsize, char *bufadr);
00340 int flames_midas_scfput(int imno, int felem, int size, const char *bufadr);
00341
00342
00343 int flames_midas_scdfnd(int imno, const char *descr,
00344 char *type, int *noelem, int *bytelem);
00345
00346 int flames_midas_scdprs(int imno, const char *descr,
00347 char *type, int *noelem, int *bytelem);
00348
00349 int flames_midas_scdrdi(int imno, const char *descr,
00350 int felem, int maxvals,
00351 int *actvals, int *values,
00352 int *unit, int *null);
00353 int flames_midas_scdrdd(int imno, const char *descr,
00354 int felem, int maxvals,
00355 int *actvals, double *values,
00356 int *unit, int *null);
00357 int flames_midas_scdrdr(int imno, const char *descr,
00358 int felem, int maxvals,
00359 int *actvals, float *values,
00360 int *unit, int *null);
00361 int flames_midas_scdrdc(int imno, const char *descr,
00362 int noelem,
00363 int felem, int maxvals,
00364 int *actvals, char *values,
00365 int *unit, int *null);
00366
00367 int flames_midas_scdwri(int imno, const char *descr, const int *values,
00368 int felem, int nval, const int *unit);
00369 int flames_midas_scdwrd(int imno, const char *descr, const double *values,
00370 int felem, int nval, const int *unit);
00371
00372 int flames_midas_scdwrr(int imno, const char *descr, const float *values,
00373 int felem, int nval, const int *unit);
00374 int flames_midas_scdwrc(int imno, const char *descr, int noelm, const char *values,
00375 int felem, int nval, const int *unit);
00376
00377 int flames_midas_scdcop(int from, int to, int mask);
00378 int flames_midas_scdcop_nonaxis(int from, int to, int mask);
00379
00380 int flames_midas_scddel(int imno, const char *descr);
00381
00382
00383 int flames_midas_tctopn(const char *name, int mode, int allrow, int *tid);
00384 int flames_midas_tctclo(int tid);
00385 int flames_midas_tccser(int tid, const char *colref, int *column);
00386 int flames_midas_tciget(int tid, int *column, int *row);
00387
00388 int flames_midas_tcardc(int tid, int row, int col, int index, int items, char *value);
00389 int flames_midas_tcardd(int tid, int row, int col, int index, int items, double *value);
00390 int flames_midas_tcardi(int tid, int row, int col, int index, int items, int *value);
00391 int flames_midas_tcardr(int tid, int row, int col, int index, int items, float *value);
00392 int flames_midas_tcawrc(int tid, int row, int col, int index, int items, const char *value);
00393 int flames_midas_tcawrd(int tid, int row, int col, int index, int items, const double *value);
00394 int flames_midas_tcawri(int tid, int row, int col, int index, int items, const int *value);
00395 int flames_midas_tcawrr(int tid, int row, int col, int index, int items, const float *value);
00396 int flames_midas_tcbget(int tid, int column, int *dtype, int *items, int *bytes);
00397 int flames_midas_tcdget(int tid, int *store);
00398 int flames_midas_tcfget(int tid, int column, char *form, int *dtype);
00399 int flames_midas_tclget(int tid, int column, char *label);
00400 int flames_midas_tcuget(int tid, int column, char *unit);
00401 int flames_midas_tclser(int tid, const char *label, int *column);
00402 int flames_midas_tccini(int tid, int dtype, int alen,
00403 const char *form, const char *unit, const char *label,
00404 int *column);
00405 int flames_midas_tcerdc(int tid, int row, int column, char *values, int *null);
00406 int flames_midas_tcerdi(int tid, int row, int column, int *values, int *null);
00407 int flames_midas_tcerdr(int tid, int row, int column, float *values, int *null);
00408 int flames_midas_tcerdd(int tid, int row, int column,
00409 double *value, int *null);
00410 int flames_midas_tcewrc(int tid, int row, int column, const char *value);
00411 int flames_midas_tcewri(int tid, int row, int column, const int *value);
00412 int flames_midas_tcewrr(int tid, int row, int column, const float *value);
00413 int flames_midas_tcewrd(int tid, int row, int column, const double *value);
00414 int flames_midas_tcsget(int tid, int row, int *value);
00415 int flames_midas_tcsput(int tid, int row, const int *value);
00416
00417
00418 int flames_midas_sccsho(const cpl_frameset *catfile,
00419 int *noent,
00420 int *last);
00421
00422 int flames_midas_sccget(const cpl_frameset *catfile,
00423 int flag,
00424 char *name, char *ident,
00425 int *no);
00426
00427 int flames_midas_sccfnd(const cpl_frameset *catfile,
00428 int frmno,
00429 char *frame);
00430 int flames_midas_scccre(cpl_frameset **catfile,
00431 int type,
00432 int flag);
00433 int flames_midas_sccadd(cpl_frameset *catfile,
00434 const char *name,
00435 const char *ident);
00436
00437
00438 cpl_type
00439 flames_midas_image_dtype_to_cpltype(int dtype);
00440
00441
00442 #endif