21 #ifndef MUSE_QUALITY_H
22 #define MUSE_QUALITY_H
28 #include "muse_image.h"
30 #include "muse_cplwrappers.h"
40 #define EURO3D_GOODPIXEL 0
41 #define EURO3D_TELLURIC (1ul << 0)
42 #define EURO3D_TELLCOR (1ul << 1)
43 #define EURO3D_COSMICRAY (1ul << 5)
44 #define EURO3D_LOWQEPIXEL (1ul << 6)
45 #define EURO3D_HOTPIXEL (1ul << 8)
46 #define EURO3D_DARKPIXEL (1ul << 9)
47 #define EURO3D_SATURATED (1ul << 12)
48 #define EURO3D_DEADPIXEL (1ul << 13)
49 #define EURO3D_BADOTHER (1ul << 14)
51 #define EURO3D_OBJECT (1ul << 25)
53 #define EURO3D_MUSE_TRAP (1ul << 29)
54 #define EURO3D_MISSDATA (1ul << 30)
55 #define EURO3D_OUTSDRANGE (1ul << 31)
56 #define EURO3D_ALLBITS 0xFFFFul
73 static inline cpl_boolean
76 return (aState == EURO3D_GOODPIXEL) ||
int muse_quality_flat_badpix(muse_image *, cpl_table *, double, double)
Find bad (especially dark) pixels (in a master flat).
cpl_table * muse_quality_convert_dq(cpl_image *)
Convert a data quality (DQ) image extension to a bad pixel table.
int muse_quality_bad_columns(muse_image *, double, double)
Find bad columns (in a master bias).
cpl_error_code muse_quality_copy_badpix_table(const char *, const char *, int, const cpl_table *)
Copy bad pixel table on disk, replacing the table in one extension.
cpl_table * muse_quality_merge_badpix_from_file(const cpl_table *, const char *, const char *, int *)
Merge bad pixel table in memory with table from file on disk.
static cpl_boolean muse_quality_is_usable(uint32_t aState, uint32_t aInclude)
Check for usable pixel quality given a bitmask of usable states.
Structure definition of MUSE three extension FITS file.
int muse_quality_set_saturated(muse_image *)
Set all pixels above the saturation limit in the bad pixel image.
const muse_cpltable_def muse_badpix_table_def[]
cpl_error_code muse_quality_merge_badpix(cpl_table *, const cpl_table *)
Merge two bad pixel tables.
int muse_quality_dark_badpix(muse_image *, double, double)
Find bad (especially hot) pixels (in a master dark).
Definition of a cpl table structure.
int muse_quality_image_reject_using_dq(cpl_image *, cpl_image *, cpl_image *)
Reject pixels of one or two images on a DQ image.