;---------------------------------------------------------------------------
; Document name: hsi_visibility_control__define.pro
; Time-stamp: <Fri Mar 21 2008 13:34:34 csillag tournesol2.obspm.fr>
;---------------------------------------------------------------------------
;+
; PROJECT:
;       HESSI
;
; NAME:
;       HESSI VISIBILITIES CONTROL STRUCTURE DEFINITION
;
; PURPOSE:
;       Defines the data type of the structure that controls the
;       output of the visibility object
;
; CATEGORY:
;       HESSI Utilities
;
; CALLING SEQUENCE:
;       var = {hsi_visibility_control}
;
; TAG NAMES:
;
; HISTORY:
;   29-apr-2009, acs add jana kasparova's vis_normalize, as
;                well as vis_max_corr
;   18-dec-2008, acs change vis_combine to vis_conjugate
;   19-aug-2005, acs template written
;   19-apr-2006, ras, det_index_mask
;   01-may-2006, acs, change det_index_mask from (9) to (9,3)
;                to make it compatible with the annsec software
;   22-may-2006, ras, vis_chi2lim: 0.0, $ ;
;   07-mar-2008, vis_filename changed to vis_input_fits for
;                consistency w/ im_input_fits, and vis_out into vis_out_filename
;   03-mar-2008, Kim. Commented out vis_allow_reprocess
;   17-dec-2008 -- acs, the parameter vis_combine has been changed to
;                  vis_conjugate after discussion with Gordon and Richard.
;	24-jul-2012, add vis_type - do regularized inversion of vis spectra to obtain
;		mean electron flux visibilities
;	27-aug-2014, added vis_use_flux_var
;	21-aug-2020, removed vis_use_flux_var as it was problematic for no purpose
;-

PRO HSI_visibility_control__Define

  dummy = {hsi_visibility_control, $
    ;det_index_mask: bytarr(9), $ ;ras, 19-apr-2006
    ;         vis_time_intervals: ptr_new(), $  ;acs, 30-jul-2006, to store several time intervals
    ;vis_use_flux_var: 0, $ 21-aug-2020 disabled.;
    ; If set, then use_flux_var passes through to visibility construction
    vis_input_fits: '', $
    vis_chi2lim: 0.0, $ ;ras, 22-may-2006
    vis_edit: 0B, $

    ; acs 2008-12-18 vis_combine is replaced by vis_conjugate, the only
    ; option to be set now
    vis_conjugate: 0B, $
    ;         vis_combine: 0B, $

    vis_normalize: 0B,$; Jana Kasparova, to call hsi_vis_normalize()
    vis_max_corr: 0.0, $
    ;vis_el_flux: 0B, $ get regularized el_flux vis
    vis_photon2el: 0, $ ratio of electron to photon bin energies
    vis_type:'', $ 'photon','electron','reg_photon'
    ;         tb_index: 0, $
    ;         eb_index: 0, $
    ;         vis_get_mode: 0b, $    ; 0: use tb_index/eb_index, 1: return all, 2:
    ; return all eb's, 3: return all tb's
    vis_out_filename: '', $
    vis_plotfit: 0B};, $

  ;         vis_allow_reprocess: 0B}                       ; , $
  ;         inherits hsi_modul_pattern_strategy_control }

END

;---------------------------------------------------------------------------
; End of 'hsi_visibility_control__define.pro'.
;---------------------------------------------------------------------------
