Source code for pipeline.hif.tasks.refant.renderer

"""
Created on 22 Feb 2017

@author: sjw
"""
import collections
import os

import pipeline.infrastructure.logging as logging
import pipeline.infrastructure.renderer.basetemplates as basetemplates
import pipeline.infrastructure.utils as utils

__all__ = [
    'T2_4MDetailsRefantRenderer'
]

LOG = logging.get_logger(__name__)


[docs]class T2_4MDetailsRefantRenderer(basetemplates.T2_4MDetailsDefaultRenderer): def __init__(self, uri='refant.mako', description='Select reference antennas', always_rerender=False): super(T2_4MDetailsRefantRenderer, self).__init__(uri=uri, description=description, always_rerender=always_rerender)
[docs] def update_mako_context(self, ctx, context, result): refant_table_rows = make_refant_table(result) ctx.update({ 'refant_table': refant_table_rows, })
RefantTR = collections.namedtuple('RefantTR', 'vis refant') def make_refant_table(results): rows = [] for result in results: vis_cell = os.path.basename(result.inputs['vis']) # insert spaces in refant list to allow browser to break string if it wants refant_cell = result._refant.replace(',', ', ') tr = RefantTR(vis_cell, refant_cell) rows.append(tr) return utils.merge_td_columns(rows)