Tomography tasks#
How to use
These tasks come from ewokstomo tomwer. It can be installed with
pip install ewokstomo tomwer
ℹ️ These tasks are used at the following ESRF beamlines: BM05, ID11, ID15A, ID16B, BM18, ID19
H5ToNx#
- Identifier:
ewokstomo.tasks.nxtomomill.H5ToNx
- Task type:
class
- Required inputs:
bliss_hdf5_path, output_dir
- Optional inputs:
- Outputs:
result
SumTask#
Add two numbers
- Identifier:
ewokstomo.tasks.sumtask.SumTask
- Task type:
class
- Required inputs:
a
- Optional inputs:
b, delay
- Outputs:
result
SumTask1#
Add two numbers
- Identifier:
ewokstomo.tasks.sumtask.SumTask1
- Task type:
class
- Required inputs:
a
- Optional inputs:
b, delay
- Outputs:
result
SumTask2#
Add two numbers
- Identifier:
ewokstomo.tasks.sumtask.SumTask2
- Task type:
class
- Required inputs:
a
- Optional inputs:
b, delay
- Outputs:
result
FutureSupervisorTask#
Task used to wait for a ‘FutureTomwerObject’ and convert it to original instance of:
TomwerScanBase (data): if the FutureTomwerObject is based on a scan instance
TomwerVolumeBase (volume): if the FutureTomwerObject is based on a volume instance
tuple of IcatReconstructedVolumeDataset (data_portal_processed_datasets): if the FutureTomwerObject is based on a volume instance
- Identifier:
tomwer.core.process.cluster.supervisor.FutureSupervisorTask
- Task type:
class
- Required inputs:
future_tomo_obj
- Optional inputs:
- Outputs:
data, data_portal_processed_datasets, volume
FileNameFilterTask#
Task to filter a scan according to his name and a ‘unix file name pattern’ or a ‘regular expression’
- Identifier:
tomwer.core.process.conditions.filters.FileNameFilterTask
- Task type:
class
- Required inputs:
data, pattern
- Optional inputs:
serialize_output_data
- Outputs:
data
FileNameFilter#
- Identifier:
tomwer.core.process.conditions.filters.FileNameFilter
- Task type:
class
- Required inputs:
data, pattern
- Optional inputs:
serialize_output_data
- Outputs:
data
DataWatcherEwoksTask#
For now the data watcher is a ‘special case’. Because it will trigger downstream workflows / prcessing each time it discover
a new scan.
To move to ‘default’ ewoks workflows. Like launching it from the command line the simpler for now is to
simply pass the data
input that user can fill manually.
- Identifier:
tomwer.core.process.control.datawatcher.datawatcher.DataWatcherEwoksTask
- Task type:
class
- Required inputs:
data
- Optional inputs:
- Outputs:
data
TomoEmailTask#
Dedicated task for tomography and gui approach
- Identifier:
tomwer.core.process.control.emailnotifier.TomoEmailTask
- Task type:
class
- Required inputs:
configuration, tomo_obj
- Optional inputs:
- Outputs:
tomo_obj
ConcatenateNXtomoTask#
Task used to concatenate a list of NXtomo (NXtomoScan) into a single NXtomo
- Identifier:
tomwer.core.process.control.nxtomoconcatenate.ConcatenateNXtomoTask
- Task type:
class
- Required inputs:
output_entry, output_file, overwrite, series
- Optional inputs:
progress, serialize_output_data
- Outputs:
data
H5ToNxProcess#
Task to convert from a bliss dataset to a nexus compliant dataset
- Identifier:
tomwer.core.process.control.nxtomomill.H5ToNxProcess
- Task type:
class
- Required inputs:
h5_to_nx_configuration
- Optional inputs:
bliss_scan, progress, serialize_output_data
- Outputs:
data, series
EDFToNxProcess#
Task calling edf2nx in order to insure conversion from .edf to .nx (create one NXtomo to be used elsewhere)
- Identifier:
tomwer.core.process.control.nxtomomill.EDFToNxProcess
- Task type:
class
- Required inputs:
edf_to_nx_configuration
- Optional inputs:
edf_scan, progress, serialize_output_data
- Outputs:
data
ScanTransferTask#
Manage the copy of scan.
.. warning : the destination directory is find out from the file system if /lbsramxxx exists for example… In the case we couldn’t found the output directory then we will ask for the user to set it.
- Identifier:
tomwer.core.process.control.scantransfer.ScanTransferTask
- Task type:
class
- Required inputs:
data
- Optional inputs:
block, copying, dest_dir, move, noRsync, overwrite, serialize_output_data, turn_off_print
- Outputs:
data
ScanTransfer#
- Identifier:
tomwer.core.process.control.scantransfer.ScanTransfer
- Task type:
class
- Required inputs:
data
- Optional inputs:
block, copying, dest_dir, move, noRsync, overwrite, serialize_output_data, turn_off_print
- Outputs:
data
SingleTomoObjProcess#
For now data can only be a single element and not a list. This must be looked at. Also when part of an ewoks graph ‘data’ is mandatory which is not the class when part of a orange workflow. Those can be added interactively
- Identifier:
tomwer.core.process.control.singletomoobj.SingleTomoObjProcess
- Task type:
class
- Required inputs:
- Optional inputs:
tomo_obj
- Outputs:
tomo_obj
TimerTask#
Simple timer / time out - function
- Identifier:
tomwer.core.process.control.timer.TimerTask
- Task type:
class
- Required inputs:
data, wait
- Optional inputs:
serialize_output_data
- Outputs:
data
Timer#
- Identifier:
tomwer.core.process.control.timer.Timer
- Task type:
class
- Required inputs:
data, wait
- Optional inputs:
serialize_output_data
- Outputs:
data
PublishICatDatasetTask#
publish a list of ‘IcatDataBase’ instances.
IcatDataBase
provide API to retrieve data and metadata to be publish
input field:
data_portal_processed_datasets: list of ‘DracDatasetBase’ instances.
beamline: name of the beamline (bm05, id19…)
proposal: proposal name
- Identifier:
tomwer.core.process.drac.publish.PublishICatDatasetTask
- Task type:
class
- Required inputs:
beamline, data_portal_processed_datasets, dataset, proposal
- Optional inputs:
__process__, dry_run
- Outputs:
DarkFlatPatchTask#
Patch an existing NXtomo calling nxtomomill
- Identifier:
tomwer.core.process.edit.darkflatpatch.DarkFlatPatchTask
- Task type:
class
- Required inputs:
configuration, data
- Optional inputs:
serialize_output_data
- Outputs:
data
DarkFlatPatch#
- Identifier:
tomwer.core.process.edit.darkflatpatch.DarkFlatPatch
- Task type:
class
- Required inputs:
configuration, data
- Optional inputs:
serialize_output_data
- Outputs:
data
ImageKeyEditorTask#
task to edit image_key
field of a NXtomo (‘data’ input)
- Identifier:
tomwer.core.process.edit.imagekeyeditor.ImageKeyEditorTask
- Task type:
class
- Required inputs:
configuration, data
- Optional inputs:
serialize_output_data
- Outputs:
data
ImageKeyUpgraderTask#
close to ImageKeyEditor but convert a full “family” of frame type to another like all projections to dark field
- Identifier:
tomwer.core.process.edit.imagekeyeditor.ImageKeyUpgraderTask
- Task type:
class
- Required inputs:
data, operations
- Optional inputs:
serialize_output_data
- Outputs:
data
ImageKeyUpgrader#
- Identifier:
tomwer.core.process.edit.imagekeyeditor.ImageKeyUpgrader
- Task type:
class
- Required inputs:
data, operations
- Optional inputs:
serialize_output_data
- Outputs:
data
NXtomoEditorTask#
task to edit a couple of field of a NXtomo
- Identifier:
tomwer.core.process.edit.nxtomoeditor.NXtomoEditorTask
- Task type:
class
- Required inputs:
configuration, data
- Optional inputs:
- Outputs:
data
AxisTask#
Process used to compute the center of rotation of a scan
- Identifier:
tomwer.core.process.reconstruction.axis.axis.AxisTask
- Task type:
class
- Required inputs:
data
- Optional inputs:
serialize_output_data
- Outputs:
data
NabuSlicesTask#
Definition of the nabu reconstruction volume reconstruction process
- Identifier:
tomwer.core.process.reconstruction.nabu.nabuslices.NabuSlicesTask
- Task type:
class
- Required inputs:
data, nabu_params
- Optional inputs:
dry_run, serialize_output_data
- Outputs:
data, future_tomo_obj, nabu_params
NabuSlices#
- Identifier:
tomwer.core.process.reconstruction.nabu.nabuslices.NabuSlices
- Task type:
class
- Required inputs:
data, nabu_params
- Optional inputs:
dry_run, serialize_output_data
- Outputs:
data, future_tomo_obj, nabu_params
SinoNormalizationTask#
Task to define the normalization to apply to a sinogram before reconstructing it with nabu
- Identifier:
tomwer.core.process.reconstruction.normalization.normalization.SinoNormalizationTask
- Task type:
class
- Required inputs:
data
- Optional inputs:
serialize_output_data
- Outputs:
data
SAAxisTask#
Main process to launch several reconstruction of a single slice with several Center Of Rotation (cor) values
As the saaxis is integrating the score calculation we will never get a future_tomo_scan as output
- Identifier:
tomwer.core.process.reconstruction.saaxis.saaxis.SAAxisTask
- Task type:
class
- Required inputs:
data, sa_axis_params
- Optional inputs:
compute_scores, dry_run, dump_process, dump_roi, pool_size, serialize_output_data
- Outputs:
best_cor, data
SAAxisProcess#
- Identifier:
tomwer.core.process.reconstruction.saaxis.saaxis.SAAxisProcess
- Task type:
class
- Required inputs:
data, sa_axis_params
- Optional inputs:
compute_scores, dry_run, dump_process, dump_roi, pool_size, serialize_output_data
- Outputs:
best_cor, data
SADeltaBetaTask#
Main process to launch several reconstruction of a single slice with several Center Of Rotation (cor) values
- Identifier:
tomwer.core.process.reconstruction.sadeltabeta.sadeltabeta.SADeltaBetaTask
- Task type:
class
- Required inputs:
data, sa_delta_beta_params
- Optional inputs:
compute_scores, dry_run, dump_process, dump_roi, pool_size, serialize_output_data
- Outputs:
best_db, data
SADeltaBetaProcess#
- Identifier:
tomwer.core.process.reconstruction.sadeltabeta.sadeltabeta.SADeltaBetaProcess
- Task type:
class
- Required inputs:
data, sa_delta_beta_params
- Optional inputs:
compute_scores, dry_run, dump_process, dump_roi, pool_size, serialize_output_data
- Outputs:
best_db, data
PythonScript#
- Identifier:
tomwer.core.process.script.python.PythonScript
- Task type:
class
- Required inputs:
- Optional inputs:
data, serialize_output_data, volume
- Outputs:
data, volume
StitcherTask#
- Identifier:
tomwer.core.process.stitching.nabustitcher.StitcherTask
- Task type:
class
- Required inputs:
stitching_config
- Optional inputs:
cluster_config, progress, serialize_output_data
- Outputs:
data, future_tomo_obj, volume