예제 #1
0
    def __init__(self, parser):
        ExcelLayoutSheetParsingContainer.__init__(self, parser=parser,
                                                  sheet=parser.sheet)

        #: Contains the current step parsing container.
        self.__current_step = None
        #: The transfer volume tag definition for the current step.
        self.__current_vol_predicate = None
        #: The diluent tag definition for the current step.
        self.__current_dil_predicate = None

        #: Maps the step container onto starting rows (to allow for
        #: layout association).
        self.__steps_by_row = dict()

        #: Stores the step container for each layout container.
        self.__steps_by_layout = dict()
예제 #2
0
    def _get_tag_label(self, column_index):
        """
        The generic sample transfer parser only regards transfer volume
        tags.
        """
        tag_label = ExcelLayoutSheetParsingContainer._get_tag_label(self,
                                                            column_index)
        if tag_label is None: return None
        adj_tag_label = '%s_%i' % (tag_label, self.__current_step.number)

        if self._parser.transfer_volume_validator.has_alias(tag_label):
            self.__current_vol_predicate = adj_tag_label
            return adj_tag_label
        elif self._parser.diluent_validator.has_alias(tag_label):
            self.__current_dil_predicate = adj_tag_label
            return adj_tag_label
        else:
            return None