-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path09_0-DRL-Data-Structures.tex
40 lines (30 loc) · 2.57 KB
/
09_0-DRL-Data-Structures.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
\clearpage
\section{DRL Data Items and Structures}\label{sec:drl_data_structures}
%\TODO{CAVEAT: Section widely TAKEN 1:1 FROM MICADO - TO BE Checked!}
This Section describes the C Data Items and Data Structures that represent inside the C code the FITS input and output files of the recipes. \ac{METIS} follows the approach by MATISSE~\cite{MATISSE-DRLD}, as suggested by the Dataflow for ESO Observatories Deliverables Standard~\cite{1618}.
The conversion between data structures and \ac{FITS} files and vice versa will be implemented using the abstractions provided by \ac{CPL} and \ac{HDRL}.
Clarification of the terms used (see also~\cite{hdrl-manual}):
\begin{itemize}
\item \texttt{cpl\_propertylist}: Key-value pairs like \ac{FITS} headers.
\item \texttt{cpl\_image}: Representation of an image using two arrays of pixels: data, and bad pixels.
\item \texttt{cpl\_imagelist}: List of \texttt{cpl\_image}s.
\item \texttt{cpl\_table}: Tabular data like a catalog.
\item \texttt{hdrl\_image}: Higher level image, with three pixel arrays per image: data, uncertainty, and data quality.
The \texttt{hdrl\_image} will be used as primary structures to contain image data, because the three pixel arrays map very well to the imaging file formats.
\item \texttt{hdrl\_imagelist}: List of \texttt{hdrl\_image}s.
\item \texttt{*}: Pointer to a single instance of a type.
\item \texttt{* some\_type[]}: Pointer to a list of instances of a type.
\end{itemize}
E.g.
\begin{itemize}
\item \texttt{cpl\_propertylist * keywords: Primary keywords}: a pointer to the \texttt{cpl\_propertylist} that holds the \ac{FITS} headers of the primary extension,
\item \texttt{cpl\_propertylist * extkeywords[]: Extension keywords}: a pointer to a list of pointers to \texttt{cpl\_propertylist} instances that hold the \ac{FITS} headers for each extension,
\item \texttt{hdrl\_image * image: Image}: a pointer to a \texttt{hdrl\_image} instance holding the one image (for the single detector in N and LM, or spanning all detectors for the IFU) of this structure,
\item \texttt{hdrl\_imagelist * images: Images}: a pointer to a \texttt{hdrl\_imagelist} instance holding all the images (one for each detector) of this structure.
\end{itemize}
There are \ac{DRL} functions for creating, deleting, saving and loading data for each \ac{DRL} data structure when applicable (Sections~\ref{sec:drl_functions_ifu}, \ref{sec:drl_functions_img}, and \ref{sec:drl_functions_lss}).
\input{CalDB_data_items}
\input{LMS_data_items}
\input{IMG_data_items}
\input{LSS_data_items}
\input{ADI_data_items}