def node(self): if isinstance(self._data_desc, DataProcess): if self._data_desc.outcomes is not None and self._data_desc.outcomes.node: # that means that a data creation process has been registered and it has been # carried out return self._data_desc.outcomes.node elif self._data_desc.seed is not None: if isinstance(self._data_desc.seed, str): node = self._dm.get_data(self._data_desc.seed) self._data_desc.seed = Data(node) return node elif isinstance(self._data_desc.seed, Data): return self._data_desc.seed.node # if data is raw, .node is None else: return None else: return None elif self._node_name is None: # that means that a data creation process has been registered and will be # carried out by the framework through a callback return None else: if self._node is None: self._node = self._dm.get_data(self._node_name) return self._node
def __init__(self, data_desc=None, final=False, fbk_timeout=None, fbk_mode=None, set_periodic=None, clear_periodic=None, step_desc=None): Step.__init__(self, data_desc=Data(''), final=final, fbk_timeout=fbk_timeout, fbk_mode=fbk_mode, set_periodic=set_periodic, clear_periodic=clear_periodic, step_desc=step_desc) self.make_blocked()
def generate_data(self, dm, monitor, target): self.pdf.set_current_conf('ALT', root_regexp='PDF.*leaf_0-0$') self.pdf.unfreeze() return Data(self.pdf)
def generate_data(self, dm, monitor, target): return Data(dm.get_data('PDF_xref_loop'))
def get_data(self): if self.node is not None: d = Data(self.node) else: # in this case a data creation process is provided to the framework through the # callback HOOK.before_sending d = Data('') if self._step_desc is None: if isinstance(self._data_desc, DataProcess): step_desc = 'generate ' + repr(self._data_desc) elif isinstance(self._data_desc, Data): step_desc = 'use provided Data(...)' else: assert isinstance(self._data_desc, str) d.add_info("instantiate a node '{:s}' from the model".format( self._node_name)) if self._periodic_data is not None: p_sz = len(self._periodic_data) d.add_info("set {:d} periodic{:s}".format( p_sz, 's' if p_sz > 1 else '')) if self._periodic_data_to_remove is not None: p_sz = len(self._periodic_data_to_remove) d.add_info("clear {:d} periodic{:s}".format( p_sz, 's' if p_sz > 1 else '')) else: d.add_info(self._step_desc) if self.is_blocked(): d.make_blocked() if self._feedback_timeout is not None: d.feedback_timeout = self._feedback_timeout return d
def get_data(self): if self.node is not None: d = Data(self.node) else: # in this case a data creation process is provided to the framework through the # callback HOOK.before_sending d = Data('') if self._step_desc is None: if isinstance(self._data_desc, DataProcess): step_desc = 'generate ' + repr(self._data_desc) elif isinstance(self._data_desc, Data): step_desc = 'use provided Data(...)' else: assert isinstance(self._data_desc, str) d.add_info("instantiate a node '{:s}' from the model".format(self._node_name)) if self._periodic_data is not None: p_sz = len(self._periodic_data) d.add_info("set {:d} periodic{:s}".format(p_sz, 's' if p_sz > 1 else '')) if self._periodic_data_to_remove is not None: p_sz = len(self._periodic_data_to_remove) d.add_info("clear {:d} periodic{:s}".format(p_sz, 's' if p_sz > 1 else '')) else: d.add_info(self._step_desc) if self.is_blocked(): d.make_blocked() if self._feedback_timeout is not None: d.feedback_timeout = self._feedback_timeout return d