28 #ifndef IRPLIB_DETMON_RONBIAS_H
29 #define IRPLIB_DETMON_RONBIAS_H
36 #include <detmon_cpl_size.h>
47 #define DETMON_QC_DUTYCYCL "ESO QC DUTYCYCL"
48 #define DETMON_QC_DUTYCYCL_C "DUTYCYCL value (time to store a frame)"
50 #define DETMON_QC_MASTER_MEAN "ESO QC MASTER MEAN"
51 #define DETMON_QC_MASTER_MEAN_C "Master Mean value"
53 #define DETMON_QC_MASTER_RMS "ESO QC MASTER RMS"
54 #define DETMON_QC_MASTER_RMS_C "Master RMS value"
56 #define DETMON_QC_NBCOLDPIX "ESO QC NBCOLPIX"
57 #define DETMON_QC_NBCOLDPIX_C "Number of cold pixels"
59 #define DETMON_QC_NBHOTPIX "ESO QC NBHOTPIX"
60 #define DETMON_QC_NBHOTPIX_C "Number of hot pixels"
62 #define DETMON_QC_NBDEVPIX "ESO QC NBDEVPIX"
63 #define DETMON_QC_NBDEVPIX_C "Number of deviating pixels"
65 #define DETMON_QC_BIAS_RANDOM_VAL "ESO QC BIAS RANDOM VAL"
66 #define DETMON_QC_BIAS_RANDOM_VAL_C "Bias level (random sampling method) [ADU]"
68 #define DETMON_QC_BIAS_RANDOM_RON "ESO QC BIAS RANDOM RON"
69 #define DETMON_QC_BIAS_RANDOM_RON_C "Bias Read Out Noise (random sampling method) [ADU]"
71 #define DETMON_QC_BIAS_HISTO_VAL "ESO QC BIAS HISTO VAL"
72 #define DETMON_QC_BIAS_HISTO_VAL_C "Bias level (histogram method) [ADU]"
74 #define DETMON_QC_BIAS_HISTO_RON "ESO QC BIAS HISTO RON"
75 #define DETMON_QC_BIAS_HISTO_RON_C "Bias Read Out Noise (histogram method) [e- rms]"
77 #define DETMON_QC_BIAS_PRESCAN_MEAN "ESO QC BIAS PRESCAN MEAN"
78 #define DETMON_QC_BIAS_PRESCAN_MEAN_C "Bias mean level (on prescan region) [ADU]"
80 #define DETMON_QC_BIAS_PRESCAN_MED "ESO QC BIAS PRESCAN MED"
81 #define DETMON_QC_BIAS_PRESCAN_MED_C "Bias median level (on prescan region) [ADU]"
83 #define DETMON_QC_BIAS_PRESCAN_RON "ESO QC BIAS PRESCAN RON"
84 #define DETMON_QC_BIAS_PRESCAN_RON_C "Bias Read Out Noise (on prescan region) [e- rms]"
87 #define DETMON_QC_BIAS_OVERSCAN_MEAN "ESO QC BIAS OVERSCAN MEAN"
88 #define DETMON_QC_BIAS_OVERSCAN_MEAN_C "Bias mean level (on overscan region) [ADU]"
90 #define DETMON_QC_BIAS_OVERSCAN_MED "ESO QC BIAS OVERSCAN MED"
91 #define DETMON_QC_BIAS_OVERSCAN_MED_C "Bias median level (on overscan region) [ADU]"
93 #define DETMON_QC_BIAS_OVERSCAN_RON "ESO QC BIAS OVERSCAN RON"
94 #define DETMON_QC_BIAS_OVERSCAN_RON_C "Bias Read Out Noise (on overscan region) [e- rms]"
96 #define DETMON_QC_BIAS_REGION_VAL "ESO QC BIAS REGION VAL"
97 #define DETMON_QC_BIAS_REGION_VAL_C "Bias level (o#include <cpl.h>n user defined region) [ADU]"
99 #define DETMON_QC_BIAS_REGION_MED "ESO QC BIAS REGION MED"
100 #define DETMON_QC_BIAS_REGION_MED_C "Bias median level (on user defined region) [ADU]"
102 #define DETMON_QC_BIAS_REGION_RON "ESO QC BIAS REGION RON"
103 #define DETMON_QC_BIAS_REGION_RON_C "Bias Read Out Noise (on user defined region) [e- rms]"
107 #define detmon_ronbias_get_description(RECIPE_NAME, PIPE_NAME, \
108 DETMON_RONBIAS_RAW) \
109 RECIPE_NAME " -- " PIPE_NAME " ronbias recipe for OPT/IR.\n" \
110 "The files listed in the Set Of Frames must be tagged:\n" \
111 "raw-file.fits "DETMON_RONBIAS_RAW"\n"
113 #define RANDOM ((irplib_ronbias_method) 1 << 1)
114 #define HISTO ((irplib_ronbias_method) 1 << 2)
115 #define PREOVERSCAN ((irplib_ronbias_method) 1 << 3)
116 #define REGION ((irplib_ronbias_method) 1 << 4)
118 typedef unsigned long irplib_ronbias_method;
121 #define REGEXP "ARCFILE|MJD-OBS|ESO TPL ID|DATE-OBS|ESO DET DIT|ESO DET NDIT"
125 irplib_imagelist_collapse_stdev_create(
const cpl_imagelist * imlist);
128 detmon_ronbias(cpl_frameset *,
129 const cpl_parameterlist *,
134 const cpl_propertylist *,
135 const cpl_propertylist *,
136 const cpl_propertylist *,
137 const cpl_propertylist *,
138 const cpl_propertylist *,
139 const cpl_propertylist *,
140 const cpl_propertylist *,
142 int (*)(
const cpl_frame *,
148 detmon_ronbias_fill_parlist_default(cpl_parameterlist *,
154 detmon_ronbias_fill_parlist(cpl_parameterlist *,
182 detmon_ronbias_histo_reduce(
const cpl_image * c_raw,
187 detmon_build_synthetic(cpl_image *,
191 irplib_flux_get_bias_window(
const cpl_image *,
200 detmon_retrieve_par_int(
const char *,
202 const char *,
const cpl_parameterlist *);
205 detmon_retrieve_par_double(
const char *,
207 const char *,
const cpl_parameterlist *);