CR2RE Pipeline Reference Manual 1.6.10
cr2res_dfs.h
1/*
2 * This file is part of the CR2RES Pipeline
3 * Copyright (C) 2002,2003 European Southern Observatory
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02111-1307 USA
18 */
19
20#ifndef CR2RES_DFS_H
21#define CR2RES_DFS_H
22
23/*-----------------------------------------------------------------------------
24 Define
25 -----------------------------------------------------------------------------*/
26
27/******************************************/
28/* DEFINE HERE THE DIFFERENT COLUMN NAMES */
29
30/*** PHOTO_FLUX Table ***/
31#define CR2RES_COL_STDNAME "Std_Star_Name" /* No Unit */
32#define CR2RES_COL_RA "Right_Ascension" /* In degrees */
33#define CR2RES_COL_DEC "Declination" /* In degrees */
34#define CR2RES_COL_PHOTOFLUX "Photospheric_Flux" /* In Jy */
35
36/*** CATALOG Table ***/
37#define CR2RES_COL_EMISSION "Emission" /* No Unit */
38/*** CATALOG, CR2RES_OBS_NODDING_IDP_PROCATG and TRACE_WAVE Table ***/
39#define CR2RES_COL_WAVELENGTH "Wavelength" /* In Nanometers */
40/*** CATALOG and TRACE_WAVE Table ***/
41#define CR2RES_COL_WAVELENGTH_ERROR "Wavelength_Error" /* In Nanometers */
42/*** TRACE_WAVE Table ***/
43#define CR2RES_COL_UPPER "Upper" /* pixel position */
44#define CR2RES_COL_LOWER "Lower" /* pixel position */
45#define CR2RES_COL_ALL "All" /* pixel position */
46#define CR2RES_COL_ORDER "Order" /* 1 .. nborders */
47#define CR2RES_COL_TRACENB "TraceNb" /* 1 .. traces */
48#define CR2RES_COL_SLIT_CURV_A "SlitPolyA" /* 3 Coefficients Poly */
49#define CR2RES_COL_SLIT_CURV_B "SlitPolyB" /* 3 Coefficients Poly */
50#define CR2RES_COL_SLIT_CURV_C "SlitPolyC" /* 3 Coefficients Poly */
51#define CR2RES_COL_SLIT_FRACTION "SlitFraction" /* Position on the Slit */
52
53/*** CR2RES_OBS_NODDING_IDP_PROCATG ***/
54#define CR2RES_IDP_COL_FLUX "FLUX" /* Intensity */
55#define CR2RES_IDP_COL_ERR "ERR" /* Error */
56#define CR2RES_IDP_COL_WAVE "WAVE" /* wavelength */
57#define CR2RES_IDP_COL_QUAL "QUAL" /* Quality */
58#define CR2RES_IDP_COL_ORDER "ORDER" /* Order Number */
59#define CR2RES_IDP_COL_TRACE "TRACE" /* Order Number */
60#define CR2RES_IDP_COL_DETEC "DETEC" /* Detector */
61#define CR2RES_IDP_COL_XPOS "XPOS" /* Original X position */
62#define CR2RES_IDP_COL_YPOS "YPOS" /* Original Y position */
63#define CR2RES_IDP_COL_SLITFRAC "SLITFRAC" /* Slit fraction */
64#define CR2RES_IDP_COL_STOKES "STOKES" /* Stokes parameter */
65#define CR2RES_IDP_COL_STOKESERR "STOKES_ERR" /* Stokes parameter error */
66
67/*** LINES_DIAGNOSTICS Table ***/
68#define CR2RES_COL_MEASURED_LAMBDA "Measured_WL" /* In Nanometers */
69#define CR2RES_COL_CATALOG_LAMBDA "Catalog_WL" /* In Nanometers */
70#define CR2RES_COL_DELTA_LAMBDA "Delta_WL" /* In Nanometers */
71#define CR2RES_COL_MEASURED_PIXEL "Measured_Pix" /* In Pixels */
72#define CR2RES_COL_LINE_WIDTH "Line_Width" /* In Pixels */
73#define CR2RES_COL_FIT_QUALITY "Fit_Quality" /* */
74#define CR2RES_COL_INTENSITY "Line_Intensity"/* */
75#define CR2RES_COL_FPET_M "FPET_Order"
76
77/*** Clusters Table ***/
78#define CR2RES_COL_XS "xs" /* pixel position */
79#define CR2RES_COL_YS "ys" /* pixel position */
80#define CR2RES_COL_CLUSTERS "clusters" /* cluster label */
81
82/* SLIT_FUNC Table */
83#define CR2RES_COL_SLIT_FUNC_SUFFIX "SLIT_FUNC" /* Intensity */
84
85/* POL_SPEC Table */
86#define CR2RES_COL_POL_STOKES_SUFFIX "STOKES" /* Stokes param */
87#define CR2RES_COL_POL_STOKES_ERROR_SUFFIX "STOKES_ERR" /* Error */
88#define CR2RES_COL_POL_NULL_SUFFIX "NULL" /* Null spectrum */
89#define CR2RES_COL_POL_NULL_ERROR_SUFFIX "NULL_ERR" /* Error */
90#define CR2RES_COL_POL_INTENS_SUFFIX "INTENS" /* Intensity spec */
91#define CR2RES_COL_POL_INTENS_ERROR_SUFFIX "INTENS_ERR" /* Error */
92
93/* EXTRACT_1D Table */
94#define CR2RES_COL_SPEC_SUFFIX "SPEC" /* Intensity */
95#define CR2RES_COL_ERROR_SUFFIX "ERR" /* Error */
96#define CR2RES_COL_WL_SUFFIX "WL" /* Wavelength */
97
98/* THROUGHPUT Table */
99#define CR2RES_COL_CONVERSION_SUFFIX "CONVERSION" /* Intensity */
100#define CR2RES_COL_SENSITIVITY_SUFFIX "SENSITIVITY" /* Intensity */
101#define CR2RES_COL_THROUGHPUT_SUFFIX "THROUGHPUT" /* Intensity */
102
103/* SPLICED_1D Table */
104#define CR2RES_COL_SPLICED_1D_SPEC "SPLICED_1D_SPEC" /* Intensity */
105#define CR2RES_COL_SPLICED_1D_ERROR "SPLICED_1D_ERR" /* Error */
106#define CR2RES_COL_SPLICED_1D_WL "SPLICED_1D_WL" /* Wavelength */
107
108/* EXTRACT_2D Table */
109#define CR2RES_COL_POSITIONX_SUFFIX "POSITIONX" /* pixel position */
110#define CR2RES_COL_POSITIONY_SUFFIX "POSITIONY" /* pixel position */
111#define CR2RES_COL_SLIT_FRACTION_SUFFIX "SLIT_FRACTION" /* slit fraction */
112
113/******************************************/
114
115/*************************************/
116/* Define here the DRS.TYPE keywords */
117
118/* For CR2RES_EMISSION_LINES_PROCATG */
119/* Table with columns CR2RES_COL_EMISSION / CR2RES_COL_WAVELENGTH */
120#define CR2RES_DRSTYPE_CATALOG "CATALOG"
121
122/* For CR2RES_PHOTO_FLUX_PROCATG */
123/* Col: CR2RES_COL_STDNAME */
124/* CR2RES_COL_RA */
125/* CR2RES_COL_DEC */
126/* CR2RES_COL_PHOTOFLUX */
127#define CR2RES_PHOTO_FLUX_DRSTYPE "PHOTO_FLUX"
128
129/* For CR2RES_CAL_DETLIN_COEFFS_PROCATG */
130#define CR2RES_DETLIN_COEFFS_DRSTYPE "DETLIN_COEFFS"
131
132/* For CR2RES_CAL_FLAT_BPM_PROCATG */
133/* CR2RES_CAL_DETLIN_BPM_PROCATG */
134/* CR2RES_CAL_DARK_BPM_PROCATG */
135/* CR2RES_UTIL_BPM_MERGE_PROCATG */
136/* CR2RES_UTIL_BPM_SPLIT_PROCATG */
137/* CR2RES_UTIL_NORM_BPM_PROCATG */
138/* BPM Image with values CR2RES_BPM_DARK / CR2RES_BPM_FLAT... */
139#define CR2RES_BPM_DRSTYPE "BPM"
140
141/* For CR2RES_CAL_DARK_MASTER_PROCATG */
142#define CR2RES_MASTER_DARK_DRSTYPE "MASTER_DARK"
143
144/* For CR2RES_CAL_FLAT_EXTRACT_1D_PROCATG */
145/* CR2RES_UTIL_EXTRACT_1D_PROCATG */
146/* CR2RES_UTIL_WAVE_EXTRACT_1D_PROCATG */
147/* CR2RES_CAL_WAVE_EXTRACT_1D_PROCATG */
148/* CR2RES_OBS_NODDING_EXTRACTA_PROCATG */
149/* CR2RES_OBS_NODDING_EXTRACTB_PROCATG */
150/* CR2RES_OBS_NODDING_EXTRACTC_PROCATG */
151/* CR2RES_OBS_STARING_EXTRACT_PROCATG */
152/* CR2RES_OBS_POL_EXTRACTA_PROCATG */
153/* CR2RES_OBS_POL_EXTRACTB_PROCATG */
154/* Table with columns cr2res_dfs_SPEC_colname() */
155/* cr2res_dfs_WAVELENGTH_colname() */
156/* cr2res_dfs_SPEC_ERR_colname() */
157#define CR2RES_EXTRACT_1D_DRSTYPE "EXTRACT_1D"
158
159/* For CR2RES_OBS_NODDING_IDP_PROCATG */
160/* Table with columns CR2RES_COL_WAVELENGTH */
161/* CR2RES_COL_SPECTRUM */
162/* CR2RES_COL_ERROR */
163/* CR2RES_COL_QUALITY */
164/* CR2RES_COL_ORDER */
165/* CR2RES_COL_DETECTOR */
166#define CR2RES_EXTRACT_1D_IDP_DRSTYPE "EXTRACT_1D_IDP"
167
168/* For CR2RES_OBS_NODDING_THROUGHPUT_PROCATG */
169/* Table with columns cr2res_dfs_WAVELENGTH_colname() */
170/* cr2res_dfs_CONVERSION_colname() */
171/* cr2res_dfs_THROUGHPUT_colname() */
172/* cr2res_dfs_SENSITIVITY_colname() */
173#define CR2RES_THROUGHPUT_DRSTYPE "THROUGHPUT"
174
175/* For CR2RES_OBS_POL_SPECA_PROCATG */
176/* CR2RES_OBS_POL_SPECB_PROCATG */
177/* Table with columns cr2res_dfs_POL_WAVELENGTH_colname() */
178/* cr2res_dfs_POL_STOKES_colname() */
179/* cr2res_dfs_POL_STOKES_ERROR_colname() */
180/* cr2res_dfs_POL_NULL_colname() */
181/* cr2res_dfs_POL_NULL_ERROR_colname() */
182/* cr2res_dfs_POL_INTENS_colname() */
183/* cr2res_dfs_POL_INTENS_ERROR_colname() */
184#define CR2RES_POL_SPEC_DRSTYPE "POL_SPEC"
185
186/* For CR2RES_OBS_2D_EXTRACT_PROCATG */
187/* Table with columns cr2res_dfs_SPEC_colname() */
188/* cr2res_dfs_SPEC_ERR_colname() */
189/* cr2res_dfs_WAVELENGTH_colname() */
190/* cr2res_dfs_POSITIONX_colname() */
191/* cr2res_dfs_POSITIONY_colname() */
192/* cr2res_dfs_SLIT_FRACTION_colname() */
193#define CR2RES_EXTRACT_2D_DRSTYPE "EXTRACT_2D"
194
195/* For CR2RES_OBS_NODDING_COMBINEDA_PROCATG */
196/* CR2RES_OBS_NODDING_COMBINEDB_PROCATG */
197/* CR2RES_OBS_STARING_COMBINED_PROCATG */
198#define CR2RES_COMBINED_DRSTYPE "COMBINED"
199
200/* For CR2RES_UTIL_SPLICE_SPLICED_1D_PROCATG */
201#define CR2RES_SPLICED_1D_DRSTYPE "SPLICED_1D"
202
203/* For CR2RES_CAL_FLAT_SLIT_MODEL_PROCATG */
204/* CR2RES_UTIL_SLIT_MODEL_PROCATG */
205/* CR2RES_OBS_NODDING_SLITMODELA_PROCATG */
206/* CR2RES_OBS_NODDING_SLITMODELB_PROCATG */
207/* CR2RES_OBS_STARING_SLITMODEL_PROCATG */
208#define CR2RES_SLIT_MODEL_DRSTYPE "SLIT_MODEL"
209
210/* For CR2RES_CAL_FLAT_SLIT_FUNC_PROCATG */
211/* CR2RES_UTIL_SLIT_FUNC_PROCATG */
212/* CR2RES_OBS_NODDING_SLITFUNCA_PROCATG */
213/* CR2RES_OBS_NODDING_SLITFUNCB_PROCATG */
214/* CR2RES_OBS_STARING_SLITFUNC_PROCATG */
215/* Table with columns from cr2res_dfs_SLIT_FUNC_colname() */
216#define CR2RES_SLIT_FUNC_DRSTYPE "SLIT_FUNC"
217
218/* For CR2RES_CAL_FLAT_TW_PROCATG */
219/* CR2RES_CAL_FLAT_TW_MERGED_PROCATG */
220/* CR2RES_UTIL_TRACE_TW_PROCATG */
221/* CR2RES_UTIL_WAVE_TW_PROCATG */
222/* CR2RES_CAL_WAVE_TW_PROCATG */
223/* CR2RES_UTIL_SLIT_CURV_TW_PROCATG */
224/* CR2RES_OBS_NODDING_TWA_PROCATG */
225/* CR2RES_OBS_NODDING_TWB_PROCATG */
226/* CR2RES_OBS_POL_TWA_PROCATG */
227/* CR2RES_OBS_POL_TWB_PROCATG */
228/* Table with Traces polynomials, orders, trace_nb wavelengths */
229/* 1 trace per Row */
230#define CR2RES_TW_DRSTYPE "TW"
231
232/* For CR2RES_CAL_FLAT_MASTER_PROCATG */
233/* CR2RES_UTIL_MASTER_FLAT_PROCATG */
234/* Master Flat image with values around 1 */
235#define CR2RES_MASTER_FLAT_DRSTYPE "MASTER_FLAT"
236
237/* For CR2RES_UTIL_CALIB_PROCATG */
238/* CR2RES_OBS_POL_CALIB_A_PROCATG */
239/* CR2RES_OBS_POL_CALIB_B_PROCATG */
240/* CR2RES_OBS_2D_CALIBRATED_PROCATG */
241#define CR2RES_CALIBRATED_DRSTYPE "CALIBRATED"
242
243/* For CR2RES_CALIB_COLLAPSED_PROCATG */
244#define CR2RES_CALIB_COLLAPSED_DRSTYPE "CALIB_COLLAPSED"
245
246/* For CR2RES_UTIL_WAVE_MAP_PROCATG */
247/* CR2RES_CAL_WAVE_MAP_PROCATG */
248/* CR2RES_UTIL_TRACE_MAP_WL_PROCATG */
249#define CR2RES_WAVE_MAP_DRSTYPE "WAVE_MAP"
250
251/* For CR2RES_UTIL_SLIT_CURV_MAP_PROCATG */
252/* CR2RES_UTIL_TRACE_MAP_SLIT_CURVE_PROCATG */
253#define CR2RES_SLIT_CURV_MAP_DRSTYPE "SLIT_CURV_MAP"
254
255/* For CR2RES_UTIL_TRACE_MAP_TRACE_PROCATG */
256#define CR2RES_TRACE_MAP_DRSTYPE "TRACE_MAP"
257
258/* For CR2RES_UTIL_WAVE_LINES_DIAGNOSTICS_PROCATG */
259/* CR2RES_CAL_WAVE_LINES_DIAGNOSTICS_PROCATG */
260#define CR2RES_LINES_DIAGNOSTICS_DRSTYPE "LINES_DIAGNOSTICS"
261
262/*************************************/
263/* Define here the PRO.CATG keywords */
264/*************************************/
265/* Produced by cr2res_cal_detlin */
266#define CR2RES_CAL_DETLIN_COEFFS_PROCATG "CAL_DETLIN_COEFFS"
267#define CR2RES_CAL_DETLIN_BPM_PROCATG "CAL_DETLIN_BPM"
268
269/* Produced by cr2res_cal_dark */
270#define CR2RES_CAL_DARK_MASTER_PROCATG "CAL_DARK_MASTER"
271#define CR2RES_CAL_DARK_BPM_PROCATG "CAL_DARK_BPM"
272
273/* Produced by cr2res_cal_flat */
274#define CR2RES_CAL_FLAT_BPM_PROCATG "CAL_FLAT_BPM"
275#define CR2RES_CAL_FLAT_EXTRACT_1D_PROCATG "CAL_FLAT_EXTRACT_1D"
276#define CR2RES_CAL_FLAT_SLIT_MODEL_PROCATG "CAL_FLAT_SLIT_MODEL"
277#define CR2RES_CAL_FLAT_SLIT_FUNC_PROCATG "CAL_FLAT_SLIT_FUNC"
278#define CR2RES_CAL_FLAT_TW_PROCATG "CAL_FLAT_TW"
279#define CR2RES_CAL_FLAT_TW_MERGED_PROCATG "CAL_FLAT_TW_MERGED"
280#define CR2RES_CAL_FLAT_MASTER_PROCATG "CAL_FLAT_MASTER"
281
282/* Produced by cr2res_cal_wave */
283#define CR2RES_CAL_WAVE_TW_PROCATG "CAL_WAVE_TW"
284#define CR2RES_CAL_WAVE_MAP_PROCATG "CAL_WAVE_MAP"
285#define CR2RES_CAL_WAVE_LINES_DIAGNOSTICS_PROCATG "CAL_WAVE_LINES_DIAGNOSTICS"
286#define CR2RES_CAL_WAVE_EXTRACT_1D_PROCATG "CAL_WAVE_EXTRACT_1D"
287
288/* Produced by cr2res_obs_nodding */
289#define CR2RES_OBS_NODDING_EXTRACTA_PROCATG "OBS_NODDING_EXTRACTA"
290#define CR2RES_OBS_NODDING_COMBINEDA_PROCATG "OBS_NODDING_COMBINEDA"
291#define CR2RES_OBS_NODDING_SLITFUNCA_PROCATG "OBS_NODDING_SLITFUNCA"
292#define CR2RES_OBS_NODDING_SLITMODELA_PROCATG "OBS_NODDING_SLITMODELA"
293#define CR2RES_OBS_NODDING_EXTRACTB_PROCATG "OBS_NODDING_EXTRACTB"
294#define CR2RES_OBS_NODDING_COMBINEDB_PROCATG "OBS_NODDING_COMBINEDB"
295#define CR2RES_OBS_NODDING_SLITFUNCB_PROCATG "OBS_NODDING_SLITFUNCB"
296#define CR2RES_OBS_NODDING_SLITMODELB_PROCATG "OBS_NODDING_SLITMODELB"
297#define CR2RES_OBS_NODDING_EXTRACTC_PROCATG "OBS_NODDING_EXTRACT_COMB"
298#define CR2RES_OBS_NODDING_THROUGHPUT_PROCATG "OBS_NODDING_THROUGHPUT"
299#define CR2RES_OBS_NODDING_TWA_PROCATG "OBS_NODDING_TWA"
300#define CR2RES_OBS_NODDING_TWB_PROCATG "OBS_NODDING_TWB"
301#define CR2RES_OBS_NODDING_EXTRACTA_IDP_PROCATG "OBS_NODDING_EXTRACTA_IDP"
302#define CR2RES_OBS_NODDING_EXTRACTB_IDP_PROCATG "OBS_NODDING_EXTRACTB_IDP"
303#define CR2RES_OBS_NODDING_EXTRACTC_IDP_PROCATG "OBS_NODDING_EXTRACTC_IDP"
304
305/* Produced by cr2res_obs_staring */
306#define CR2RES_OBS_STARING_COMBINED_PROCATG "OBS_STARING_COMBINED"
307#define CR2RES_OBS_STARING_EXTRACT_PROCATG "OBS_STARING_EXTRACT"
308#define CR2RES_OBS_STARING_SLITFUNC_PROCATG "OBS_STARING_SLITFUNC"
309#define CR2RES_OBS_STARING_SLITMODEL_PROCATG "OBS_STARING_SLITMODEL"
310#define CR2RES_OBS_STARING_IDP_PROCATG "OBS_STARING_IDP"
311
312
313/* Produced by cr2res_obs_2d */
314#define CR2RES_OBS_2D_EXTRACT_PROCATG "OBS_2D_EXTRACT"
315#define CR2RES_OBS_2D_CALIBRATED_PROCATG "OBS_2D_CALIBRATED"
316#define CR2RES_OBS_2D_IDP_PROCATG "OBS_2D_IDP"
317
318/* Produced by cr2res_obs_pol */
319#define CR2RES_OBS_POL_EXTRACTA_PROCATG "OBS_POL_EXTRACTA"
320#define CR2RES_OBS_POL_EXTRACTB_PROCATG "OBS_POL_EXTRACTB"
321#define CR2RES_OBS_POL_TWA_PROCATG "OBS_POL_TWA"
322#define CR2RES_OBS_POL_TWB_PROCATG "OBS_POL_TWB"
323#define CR2RES_OBS_POL_SPECA_PROCATG "OBS_POL_SPECA"
324#define CR2RES_OBS_POL_SPECB_PROCATG "OBS_POL_SPECB"
325#define CR2RES_OBS_POL_CALIB_A_PROCATG "OBS_POL_CALIBA"
326#define CR2RES_OBS_POL_CALIB_B_PROCATG "OBS_POL_CALIBB"
327#define CR2RES_OBS_POL_EXTRACTA_IDP_PROCATG "OBS_POL_EXTRACTA_IDP"
328#define CR2RES_OBS_POL_EXTRACTB_IDP_PROCATG "OBS_POL_EXTRACTB_IDP"
329
330/* Produced by cr2res_util_genlines */
331#define CR2RES_EMISSION_LINES_PROCATG "EMISSION_LINES"
332
333/* Produced by cr2res_util_genstd */
334#define CR2RES_PHOTO_FLUX_PROCATG "PHOTO_FLUX"
335
336/* Produced by cr2res_util_calib */
337#define CR2RES_UTIL_CALIB_PROCATG "UTIL_CALIB"
338
339/* Produced by cr2res_util_bpm_merge */
340#define CR2RES_UTIL_BPM_MERGE_PROCATG "UTIL_BPM_MERGE"
341
342/* Produced by cr2res_util_bpm_split */
343#define CR2RES_UTIL_BPM_SPLIT_PROCATG "UTIL_BPM_SPLIT"
344
345/* Produced by cr2res_util_trace */
346#define CR2RES_UTIL_TRACE_TW_PROCATG "UTIL_TRACE_TW"
347
348/* Produced by cr2res_util_extract */
349#define CR2RES_UTIL_SLIT_FUNC_PROCATG "UTIL_SLIT_FUNC"
350#define CR2RES_UTIL_SLIT_MODEL_PROCATG "UTIL_SLIT_MODEL"
351#define CR2RES_UTIL_EXTRACT_1D_PROCATG "UTIL_EXTRACT_1D"
352
353/* Produced by cr2res_util_normflat */
354#define CR2RES_UTIL_MASTER_FLAT_PROCATG "UTIL_MASTER_FLAT"
355#define CR2RES_UTIL_NORM_BPM_PROCATG "UTIL_NORM_BPM"
356
357/* Produced by cr2res_util_slit_curv */
358#define CR2RES_UTIL_SLIT_CURV_MAP_PROCATG "UTIL_SLIT_CURV_MAP"
359#define CR2RES_UTIL_SLIT_CURV_TW_PROCATG "UTIL_SLIT_CURV_TW"
360
361/* Produced by cr2res_util_wave */
362#define CR2RES_UTIL_WAVE_TW_PROCATG "UTIL_WAVE_TW"
363#define CR2RES_UTIL_WAVE_MAP_PROCATG "UTIL_WAVE_MAP"
364#define CR2RES_UTIL_WAVE_LINES_DIAGNOSTICS_PROCATG "UTIL_WAVE_LINES_DIAGNOSTICS"
365#define CR2RES_UTIL_WAVE_EXTRACT_1D_PROCATG "UTIL_WAVE_EXTRACT_1D"
366
367/* Produced by cr2res_util_trace_maps */
368#define CR2RES_UTIL_TRACE_MAP_SLIT_CURVE_PROCATG "UTIL_TRACE_MAP_SLIT_CURVE"
369#define CR2RES_UTIL_TRACE_MAP_WL_PROCATG "UTIL_TRACE_MAP_WL"
370#define CR2RES_UTIL_TRACE_MAP_TRACE_PROCATG "UTIL_TRACE_MAP_TRACE"
371
372/* Produced by cr2res_util_splice */
373#define CR2RES_UTIL_SPLICE_SPLICED_1D_PROCATG "UTIL_SPLICE_SPLICED_1D"
374
375/* Define here the DO.CATG keywords */
376#define CR2RES_EMISSION_LINES_TXT_RAW "EMISSION_LINES_TXT"
377#define CR2RES_LINES_SELECTION_TXT_RAW "LINES_SELECTION_TXT"
378#define CR2RES_PHOTO_FLUX_TXT_RAW "PHOTO_FLUX_TXT"
379#define CR2RES_DETLIN_DARK_RAW "DETLIN_DARK"
380#define CR2RES_DETLIN_LAMP_RAW "DETLIN_LAMP"
381#define CR2RES_DARK_RAW "DARK"
382#define CR2RES_FLAT_RAW "FLAT"
383#define CR2RES_WAVE_FPET_RAW "WAVE_FPET"
384#define CR2RES_WAVE_UNE_RAW "WAVE_UNE"
385#define CR2RES_METROLOGY_RAW "METROLOGY"
386#define CR2RES_CAL_NODDING_OTHER_RAW "CAL_NODDING_OTHER"
387#define CR2RES_CAL_NODDING_JITTER_RAW "CAL_NODDING_JITTER"
388#define CR2RES_OBS_NODDING_OTHER_RAW "OBS_NODDING_OTHER"
389#define CR2RES_OBS_NODDING_JITTER_RAW "OBS_NODDING_JITTER"
390#define CR2RES_OBS_ASTROMETRY_OTHER_RAW "OBS_ASTROMETRY_OTHER"
391#define CR2RES_OBS_ASTROMETRY_JITTER_RAW "OBS_ASTROMETRY_JITTER"
392#define CR2RES_OBS_STARING_OTHER_RAW "OBS_STARING_OTHER"
393#define CR2RES_OBS_STARING_JITTER_RAW "OBS_STARING_JITTER"
394#define CR2RES_OBS_STARING_WAVE_SKY_RAW "OBS_WAVE_SKY"
395#define CR2RES_OBS_POLARIMETRY_OTHER_RAW "OBS_POLARIMETRY_OTHER"
396#define CR2RES_OBS_2D_OBJECT_RAW "OBS_2D_OBJECT"
397#define CR2RES_OBS_2D_SKY_RAW "OBS_2D_SKY"
398
399/*-----------------------------------------------------------------------------
400 Functions prototypes
401 -----------------------------------------------------------------------------*/
402
403cpl_error_code cr2res_dfs_set_groups(cpl_frameset *);
404char * cr2res_dfs_SPEC_colname(int, int) ;
405char * cr2res_dfs_THROUGHPUT_colname(int, int) ;
406char * cr2res_dfs_SENSITIVITY_colname(int, int) ;
407char * cr2res_dfs_CONVERSION_colname(int, int) ;
408char * cr2res_dfs_WAVELENGTH_colname(int, int);
409char * cr2res_dfs_SPEC_ERR_colname(int, int);
410char * cr2res_dfs_SLIT_FUNC_colname(int, int) ;
411char * cr2res_dfs_POSITIONX_colname(int, int) ;
412char * cr2res_dfs_POSITIONY_colname(int, int) ;
413char * cr2res_dfs_SLIT_FRACTION_colname(int, int) ;
417char * cr2res_dfs_POL_NULL_colname(int) ;
422 const char * colname,
423 int * order_idx,
424 int * trace) ;
426 const char * colname,
427 int * order_idx);
428
429cpl_table * cr2res_dfs_create_lines_diagnostics_table(int nrows) ;
430
431int cr2res_dfs_check_traces_table(const cpl_table * traces) ;
432
433#endif
char * cr2res_dfs_POL_colname_parse(const char *colname, int *order_idx)
Parse a column name ORDER_TYPE format.
Definition: cr2res_dfs.c:531
char * cr2res_dfs_SLIT_FUNC_colname(int, int)
Get the SLIT_FUNC table column name for a given order/trace.
Definition: cr2res_dfs.c:432
char * cr2res_dfs_POL_NULL_colname(int)
Get the POL_NULL column name for a given order.
Definition: cr2res_dfs.c:258
char * cr2res_dfs_POL_STOKES_ERROR_colname(int)
Get the POL_STOKES_ERROR column name for a given order.
Definition: cr2res_dfs.c:241
char * cr2res_dfs_CONVERSION_colname(int, int)
Get the CONVERSION column name for a given order/trace.
Definition: cr2res_dfs.c:324
char * cr2res_dfs_SPEC_ERR_colname(int, int)
Get the ERR column name for a given order/trace.
Definition: cr2res_dfs.c:414
char * cr2res_dfs_POL_INTENS_ERROR_colname(int)
Get the POL_INTENS_ERROR column name for a given order.
Definition: cr2res_dfs.c:306
char * cr2res_dfs_SENSITIVITY_colname(int, int)
Get the SENSITIVITY column name for a given order/trace.
Definition: cr2res_dfs.c:342
cpl_error_code cr2res_dfs_set_groups(cpl_frameset *)
Set the group as RAW or CALIB in a frameset.
Definition: cr2res_dfs.c:53
int cr2res_dfs_check_traces_table(const cpl_table *traces)
Check completeness of trace table.
Definition: cr2res_dfs.c:581
char * cr2res_dfs_WAVELENGTH_colname(int, int)
Get the WAVELENGTH column name for a given order/trace.
Definition: cr2res_dfs.c:396
char * cr2res_dfs_POSITIONY_colname(int, int)
Get the POSITIONY table column name for a given order/trace.
Definition: cr2res_dfs.c:468
char * cr2res_dfs_SLIT_FRACTION_colname(int, int)
Get the SLIT_FRACTION table column name for a given order/trace.
Definition: cr2res_dfs.c:486
char * cr2res_dfs_POL_NULL_ERROR_colname(int)
Get the POL_NULL_ERROR column name for a given order.
Definition: cr2res_dfs.c:274
char * cr2res_dfs_POL_STOKES_colname(int)
Get the POL_STOKES column name for a given order.
Definition: cr2res_dfs.c:225
char * cr2res_dfs_SPEC_colname_parse(const char *colname, int *order_idx, int *trace)
Parse a column name ORDER_TRACE_TYPE format.
Definition: cr2res_dfs.c:505
char * cr2res_dfs_THROUGHPUT_colname(int, int)
Get the THROUGHPUT column name for a given order/trace.
Definition: cr2res_dfs.c:360
char * cr2res_dfs_POL_INTENS_colname(int)
Get the POL_INTENS column name for a given order.
Definition: cr2res_dfs.c:290
char * cr2res_dfs_SPEC_colname(int, int)
Get the SPEC column name for a given order/trace.
Definition: cr2res_dfs.c:378
char * cr2res_dfs_POL_WAVELENGTH_colname(int)
Get the POL_WAVELENGTH column name for a given order.
Definition: cr2res_dfs.c:209
char * cr2res_dfs_POSITIONX_colname(int, int)
Get the POSITIONX table column name for a given order/trace.
Definition: cr2res_dfs.c:450
cpl_table * cr2res_dfs_create_lines_diagnostics_table(int nrows)
Create an empty LINES DIAGNOSTICS table.
Definition: cr2res_dfs.c:553