Source code for pipeline.h.cli.h_restoredata

##################### generated by xml-casa (v2) from h_restoredata.xml #############
##################### 58c59a5e0abbde66033d3db42541c587 ##############################
from __future__ import absolute_import
import numpy
from casatools.typecheck import CasaValidator as _val_ctor
_pc = _val_ctor( )
from casatools.coercetype import coerce as _coerce
from .private.task_h_restoredata import h_restoredata as _h_restoredata_t
from casatasks.private.task_logging import start_log as _start_log
from casatasks.private.task_logging import end_log as _end_log

class _h_restoredata:
    """
    h_restoredata ---- Restore flags and calibration state from a pipeline run

    The h_restoredata task restores flagged and calibrated
    MeasurementSets from archived ASDMs and pipeline flagging and
    calibration date products.
    
    The h_restoredata restores flagged and calibrated data from
    archived ASDMs and pipeline flagging and calibration data
    products. Pending archive retrieval support h_restoredata assumes
    that the required products are available in the rawdata_dir in
    the format produced by the h_exportdata task.
    
    h_restoredata assumes that the following entities are available
    in the rawdata_dir directory
    
    o the ASDMs to be restored
    o for each ASDM in the input list
    o a compressed tar file of the final flagversions file, e.g.,
    uid___A002_X30a93d_X43e.ms.flagversions.tar.gz
    o a text file containing the applycal instructions, e.g.,
    uid___A002_X30a93d_X43e.ms.calapply.txt
    o a compressed tar file containing the caltables for the parent
    session, e.g., uid___A001_X74_X29.session_3.caltables.tar.gz
    
    h_restore data performs the following operations:
    
    o imports the ASDM(s))
    o removes the default MS.flagversions directory created by the filler
    o restores the final MS.flagversions directory stored by the pipeline
    o restores the final set of pipeline flags to the MS
    o restores the final calibration state of the MS
    o restores the final calibration tables for each MS
    o applies the calibration tables to each MS

    --------- parameter descriptions ---------------------------------------------

    vis           List of raw visibility data files to be restored. Assumed to
                  be in the directory specified by rawdata_dir.
                  
                  example: vis=['uid___A002_X30a93d_X43e']
                  
                  Can only set when pipelinemode='interactive'
    session       List of sessions, one per visibility file.
                  
                  example: session=['session_3']
                  
                  Can only set when pipelinemode='interactive'
    products_dir  Path to the data products directory, used to copy calibration
                  products from. The parameter is effective only when
                  copytoraw=True. When copytoraw=False, calibration products in
                  rawdata_dir will be used.
                  
                  example: products_dir='/path/to/my/products'
                  
                  Can only set when pipelinemode='interactive'
    copytoraw     Copy calibration and flagging tables from products_dir to
                  rawdata_dir directory.
                  
                  example: copytoraw=False
                  
                  Can only set when pipelinemode='interactive'
    rawdata_dir   Path to the rawdata subdirectory.
                  
                  example: rawdata_dir='/path/to/my/rawdata'
                  
                  Can only set when pipelinemode='interactive'
    lazy          Use the lazy filler option
                  
                  example: lazy=True
                  
                  Can only set when pipelinemode='interactive'
    bdfflags      Set the BDF flags
                  
                  example: bdfflags=False
                  
                  Can only set when pipelinemode='interactive'
    ocorr_mode    Set correlation import mode
                  
                  example: ocorr_mode='ca'
                  
                  Can only set when pipelinemode='interactive'
    asis          Set list of tables to import as-is into the Measurement Set
                  
                  example: ocorr_mode='Source Receiver'
                  
                  Can only set when pipelinemode='interactive'
    pipelinemode  The pipeline operating mode. In 'automatic' mode the pipeline
                  determines the values of all context defined pipeline inputs
                  automatically. In 'interactive' mode the user can set the
                  pipeline context defined parameters manually. In 'getinputs'
                  mode the user can check the settings of all pipeline
                  parameters without running the task.
    dryrun        Run the commands (True) or generate the commands to be run
                  but do not execute (False).
                  
                  Can only set when pipelinemode='interactive'
    acceptresults Add the results into the pipeline contextAdd the results of the task to the pipeline context (True) or
                  reject them (False).

    --------- examples -----------------------------------------------------------

    
    1. Restore the pipeline results for a single ASDM in a single session
    
    h_restoredata (vis=['uid___A002_X30a93d_X43e'], session=['session_1'], ocorr_mode='ca')


    """

    _info_group_ = """pipeline"""
    _info_desc_ = """Restore flags and calibration state from a pipeline run"""

    def __call__( self, vis=[  ], session=[  ], products_dir='../products', copytoraw=True, rawdata_dir='../rawdata', lazy=False, bdfflags=True, ocorr_mode='ca', asis='', pipelinemode='automatic', dryrun=False, acceptresults=True ):
        schema = {'vis': {'type': 'cStrVec', 'coerce': [_coerce.to_list,_coerce.to_strvec]}, 'session': {'type': 'cStrVec', 'coerce': [_coerce.to_list,_coerce.to_strvec]}, 'products_dir': {'type': 'cStr', 'coerce': _coerce.to_str}, 'copytoraw': {'type': 'cBool'}, 'rawdata_dir': {'type': 'cStr', 'coerce': _coerce.to_str}, 'lazy': {'type': 'cBool'}, 'bdfflags': {'type': 'cBool'}, 'ocorr_mode': {'type': 'cStr', 'coerce': _coerce.to_str}, 'asis': {'type': 'cStr', 'coerce': _coerce.to_str}, 'pipelinemode': {'type': 'cStr', 'coerce': _coerce.to_str, 'allowed': [ 'automatic', 'interactive', 'getinputs' ]}, 'dryrun': {'type': 'cBool'}, 'acceptresults': {'type': 'cBool'}}
        doc = {'vis': vis, 'session': session, 'products_dir': products_dir, 'copytoraw': copytoraw, 'rawdata_dir': rawdata_dir, 'lazy': lazy, 'bdfflags': bdfflags, 'ocorr_mode': ocorr_mode, 'asis': asis, 'pipelinemode': pipelinemode, 'dryrun': dryrun, 'acceptresults': acceptresults}
        assert _pc.validate(doc,schema), str(_pc.errors)
        _logging_state_ = _start_log( 'h_restoredata', [ 'vis=' + repr(_pc.document['vis']), 'session=' + repr(_pc.document['session']), 'products_dir=' + repr(_pc.document['products_dir']), 'copytoraw=' + repr(_pc.document['copytoraw']), 'rawdata_dir=' + repr(_pc.document['rawdata_dir']), 'lazy=' + repr(_pc.document['lazy']), 'bdfflags=' + repr(_pc.document['bdfflags']), 'ocorr_mode=' + repr(_pc.document['ocorr_mode']), 'asis=' + repr(_pc.document['asis']), 'pipelinemode=' + repr(_pc.document['pipelinemode']), 'dryrun=' + repr(_pc.document['dryrun']), 'acceptresults=' + repr(_pc.document['acceptresults']) ] )
        return _end_log( _logging_state_, 'h_restoredata', _h_restoredata_t( _pc.document['vis'], _pc.document['session'], _pc.document['products_dir'], _pc.document['copytoraw'], _pc.document['rawdata_dir'], _pc.document['lazy'], _pc.document['bdfflags'], _pc.document['ocorr_mode'], _pc.document['asis'], _pc.document['pipelinemode'], _pc.document['dryrun'], _pc.document['acceptresults'] ) )

h_restoredata = _h_restoredata( )