ERIS Pipeline Reference Manual 1.8.15
eris_nix_master_dark.h
1/* $Id$
2 *
3 * This file is part of the ERIS/NIX Pipeline
4 * Copyright (C) 2017 European Southern Observatory
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19 */
20
21/*
22 * $Author$:
23 * $Date$:
24 * $Rev$:
25 */
26
27/*
28 * This file defines structures and methods used to store and maintain
29 * an ERIS/NIX 'master_dark' result.
30 */
31
32#ifndef ERIS_NIX_MASTER_DARK_H
33#define ERIS_NIX_MASTER_DARK_H
34
35#ifdef HAVE_CONFIG_H
36#include <config.h>
37#endif
38
39/*-----------------------------------------------------------------------------
40 Defines
41 -----------------------------------------------------------------------------*/
42
43/*-----------------------------------------------------------------------------
44 Includes
45 -----------------------------------------------------------------------------*/
46
47#include <cpl.h>
48#include <hdrl.h>
49
50/*-----------------------------------------------------------------------------
51 Declarations
52 -----------------------------------------------------------------------------*/
53
54typedef struct {
55 char * filename;
56 hdrl_image * dark;
57 cpl_mask * hot_bpm;
58 cpl_propertylist * plist;
59} master_dark;
60
61/*-----------------------------------------------------------------------------
62 Prototypes
63 -----------------------------------------------------------------------------*/
64
65master_dark * en_master_dark_create(const hdrl_image *,
66 const cpl_mask *,
67 const char *,
68 const cpl_propertylist *);
69
70void en_master_dark_delete(master_dark *);
71
72master_dark * en_master_dark_load_from_frameset(const cpl_frameset *,
73 const char *,
74 cpl_frameset *);
75
76master_dark * en_master_dark_test(const cpl_size nx,
77 const cpl_size ny,
78 const double dit,
79 const int ndit,
80 const char * mode);
81
82#endif /* ERIS_NIX_MASTER_DARK_H */
83
84
master_dark * en_master_dark_create(const hdrl_image *, const cpl_mask *, const char *, const cpl_propertylist *)
Create a new master_dark struct and initialise the contents.
master_dark * en_master_dark_load_from_frameset(const cpl_frameset *, const char *, cpl_frameset *)
Load a 'master_dark' struct from a frameset.
void en_master_dark_delete(master_dark *)
Delete a 'master_dark' struct.
master_dark * en_master_dark_test(const cpl_size nx, const cpl_size ny, const double dit, const int ndit, const char *mode)
Create a test master_dark struct.