ewoksid02.tasks.looptask.LoopTask#
- class ewoksid02.tasks.looptask.LoopTask(inputs=None, varinfo=None, node_id=None, node_attrs=None, execinfo=None, profile_directory=None)[source]#
Bases:
TaskThe LoopTask class is a base task designed to handle iterative data processing. It provides functionality for reading datasets, managing processing loops, and controlling the pipeline flow. This class could be seen also a Reading node.
- Optional Inputs:
detector_name (str): Name of the detector used for data acquisition. This is the only mandatory input.
scan_memory_url (str): URL for accessing scan memory in online processing.
filename_data (str): Path to the dataset file (Master file, Nexus writer) for offline processing.
scan_nb (int): Scan number for identifying the dataset.
subscan (int): Subscan number for processing. Default is 1.
max_slice_size (int): Maximum number of frames to process in one iteration. Default is 20.
last_index_read (int): Index of the last frame read in the dataset. Default is 0.
range_index_read (list): Range of indices to read from the dataset. This parameter is not propagated to the next task.
loop_nb (int): Current loop iteration number. Default is 0.
dataset (numpy.ndarray): Signal dataset to be processed.
reading_node (bool): Flag to indicate if the task should read data from the node.
lima_url_template (str): Format string to locate the Lima file and the path to the data inside that file.
lima_url_template_args (dict): Dictionary to format the lima_url_template.
beacon_host (str): Host and port to plug blissdata to the correct beacon server. Only for online processing.
- Outputs:
last_index_read (int): Updated index of the last frame read.
loop_nb (int): Updated loop iteration number.
dataset (numpy.ndarray): Processed signal dataset.
continue_pipeline (bool): Flag to indicate whether the pipeline should continue.
- Parameters:
inputs (
Optional[Mapping])varinfo (
Optional[dict])node_id (
Union[str,int,tuple,None])node_attrs (
Optional[dict])execinfo (
Optional[dict])profile_directory (
Optional[dict])
- MISSING_DATA = <MISSING_DATA>#
- assert_ready_to_execute()#
- cancel()#
Function called when a task is cancelled. To be implemented by the derived classes
- property cancelled: bool#
Return True if the task has been cancelled by the user
- classmethod class_nonce()#
- classmethod class_nonce_data()#
- classmethod class_registry_name()#
- Return type:
Optional[str]
- cleanup_references()#
Removes all references to the inputs. Side effect: fixes the uhash of the task and outputs
- property done: bool#
Completed (with or without exception)
- property exception: Exception | None#
- execute(force_rerun=False, raise_on_error=True, cleanup_references=False)#
- Parameters:
force_rerun (
Optional[bool])raise_on_error (
Optional[bool])cleanup_references (
Optional[bool])
- property failed: bool#
Completed with exception
- fix_uhash()#
Fix the uhash when it is derived from the uhash data.
- get_input_uhashes()#
- get_input_value(key, default=<MISSING_DATA>)#
- Parameters:
default (
Any)- Return type:
Any
- get_input_values()#
- get_named_input_values()#
- get_output_transfer_data()#
The values are either DataUri or Variable
- get_output_uhashes()#
- get_output_value(key, default=<MISSING_DATA>)#
- Parameters:
default (
Any)- Return type:
Any
- get_output_values()#
- get_positional_input_values()#
- classmethod get_subclass(registry_name, _second_attempt=False)#
Retrieving a derived class
- classmethod get_subclass_names()#
- Return type:
List[str]
- classmethod get_subclasses()#
- get_uhash_init(serialize=False)#
- classmethod input_model()#
- Return type:
Optional[Type[BaseInputModel]]
- classmethod input_names()#
- Return type:
Set[str]
- property input_uhashes#
- property input_values#
DEPRECATED
- property input_variables: VariableContainer#
- property inputs: ReadOnlyVariableContainerNamespace#
- instance_nonce()#
- classmethod instantiate(registry_name, **kw)#
Factory method for instantiating a derived class.
- Parameters:
registry_name (
str) – for example “tasklib.tasks.MyTask” or “MyTask”**kw – Task constructor arguments
registry_name
- Returns Task:
- property is_ready_to_execute#
- property job_id: str | None#
- property label: str#
- property missing_inputs: VariableContainerMissingNamespace#
- property missing_outputs: VariableContainerMissingNamespace#
- property n_positional_inputs: int#
- classmethod n_required_positional_inputs()#
- Return type:
int
- property named_input_values#
DEPRECATED
- property node_id: str | int | tuple#
- property npositional_inputs#
DEPRECATED
- classmethod optional_input_names()#
- Return type:
Set[str]
- property output_metadata: dict | None#
- classmethod output_model()#
- Return type:
Optional[Type[BaseOutputModel]]
- classmethod output_names()#
- Return type:
Set[str]
- property output_transfer_data#
DEPRECATED
- property output_uhashes#
DEPRECATED
- property output_values#
DEPRECATED
- property output_variables: VariableContainer#
- property outputs: VariableContainerNamespace#
- property positional_input_values#
DEPRECATED
- classmethod required_input_names()#
- Return type:
Set[str]
- reset_state()#
- run()#
To be implemented by the derived classes
- set_uhash_init(pre_uhash=None, instance_nonce=None)#
- Parameters:
pre_uhash (
Union[str,bytes,UniversalHash,HasUhash,None])instance_nonce (
Optional[Any])
- property succeeded: bool#
Completed without exception and with output values
- property task_identifier: str#
- property uhash: UniversalHash | None#
- uhash_randomize()#
- undo_fix_uhash()#
- undo_randomize()#
- property workflow_id: str | None#