"""Quick Look analysis
"""
import logging
from ecpi.pipeline.lib.ecpi_pipeline import EclairsPipelineForHttpServer
import ecpi.database.interact_sdb as sdb
from ecpi.pipeline.io.params import SpreadSheetToEcpiProgAutoParams
logger = logging.getLogger(__name__)
[docs]class EclairsQlaLevel1(EclairsPipelineForHttpServer):
"""
Automatic program Quick Look Analysis level 1 ECPI
"""
def __init__(self, target, id_proc=None):
"""
Perform download of last file LEVEL 1 evt, att, orb
"""
# TODO:
with_master_file_parameters = False
logger.info(f'')
logger.info(f'============ QLA ECLAIRs Level 1 ===========')
logger.info(f'')
logger.info(target)
pass_id = target["data_group"]["id"]
class_id = target["data_group"]["id_class"]
logger.info(f'Search last download with {class_id}={pass_id} in SDB')
# f_att = sdb.find_name_last_download(pass_id, "SVO-ATT-CNV")
# f_orb = sdb.find_name_last_download(pass_id, "SVO-ORB-CNV")
# f_evt = sdb.find_name_last_download(pass_id, "ECL-EVT-SEC")
f_att = sdb.find_name_last_download("SVO-ATT-CNV")
f_orb = sdb.find_name_last_download("SVO-ORB-CNV")
f_evt = sdb.find_name_last_download("ECL-EVT-SEC")
logger.info(f'Files to download {f_att}, {f_orb}, {f_evt}...')
# define parameters
# TODO : activate CALI in the next release
# d_pars = {"general": {}, "sdb": {}, "caldb": {}, "dpco": {}, "cali": {}, "bube": {}, "imag": {}}
d_pars = {"general": {}, "sdb": {}, "caldb": {}, "dpco": {}, "bube": {}, "imag": {}}
d_pars["sdb"]["event_files"] = f'["{f_evt}"]'
d_pars["sdb"]["attitude_files"] = f'["{f_att}"]'
d_pars["sdb"]["l1_files"] = f'["{f_orb}"]'
# TODO: Set the new ARF filename
d_pars["caldb"]["arf_file"] = "arf_effarea_2021-01-30_09:06:00.fits"
if with_master_file_parameters:
# path of master file parameters
path_mfp = "tbd"
name_prog = "ap_qla_l1"
file_pars = SpreadSheetToEcpiProgAutoParams(path_mfp, name_prog)
if not file_pars.b_init:
logger.error(f"Can't retrieve parameters for program '{name_prog}'. => EXIT")
raise
pars_prog = file_pars.get_params_str()
d_pars.update(pars_prog)
else:
d_pars["dpco"]["out_files"] = '[]'
d_pars["bube"]["out_files"] = '["ECL-DET-UBC"]'
d_pars["bube"]["ear_occ_bub"] = ['PEO']
d_pars["bube"]["bkg_cor_mod"] = ['shape_moretti_smart']
d_pars["bube"]["energy_channels"] = '[[0,39], [40,63],[64,103],[104,223],[224,583]]'
d_pars["imag"]["out_files"] = '["ECL-SKY-IMA","ECL-SOP-IMA"]'
super().__init__(d_pars, id_proc)