GRAVI Pipeline Reference Manual 1.9.0
Loading...
Searching...
No Matches
Macros | Typedefs | Functions
gravi_data.h File Reference
#include <cpl.h>
#include <stdio.h>
#include <string.h>
#include "gravi_pfits.h"

Go to the source code of this file.

Macros

#define gravi_data_get_oi_wave(data, type, pol, npol)   gravi_data_get_oi_table (data, GRAVI_OI_WAVELENGTH_EXT, GRAVI_INSNAME(type,pol,npol))
 
#define gravi_data_get_oi_vis(data, type, pol, npol)   gravi_data_get_oi_table (data, GRAVI_OI_VIS_EXT, GRAVI_INSNAME(type,pol,npol))
 
#define gravi_data_get_oi_vis2(data, type, pol, npol)   gravi_data_get_oi_table (data, GRAVI_OI_VIS2_EXT, GRAVI_INSNAME(type,pol,npol))
 
#define gravi_data_get_oi_t3(data, type, pol, npol)   gravi_data_get_oi_table (data, GRAVI_OI_T3_EXT, GRAVI_INSNAME(type,pol,npol))
 
#define gravi_data_get_oi_flux(data, type, pol, npol)   gravi_data_get_oi_table (data, GRAVI_OI_FLUX_EXT, GRAVI_INSNAME(type,pol,npol))
 
#define gravi_data_get_wave_fibre(data, type)   gravi_data_get_table (data, type==GRAVI_SC?GRAVI_WAVE_FIBRE_SC_EXT:GRAVI_WAVE_FIBRE_FT_EXT)
 
#define gravi_data_get_wave_fibre_plist(data, type)   gravi_data_get_plist (data, type==GRAVI_SC?GRAVI_WAVE_FIBRE_SC_EXT:GRAVI_WAVE_FIBRE_FT_EXT)
 
#define gravi_data_get_wave_data(data, type)   gravi_data_get_table (data, type==GRAVI_SC?GRAVI_WAVE_DATA_SC_EXT:GRAVI_WAVE_DATA_FT_EXT)
 
#define gravi_data_get_wave_data_plist(data, type)   gravi_data_get_plist (data, type==GRAVI_SC?GRAVI_WAVE_DATA_SC_EXT:GRAVI_WAVE_DATA_FT_EXT)
 
#define gravi_data_has_wave(data, type)   gravi_data_has_extension (data, type==GRAVI_SC?GRAVI_WAVE_DATA_SC_EXT:GRAVI_WAVE_DATA_FT_EXT)
 
#define gravi_data_get_p2vm_data(data, type)   gravi_data_get_table (data, type==GRAVI_SC?GRAVI_P2VM_DATA_SC_EXT:GRAVI_P2VM_DATA_FT_EXT)
 
#define gravi_data_has_p2vm(data, type)   gravi_data_has_extension (data, type==GRAVI_SC?GRAVI_P2VM_DATA_SC_EXT:GRAVI_P2VM_DATA_FT_EXT)
 
#define gravi_data_get_imaging_detector(data, type)   gravi_data_get_table (data, type==GRAVI_SC?GRAVI_IMAGING_DETECTOR_SC_EXT:GRAVI_IMAGING_DETECTOR_FT_EXT)
 
#define gravi_data_has_detector(data, type)   gravi_data_has_extension (data, type==GRAVI_SC?GRAVI_IMAGING_DETECTOR_SC_EXT:GRAVI_IMAGING_DETECTOR_FT_EXT)
 
#define gravi_data_get_spectrum_data(data, type)   gravi_data_get_table (data, type==GRAVI_SC?GRAVI_SPECTRUM_DATA_SC_EXT:GRAVI_SPECTRUM_DATA_FT_EXT)
 
#define gravi_data_get_spectrum_data_plist(data, type)   gravi_data_get_plist (data, type==GRAVI_SC?GRAVI_SPECTRUM_DATA_SC_EXT:GRAVI_SPECTRUM_DATA_FT_EXT)
 
#define gravi_data_has_spectrum(data, type)   gravi_data_has_extension (data, type==GRAVI_SC?GRAVI_SPECTRUM_DATA_SC_EXT:GRAVI_SPECTRUM_DATA_FT_EXT)
 
#define gravi_data_get_profile_plist(data)   gravi_data_get_plist (data, GRAVI_PROFILE_DATA_EXT)
 
#define gravi_data_get_oi_wave_plist(data, type, pol, npol)   gravi_data_get_oi_plist (data, GRAVI_OI_WAVELENGTH_EXT, GRAVI_INSNAME(type,pol,npol))
 
#define gravi_data_get_oi_vis_plist(data, type, pol, npol)   gravi_data_get_oi_plist (data, GRAVI_OI_VIS_EXT, GRAVI_INSNAME(type,pol,npol))
 
#define gravi_data_get_oi_vis2_plist(data, type, pol, npol)   gravi_data_get_oi_plist (data, GRAVI_OI_VIS2_EXT, GRAVI_INSNAME(type,pol,npol))
 
#define gravi_data_get_oi_t3_plist(data, type, pol, npol)   gravi_data_get_oi_plist (data, GRAVI_OI_T3_EXT, GRAVI_INSNAME(type,pol,npol))
 
#define gravi_data_get_oi_flux_plist(data, type, pol, npol)   gravi_data_get_oi_plist (data, GRAVI_OI_FLUX_EXT, GRAVI_INSNAME(type,pol,npol))
 
#define gravi_data_get_header(data)   gravi_data_get_plist (data, GRAVI_PRIMARY_HDR_EXT)
 
#define gravi_data_get_extname(data, ext)   gravi_pfits_get_extname (gravi_data_get_plist_x(data, ext))
 
#define gravi_data_get_qc(data)   gravi_plist_get_qc (gravi_data_get_plist(data, GRAVI_PRIMARY_HDR_EXT) )
 
#define gravi_data_is_internal(data)   gravi_pfits_is_calib (gravi_data_get_plist(data, GRAVI_PRIMARY_HDR_EXT))
 
#define gravi_data_get_img(data, ext)   cpl_imagelist_get (gravi_data_get_cube (data,ext), 0)
 
#define gravi_data_get_spec_res(data)   gravi_pfits_get_spec_res (gravi_data_get_plist (data, GRAVI_PRIMARY_HDR_EXT))
 

Typedefs

typedef typedefCPL_BEGIN_DECLS struct _gravi_data_ gravi_data
 

Functions

gravi_datagravi_data_new (int)
 Create an empty gravi_data.
 
gravi_datagravi_data_duplicate (const gravi_data *)
 Create a copy of the gravi data.
 
cpl_error_code gravi_data_append (gravi_data *first, const gravi_data *second, int force)
 Append a gravi_data into another existing one.
 
void gravi_data_delete (gravi_data *)
 Delete a gravi data.
 
gravi_datagravi_data_load (const char *filename)
 Low-level function to load FITS file.
 
gravi_datagravi_data_load_ext (const char *filename, const char *extensions_regexp)
 Low-level function to load FITS file.
 
gravi_datagravi_data_load_frame (cpl_frame *frame, cpl_frameset *used_frameset)
 Load a FITS file and create a gravi_data.
 
int gravi_data_patch (gravi_data *file_to_patch, cpl_frameset *patch_frameset)
 Load a RAW FITS file and create a gravi_data.
 
gravi_datagravi_data_load_rawframe (cpl_frame *frame, cpl_frameset *used_frameset)
 Load a RAW FITS file and create a gravi_data.
 
gravi_datagravi_data_load_rawframe_ext (cpl_frame *frame, cpl_frameset *used_frameset, const char *extensions_regexp)
 Load a RAW FITS file and create a gravi_data from specified extensions.
 
cpl_error_code gravi_data_save_new (gravi_data *self, cpl_frameset *allframes, const char *filename, const char *suffix, const cpl_parameterlist *parlist, cpl_frameset *usedframes, cpl_frame *frame, const char *recipe, cpl_propertylist *applist, const char *proCatg)
 Save a gravi data in a CPL-complian FITS file.
 
cpl_error_code gravi_data_save_data (gravi_data *, const char *, unsigned)
 Save a gravi data in a FITS file.
 
int gravi_data_has_extension (gravi_data *, const char *)
 Check if data has extension with given EXTNAME.
 
int gravi_data_has_type (gravi_data *self, const char *type)
 Return the number of ext whose EXTNAME and INSNAME match 'type'.
 
int gravi_data_get_size (const gravi_data *)
 Get the number of extension in a gravi_data.
 
cpl_propertylist * gravi_data_get_plist (gravi_data *, const char *)
 Get the propertylist from EXTNAME.
 
cpl_propertylist * gravi_data_get_plist_x (gravi_data *, int)
 Get the propertylist of an extension by position.
 
cpl_table * gravi_data_get_table_x (gravi_data *, int)
 Get the table of an extension by position.
 
cpl_imagelist * gravi_data_get_cube_x (gravi_data *, int)
 Get the cube of an extension by position.
 
cpl_table * gravi_data_get_table (gravi_data *, const char *)
 Return a pointer on a table extension by its EXTNAME.
 
cpl_imagelist * gravi_data_get_cube (gravi_data *, const char *)
 Return a pointer on an IMAGE extension by its EXTNAME.
 
cpl_propertylist * gravi_data_get_oi_plist (gravi_data *, const char *, const char *)
 Get the propertylist from EXTNAME and INSNAME.
 
cpl_table * gravi_data_get_oi_table (gravi_data *, const char *, const char *)
 Get an OI_FITS table from EXTNAME and INSNAME.
 
cpl_table ** gravi_data_get_oiwave_tables (gravi_data *data, int type_data, int npol)
 Get pointer to the OI_WAVELENGTH tables of both polarisations.
 
cpl_propertylist * gravi_data_get_extra_primary_header (gravi_data *)
 Get the propertylist for additional keywords to the primary header.
 
cpl_error_code gravi_data_erase_x (gravi_data *, int)
 Erase an extension by its position.
 
cpl_error_code gravi_data_erase (gravi_data *, const char *)
 Erase an extension by its EXTNAME.
 
cpl_error_code gravi_data_erase_type (gravi_data *self, const char *type)
 Erase all extension related to an instrument (SC, FT, MET...)
 
cpl_error_code gravi_data_add_table (gravi_data *self, cpl_propertylist *plist, const char *extname, cpl_table *table)
 Add a BINTABLE extension in gravi_data.
 
cpl_error_code gravi_data_add_cube (gravi_data *self, cpl_propertylist *plist, const char *extname, cpl_imagelist *imglist)
 Add an IMAGE (imagelist) extension in gravi_data.
 
cpl_error_code gravi_data_add_img (gravi_data *self, cpl_propertylist *plist, const char *extname, cpl_image *image)
 Add an IMAGE (single image) extension in gravi_data.
 
cpl_error_code gravi_data_copy_ext (gravi_data *output, gravi_data *input, const char *name)
 Copy extensions from one data to another.
 
cpl_error_code gravi_data_copy_ext_i (gravi_data *output, gravi_data *input, cpl_size num)
 Copy extensions from one data to another.
 
cpl_error_code gravi_data_copy_ext_insname (gravi_data *output, gravi_data *input, const char *name, const char *insname)
 Copy extensions from one data to another.
 
cpl_error_code gravi_data_move_ext (gravi_data *output, gravi_data *input, const char *name)
 Move extensions from one data to another.
 
cpl_error_code gravi_data_clean_for_astro (gravi_data *data)
 Clean the data to keep only OIFITS extensions related to SC.
 
cpl_error_code gravi_data_check_consistency (gravi_data *data)
 Verify the integrity of RAW data.
 
cpl_error_code gravi_data_detector_cleanup (gravi_data *data, const cpl_parameterlist *parlist)
 Perform self-bias correction to the SC raw data.
 
cpl_error_code gravi_data_dump (gravi_data *self)
 Dump the overall structure of a gravi_data in stdout.
 
cpl_error_code gravi_data_dump_mode (gravi_data *data)
 Dump some information about data in messagin.
 

Macro Definition Documentation

◆ gravi_data_get_extname

#define gravi_data_get_extname (   data,
  ext 
)    gravi_pfits_get_extname (gravi_data_get_plist_x(data, ext))

Definition at line 76 of file gravi_data.h.

◆ gravi_data_get_header

#define gravi_data_get_header (   data)    gravi_data_get_plist (data, GRAVI_PRIMARY_HDR_EXT)

Definition at line 75 of file gravi_data.h.

◆ gravi_data_get_imaging_detector

#define gravi_data_get_imaging_detector (   data,
  type 
)    gravi_data_get_table (data, type==GRAVI_SC?GRAVI_IMAGING_DETECTOR_SC_EXT:GRAVI_IMAGING_DETECTOR_FT_EXT)

Definition at line 60 of file gravi_data.h.

◆ gravi_data_get_img

#define gravi_data_get_img (   data,
  ext 
)    cpl_imagelist_get (gravi_data_get_cube (data,ext), 0)

Definition at line 79 of file gravi_data.h.

◆ gravi_data_get_oi_flux

#define gravi_data_get_oi_flux (   data,
  type,
  pol,
  npol 
)    gravi_data_get_oi_table (data, GRAVI_OI_FLUX_EXT, GRAVI_INSNAME(type,pol,npol))

Definition at line 49 of file gravi_data.h.

◆ gravi_data_get_oi_flux_plist

#define gravi_data_get_oi_flux_plist (   data,
  type,
  pol,
  npol 
)    gravi_data_get_oi_plist (data, GRAVI_OI_FLUX_EXT, GRAVI_INSNAME(type,pol,npol))

Definition at line 73 of file gravi_data.h.

◆ gravi_data_get_oi_t3

#define gravi_data_get_oi_t3 (   data,
  type,
  pol,
  npol 
)    gravi_data_get_oi_table (data, GRAVI_OI_T3_EXT, GRAVI_INSNAME(type,pol,npol))

Definition at line 48 of file gravi_data.h.

◆ gravi_data_get_oi_t3_plist

#define gravi_data_get_oi_t3_plist (   data,
  type,
  pol,
  npol 
)    gravi_data_get_oi_plist (data, GRAVI_OI_T3_EXT, GRAVI_INSNAME(type,pol,npol))

Definition at line 72 of file gravi_data.h.

◆ gravi_data_get_oi_vis

#define gravi_data_get_oi_vis (   data,
  type,
  pol,
  npol 
)    gravi_data_get_oi_table (data, GRAVI_OI_VIS_EXT, GRAVI_INSNAME(type,pol,npol))

Definition at line 46 of file gravi_data.h.

◆ gravi_data_get_oi_vis2

#define gravi_data_get_oi_vis2 (   data,
  type,
  pol,
  npol 
)    gravi_data_get_oi_table (data, GRAVI_OI_VIS2_EXT, GRAVI_INSNAME(type,pol,npol))

Definition at line 47 of file gravi_data.h.

◆ gravi_data_get_oi_vis2_plist

#define gravi_data_get_oi_vis2_plist (   data,
  type,
  pol,
  npol 
)    gravi_data_get_oi_plist (data, GRAVI_OI_VIS2_EXT, GRAVI_INSNAME(type,pol,npol))

Definition at line 71 of file gravi_data.h.

◆ gravi_data_get_oi_vis_plist

#define gravi_data_get_oi_vis_plist (   data,
  type,
  pol,
  npol 
)    gravi_data_get_oi_plist (data, GRAVI_OI_VIS_EXT, GRAVI_INSNAME(type,pol,npol))

Definition at line 70 of file gravi_data.h.

◆ gravi_data_get_oi_wave

#define gravi_data_get_oi_wave (   data,
  type,
  pol,
  npol 
)    gravi_data_get_oi_table (data, GRAVI_OI_WAVELENGTH_EXT, GRAVI_INSNAME(type,pol,npol))

Definition at line 45 of file gravi_data.h.

◆ gravi_data_get_oi_wave_plist

#define gravi_data_get_oi_wave_plist (   data,
  type,
  pol,
  npol 
)    gravi_data_get_oi_plist (data, GRAVI_OI_WAVELENGTH_EXT, GRAVI_INSNAME(type,pol,npol))

Definition at line 69 of file gravi_data.h.

◆ gravi_data_get_p2vm_data

#define gravi_data_get_p2vm_data (   data,
  type 
)    gravi_data_get_table (data, type==GRAVI_SC?GRAVI_P2VM_DATA_SC_EXT:GRAVI_P2VM_DATA_FT_EXT)

Definition at line 57 of file gravi_data.h.

◆ gravi_data_get_profile_plist

#define gravi_data_get_profile_plist (   data)    gravi_data_get_plist (data, GRAVI_PROFILE_DATA_EXT)

Definition at line 67 of file gravi_data.h.

◆ gravi_data_get_qc

#define gravi_data_get_qc (   data)    gravi_plist_get_qc (gravi_data_get_plist(data, GRAVI_PRIMARY_HDR_EXT) )

Definition at line 77 of file gravi_data.h.

◆ gravi_data_get_spec_res

#define gravi_data_get_spec_res (   data)    gravi_pfits_get_spec_res (gravi_data_get_plist (data, GRAVI_PRIMARY_HDR_EXT))

Definition at line 80 of file gravi_data.h.

◆ gravi_data_get_spectrum_data

#define gravi_data_get_spectrum_data (   data,
  type 
)    gravi_data_get_table (data, type==GRAVI_SC?GRAVI_SPECTRUM_DATA_SC_EXT:GRAVI_SPECTRUM_DATA_FT_EXT)

Definition at line 63 of file gravi_data.h.

◆ gravi_data_get_spectrum_data_plist

#define gravi_data_get_spectrum_data_plist (   data,
  type 
)    gravi_data_get_plist (data, type==GRAVI_SC?GRAVI_SPECTRUM_DATA_SC_EXT:GRAVI_SPECTRUM_DATA_FT_EXT)

Definition at line 64 of file gravi_data.h.

◆ gravi_data_get_wave_data

#define gravi_data_get_wave_data (   data,
  type 
)    gravi_data_get_table (data, type==GRAVI_SC?GRAVI_WAVE_DATA_SC_EXT:GRAVI_WAVE_DATA_FT_EXT)

Definition at line 53 of file gravi_data.h.

◆ gravi_data_get_wave_data_plist

#define gravi_data_get_wave_data_plist (   data,
  type 
)    gravi_data_get_plist (data, type==GRAVI_SC?GRAVI_WAVE_DATA_SC_EXT:GRAVI_WAVE_DATA_FT_EXT)

Definition at line 54 of file gravi_data.h.

◆ gravi_data_get_wave_fibre

#define gravi_data_get_wave_fibre (   data,
  type 
)    gravi_data_get_table (data, type==GRAVI_SC?GRAVI_WAVE_FIBRE_SC_EXT:GRAVI_WAVE_FIBRE_FT_EXT)

Definition at line 51 of file gravi_data.h.

◆ gravi_data_get_wave_fibre_plist

#define gravi_data_get_wave_fibre_plist (   data,
  type 
)    gravi_data_get_plist (data, type==GRAVI_SC?GRAVI_WAVE_FIBRE_SC_EXT:GRAVI_WAVE_FIBRE_FT_EXT)

Definition at line 52 of file gravi_data.h.

◆ gravi_data_has_detector

#define gravi_data_has_detector (   data,
  type 
)    gravi_data_has_extension (data, type==GRAVI_SC?GRAVI_IMAGING_DETECTOR_SC_EXT:GRAVI_IMAGING_DETECTOR_FT_EXT)

Definition at line 61 of file gravi_data.h.

◆ gravi_data_has_p2vm

#define gravi_data_has_p2vm (   data,
  type 
)    gravi_data_has_extension (data, type==GRAVI_SC?GRAVI_P2VM_DATA_SC_EXT:GRAVI_P2VM_DATA_FT_EXT)

Definition at line 58 of file gravi_data.h.

◆ gravi_data_has_spectrum

#define gravi_data_has_spectrum (   data,
  type 
)    gravi_data_has_extension (data, type==GRAVI_SC?GRAVI_SPECTRUM_DATA_SC_EXT:GRAVI_SPECTRUM_DATA_FT_EXT)

Definition at line 65 of file gravi_data.h.

◆ gravi_data_has_wave

#define gravi_data_has_wave (   data,
  type 
)    gravi_data_has_extension (data, type==GRAVI_SC?GRAVI_WAVE_DATA_SC_EXT:GRAVI_WAVE_DATA_FT_EXT)

Definition at line 55 of file gravi_data.h.

◆ gravi_data_is_internal

#define gravi_data_is_internal (   data)    gravi_pfits_is_calib (gravi_data_get_plist(data, GRAVI_PRIMARY_HDR_EXT))

Definition at line 78 of file gravi_data.h.

Typedef Documentation

◆ gravi_data

typedef typedefCPL_BEGIN_DECLS struct _gravi_data_ gravi_data

Definition at line 39 of file gravi_data.h.