CR2RE Pipeline Reference Manual 1.7.0
cr2res_io.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_IO_H
21#define CR2RES_IO_H
22
23/*-----------------------------------------------------------------------------
24 Includes
25 -----------------------------------------------------------------------------*/
26
27#include <cpl.h>
28#include "hdrl.h"
29
30#include "cr2res_utils.h"
31
32/*-----------------------------------------------------------------------------
33 Functions prototypes
34 -----------------------------------------------------------------------------*/
35
36cpl_table * cr2res_io_get_eop_table() ;
38 const cpl_frameset * in,
39 const char * setting_id,
40 cr2res_decker cr2res_decker) ;
41const cpl_frame * cr2res_io_find_TRACE_WAVE(const cpl_frameset * in) ;
42cpl_frameset * cr2res_io_find_TRACE_WAVE_all(const cpl_frameset * in) ;
43cpl_frameset * cr2res_io_find_EXTRACT_1D_all(const cpl_frameset * in) ;
44const cpl_frame * cr2res_io_find_BPM(const cpl_frameset * in) ;
45cpl_frameset * cr2res_io_find_BPM_all(const cpl_frameset * in) ;
46const cpl_frame * cr2res_io_find_SLIT_FUNC(const cpl_frameset * in) ;
47
48cpl_vector * cr2res_io_read_dits(const cpl_frameset * in) ;
49cpl_vector * cr2res_io_read_ndits(const cpl_frameset * in) ;
50cpl_vector * cr2res_io_read_ndsamples(const cpl_frameset * in) ;
51
52cr2res_decker * cr2res_io_read_decker_positions(const cpl_frameset * in) ;
53
55 const cpl_frameset * in,
56 const char * tag,
57 cr2res_decker decker) ;
58
60//int cr2res_io_convert_order_idxp_to_idx(int) ;
61
63 int detector,
64 int data) ;
65
67 const char * filename,
68 int detector,
69 int data) ;
70
71hdrl_image * cr2res_io_load_image(
72 const char * in,
73 int detector) ;
74
75hdrl_imagelist * cr2res_io_load_image_list(
76 const char * in,
77 int detector) ;
78
80 const cpl_frameset * in,
81 int detector) ;
82
83cpl_table * cr2res_load_table(
84 const char * in,
85 int det_nr,
86 int pmin,
87 int pmax) ;
88
90 const char * filename) ;
91
92cpl_image * cr2res_io_load_BPM(
93 const char * filename,
94 int detector,
95 int data) ;
96
98 const char * filename,
99 int detector) ;
100
101hdrl_imagelist * cr2res_io_load_DETLIN_COEFFS(
102 const char * filename,
103 int detector) ;
104
105hdrl_image * cr2res_io_load_MASTER_FLAT(
106 const char * filename,
107 int detector) ;
108
109cpl_table * cr2res_io_load_TRACE_WAVE(
110 const char * filename,
111 int detector);
112
113cpl_table * cr2res_io_load_SLIT_FUNC(
114 const char * filename,
115 int detector) ;
116
117hdrl_image * cr2res_io_load_SLIT_MODEL(
118 const char * filename,
119 int detector) ;
120#ifdef CR2RES_UNUSED
121hdrl_image * cr2res_io_load_TRACE_MAP(
122 const char * filename,
123 int detector) ;
124
125hdrl_image * cr2res_io_load_WAVE_MAP(
126 const char * filename,
127 int detector) ;
128
129hdrl_image * cr2res_io_load_SLIT_CURV_MAP(
130 const char * filename,
131 int detector) ;
132#endif
133cpl_table * cr2res_io_load_EXTRACT_1D(
134 const char * filename,
135 int detector);
136
137#ifdef CR2RES_UNUSED
138cpl_table * cr2res_io_load_SPLICED_1D(
139 const char * filename,
140 int detector);
141
142cpl_table * cr2res_io_load_EXTRACT_2D(
143 const char * filename,
144 int detector);
145#endif
147 const char * filename,
148 cpl_table * out_table,
149 const cpl_parameterlist * parlist,
150 cpl_frameset * set,
151 const char * recipe) ;
152
154 const char * filename,
155 cpl_table * out_table,
156 const cpl_parameterlist * parlist,
157 cpl_frameset * set,
158 const char * recipe,
159 const char * setting_string) ;
160
162 const char * filename,
163 cpl_frameset * allframes,
164 cpl_frameset * inframes,
165 const cpl_parameterlist * parlist,
166 hdrl_image ** master_darks,
167 const cpl_propertylist * qc_list,
168 cpl_propertylist ** ext_plist,
169 const char * procatg,
170 const char * recipe) ;
171
173 const char * filename,
174 cpl_frameset * allframes,
175 cpl_frameset * inframes,
176 const cpl_parameterlist * parlist,
177 hdrl_imagelist ** coeffs,
178 const cpl_propertylist * qc_list,
179 cpl_propertylist ** ext_plist,
180 const char * procatg,
181 const char * recipe) ;
182
184 const char * filename,
185 cpl_frameset * allframes,
186 cpl_frameset * inframes,
187 const cpl_parameterlist * parlist,
188 cpl_image ** bpms,
189 const cpl_propertylist * qc_list,
190 cpl_propertylist ** ext_plist,
191 const char * procatg,
192 const char * recipe) ;
193
195 const char * filename,
196 cpl_frameset * allframes,
197 cpl_frameset * inframes,
198 const cpl_parameterlist * parlist,
199 hdrl_image ** master_flats,
200 const cpl_propertylist * qc_list,
201 cpl_propertylist ** ext_plist,
202 const char * procatg,
203 const char * recipe) ;
204
206 const char * filename,
207 cpl_frameset * allframes,
208 cpl_frameset * inframes,
209 const cpl_parameterlist * parlist,
210 hdrl_image ** calib_collapsed,
211 const cpl_propertylist * qc_list,
212 cpl_propertylist ** ext_plist,
213 const char * procatg,
214 const char * recipe) ;
215
217 const char * filename,
218 cpl_frameset * allframes,
219 cpl_frameset * inframes,
220 const cpl_parameterlist * parlist,
221 cpl_table ** tables,
222 const cpl_propertylist * qc_list,
223 cpl_propertylist ** ext_plist,
224 const char * procatg,
225 const char * recipe) ;
226
228 const char * filename,
229 cpl_frameset * allframes,
230 cpl_frameset * inframes,
231 const cpl_parameterlist * parlist,
232 cpl_table ** tables,
233 const cpl_propertylist * qc_list,
234 cpl_propertylist ** ext_plist,
235 const char * procatg,
236 const char * recipe) ;
237
239 const char * filename,
240 cpl_frameset * allframes,
241 cpl_frameset * inframes,
242 const cpl_parameterlist * parlist,
243 cpl_table ** tables,
244 const cpl_propertylist * qc_list,
245 cpl_propertylist ** ext_plist,
246 const char * procatg,
247 const char * recipe) ;
248
250 const char * filename,
251 cpl_frameset * allframes,
252 cpl_frameset * inframes,
253 const cpl_parameterlist * parlist,
254 cpl_table ** tables,
255 const cpl_propertylist * qc_list,
256 cpl_propertylist ** ext_plist,
257 const char * procatg,
258 const char * recipe) ;
259
261 const char * filename,
262 cpl_frameset * allframes,
263 cpl_frameset * inframes,
264 const cpl_parameterlist * parlist,
265 cpl_table ** slit_func,
266 const cpl_propertylist * qc_list,
267 cpl_propertylist ** ext_plist,
268 const char * procatg,
269 const char * recipe) ;
270
272 const char * filename,
273 cpl_frameset * allframes,
274 cpl_frameset * inframes,
275 const cpl_parameterlist * parlist,
276 hdrl_image ** data,
277 const cpl_propertylist * qc_list,
278 cpl_propertylist ** ext_plist,
279 const char * procatg,
280 const char * recipe) ;
281
283 const char * filename,
284 cpl_frameset * allframes,
285 cpl_frameset * inframes,
286 const cpl_parameterlist * parlist,
287 hdrl_image ** data,
288 const cpl_propertylist * qc_list,
289 cpl_propertylist ** ext_plist,
290 const char * procatg,
291 const char * recipe);
292
294 const char * filename,
295 cpl_frameset * allframes,
296 cpl_frameset * inframes,
297 const cpl_parameterlist * parlist,
298 hdrl_image ** data,
299 const cpl_propertylist * qc_list,
300 cpl_propertylist ** ext_plist,
301 const char * procatg,
302 const char * recipe) ;
303
305 const char * filename,
306 cpl_frameset * allframes,
307 cpl_frameset * inframes,
308 const cpl_parameterlist * parlist,
309 hdrl_image ** data,
310 const cpl_propertylist * qc_list,
311 cpl_propertylist ** ext_plist,
312 const char * procatg,
313 const char * recipe) ;
314
316 const char * filename,
317 cpl_frameset * allframes,
318 cpl_frameset * inframes,
319 const cpl_parameterlist * parlist,
320 hdrl_image ** data,
321 const cpl_propertylist * qc_list,
322 cpl_propertylist ** ext_plist,
323 const char * procatg,
324 const char * recipe) ;
325
327 const char * filename,
328 cpl_frameset * allframes,
329 cpl_frameset * inframes,
330 const cpl_parameterlist * parlist,
331 cpl_table * spliced_1d,
332 const cpl_propertylist * qc_list,
333 cpl_propertylist * ext_plist,
334 const char * procatg,
335 const char * recipe) ;
336
338 const char * filename,
339 cpl_frameset * allframes,
340 cpl_frameset * inframes,
341 const cpl_parameterlist * parlist,
342 cpl_table ** tables,
343 const cpl_propertylist * qc_list,
344 cpl_propertylist ** ext_plist,
345 const char * procatg,
346 const char * recipe) ;
347
349 const char * filename,
350 cpl_frameset * allframes,
351 cpl_frameset * inframes,
352 const cpl_parameterlist * parlist,
353 cpl_table ** tables,
354 const cpl_propertylist * qc_list,
355 cpl_propertylist ** ext_plist,
356 const char * procatg,
357 const char * recipe) ;
358
359#endif
360
int cr2res_io_save_EMISSION_LINES(const char *filename, cpl_table *out_table, const cpl_parameterlist *parlist, cpl_frameset *set, const char *recipe, const char *setting_string)
Save EMISSION_LINES file.
Definition cr2res_io.c:1465
cpl_table * cr2res_io_load_EXTRACT_1D(const char *filename, int detector)
Load a table from a EXTRACT_1D.
Definition cr2res_io.c:1326
cpl_frame * cr2res_io_find_SLIT_MODEL(const cpl_frameset *in, const char *setting_id, cr2res_decker cr2res_decker)
Get the first CR2RES_SLIT_MODEL_DRSTYPE frame from a frameset.
Definition cr2res_io.c:167
const cpl_frame * cr2res_io_find_BPM(const cpl_frameset *in)
Get the first CR2RES_BPM_DRSTYPE frame from a frameset.
Definition cr2res_io.c:369
int cr2res_io_save_SLIT_MODEL(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, hdrl_image **data, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a SLIT_MODEL.
Definition cr2res_io.c:1853
const cpl_frame * cr2res_io_find_SLIT_FUNC(const cpl_frameset *in)
Get the first CR2RES_SLIT_FUNC_DRSTYPE frame from a frameset.
Definition cr2res_io.c:267
const cpl_frame * cr2res_io_find_TRACE_WAVE(const cpl_frameset *in)
Get the first CR2RES_TW_DRSTYPE frame from a frameset.
Definition cr2res_io.c:231
cpl_vector * cr2res_io_read_ndsamples(const cpl_frameset *in)
Get the NDSAMPLES from a frame set.
Definition cr2res_io.c:492
int cr2res_io_save_PHOTO_FLUX(const char *filename, cpl_table *out_table, const cpl_parameterlist *parlist, cpl_frameset *set, const char *recipe)
Save PHOTO_FLUX file.
Definition cr2res_io.c:1419
char * cr2res_io_create_extname(int detector, int data)
Create Extname.
Definition cr2res_io.c:648
int cr2res_io_save_WAVE_MAP(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, hdrl_image **data, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a WAVE_MAP.
Definition cr2res_io.c:1946
int cr2res_io_convert_order_idx_to_idxp(int)
Convert the order_idx to the order_idxp.
Definition cr2res_io.c:613
int cr2res_io_save_TRACE_WAVE(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, cpl_table **tables, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a TRACE_WAVE.
Definition cr2res_io.c:1700
int cr2res_io_save_SPLICED_1D(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, cpl_table *spliced_1d, const cpl_propertylist *qc_list, cpl_propertylist *ext_plist, const char *procatg, const char *recipe)
Save a SPLICED_1D.
Definition cr2res_io.c:2008
cpl_frameset * cr2res_io_extract_decker_frameset(const cpl_frameset *in, const char *tag, cr2res_decker decker)
Extract the frames with the given tag and Decker position.
Definition cr2res_io.c:557
int cr2res_io_save_EXTRACT_2D(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, cpl_table **tables, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a 2D extracted spectrum.
Definition cr2res_io.c:2039
cpl_vector * cr2res_io_read_dits(const cpl_frameset *in)
Get the DITS from a frame set.
Definition cr2res_io.c:432
int cr2res_io_save_EXTRACT_1D(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, cpl_table **tables, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a 1D extracted spectrum.
Definition cr2res_io.c:1762
cpl_table * cr2res_load_table(const char *in, int det_nr, int pmin, int pmax)
Load the table accordingly.
Definition cr2res_io.c:892
hdrl_image * cr2res_io_load_SLIT_MODEL(const char *filename, int detector)
Load an hdrl image from a SLIT MODEL.
Definition cr2res_io.c:1199
cpl_frameset * cr2res_io_find_TRACE_WAVE_all(const cpl_frameset *in)
Get the CR2RES_TW_DRSTYPE frames from a frameset.
Definition cr2res_io.c:293
hdrl_imagelist * cr2res_io_load_image_list_from_set(const cpl_frameset *in, int detector)
Load an hdrl image list from an images frameset.
Definition cr2res_io.c:838
hdrl_imagelist * cr2res_io_load_DETLIN_COEFFS(const char *filename, int detector)
Load the detlin coefficients.
Definition cr2res_io.c:1064
hdrl_image * cr2res_io_load_MASTER_DARK(const char *filename, int detector)
Load an image from a MASTER_DARK.
Definition cr2res_io.c:1020
cpl_table * cr2res_io_get_eop_table()
Get the eop_table.
Definition cr2res_io.c:120
int cr2res_io_save_MASTER_FLAT(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, hdrl_image **master_flats, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a MASTER_FLAT.
Definition cr2res_io.c:1669
int cr2res_io_save_MASTER_DARK(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, hdrl_image **master_darks, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a MASTER_DARK.
Definition cr2res_io.c:1521
cpl_frameset * cr2res_io_find_BPM_all(const cpl_frameset *in)
Get the CR2RES_BPM_DRSTYPE frames from a frameset.
Definition cr2res_io.c:397
int cr2res_io_save_DETLIN_COEFFS(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, hdrl_imagelist **coeffs, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a DETLIN COEFFS.
Definition cr2res_io.c:1553
int cr2res_io_save_THROUGHPUT(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, cpl_table **tables, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a THROUGHPUT table.
Definition cr2res_io.c:1792
int cr2res_io_get_ext_idx(const char *filename, int detector, int data)
Get the wished extension number for a detector.
Definition cr2res_io.c:674
int cr2res_io_save_TRACE_MAP(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, hdrl_image **data, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a TRACE_MAP.
Definition cr2res_io.c:1915
cpl_table * cr2res_io_load_SLIT_FUNC(const char *filename, int detector)
Load a table from a SLIT_FUNC.
Definition cr2res_io.c:1169
int cr2res_io_save_SLIT_CURV_MAP(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, hdrl_image **data, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a SLIT_CURV_MAP.
Definition cr2res_io.c:1977
hdrl_image * cr2res_io_load_image(const char *in, int detector)
Load an hdrl image from a image file.
Definition cr2res_io.c:734
int cr2res_io_save_CALIBRATED(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, hdrl_image **calib_collapsed, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a CALIBRATED frame.
Definition cr2res_io.c:1638
int cr2res_io_save_SLIT_FUNC(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, cpl_table **slit_func, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a SLIT_FUNC.
Definition cr2res_io.c:1822
int cr2res_io_save_BPM(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, cpl_image **bpms, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a BPM.
Definition cr2res_io.c:1585
cpl_frameset * cr2res_io_find_EXTRACT_1D_all(const cpl_frameset *in)
Get the CR2RES_EXTRACT_1D_DRSTYPE frames from a frameset.
Definition cr2res_io.c:331
int cr2res_io_save_COMBINED(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, hdrl_image **data, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a COMBINED.
Definition cr2res_io.c:1884
cr2res_decker * cr2res_io_read_decker_positions(const cpl_frameset *in)
Get the decker positions from a frame set.
Definition cr2res_io.c:521
cpl_bivector * cr2res_io_load_EMISSION_LINES(const char *filename)
Load an EMISSION_LINES bivector.
Definition cr2res_io.c:933
cpl_table * cr2res_io_load_TRACE_WAVE(const char *filename, int detector)
Load a table from a TRACE_WAVE.
Definition cr2res_io.c:1139
int cr2res_io_save_LINES_DIAGNOSTICS(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, cpl_table **tables, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a LINES_DIAGNOSTICS.
Definition cr2res_io.c:1731
cpl_image * cr2res_io_load_BPM(const char *filename, int detector, int data)
Load an image from a BPM.
Definition cr2res_io.c:987
cpl_vector * cr2res_io_read_ndits(const cpl_frameset *in)
Get the NDITs from a frame set.
Definition cr2res_io.c:462
hdrl_imagelist * cr2res_io_load_image_list(const char *in, int detector)
Load an hdrl image list from a cube file.
Definition cr2res_io.c:784
int cr2res_io_save_POL_SPEC(const char *filename, cpl_frameset *allframes, cpl_frameset *inframes, const cpl_parameterlist *parlist, cpl_table **tables, const cpl_propertylist *qc_list, cpl_propertylist **ext_plist, const char *procatg, const char *recipe)
Save a Polarimetry spectrum.
Definition cr2res_io.c:2069
hdrl_image * cr2res_io_load_MASTER_FLAT(const char *filename, int detector)
Load an hdrl image from a MASTER_FLAT.
Definition cr2res_io.c:1096