tomwer 1.1.1__py3-none-any.whl → 1.2.0a0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- orangecontrib/tomwer/__init__.py +1 -0
- orangecontrib/tomwer/orange/managedprocess.py +6 -4
- orangecontrib/tomwer/state_summary.py +3 -2
- orangecontrib/tomwer/widgets/__init__.py +2 -2
- orangecontrib/tomwer/widgets/cluster/FutureSupervisorOW.py +9 -7
- orangecontrib/tomwer/widgets/cluster/SlurmClusterOW.py +6 -5
- orangecontrib/tomwer/widgets/control/AdvancementOW.py +2 -1
- orangecontrib/tomwer/widgets/control/DataDiscoveryOW.py +235 -0
- orangecontrib/tomwer/widgets/control/DataListOW.py +7 -5
- orangecontrib/tomwer/widgets/control/DataListenerOW.py +13 -14
- orangecontrib/tomwer/widgets/control/DataSelectorOW.py +8 -6
- orangecontrib/tomwer/widgets/control/DataTransfertOW.py +9 -9
- orangecontrib/tomwer/widgets/control/DataValidatorOW.py +7 -8
- orangecontrib/tomwer/widgets/control/DataWatcherOW.py +25 -17
- orangecontrib/tomwer/widgets/control/EDF2NXTomomillOW.py +8 -8
- orangecontrib/tomwer/widgets/control/FilterOW.py +9 -8
- orangecontrib/tomwer/widgets/control/NXTomomillMixIn.py +3 -4
- orangecontrib/tomwer/widgets/control/NXTomomillOW.py +13 -14
- orangecontrib/tomwer/widgets/control/NotifierOW.py +3 -4
- orangecontrib/tomwer/widgets/control/SingleTomoObjOW.py +7 -5
- orangecontrib/tomwer/widgets/control/TimerOW.py +6 -5
- orangecontrib/tomwer/widgets/control/TomoObjSerieOW.py +5 -3
- orangecontrib/tomwer/widgets/control/VolumeSelector.py +8 -6
- orangecontrib/tomwer/widgets/control/VolumeSymLinkOW.py +10 -9
- orangecontrib/tomwer/widgets/control/icons/datadiscover.png +0 -0
- orangecontrib/tomwer/widgets/control/icons/datadiscover.svg +137 -0
- orangecontrib/tomwer/widgets/control/icons/nxtomomill.png +0 -0
- orangecontrib/tomwer/widgets/control/icons/nxtomomill.svg +5 -8
- orangecontrib/tomwer/widgets/debugtools/DatasetGeneratorOW.py +13 -15
- orangecontrib/tomwer/widgets/debugtools/ObjectInspectorOW.py +3 -2
- orangecontrib/tomwer/widgets/edit/DarkFlatPatchOW.py +10 -7
- orangecontrib/tomwer/widgets/edit/ImageKeyEditorOW.py +8 -5
- orangecontrib/tomwer/widgets/edit/ImageKeyUpgraderOW.py +5 -2
- orangecontrib/tomwer/widgets/edit/NXtomoEditorOW.py +6 -3
- orangecontrib/tomwer/widgets/edit/test/test_dark_flat_patch.py +8 -6
- orangecontrib/tomwer/widgets/edit/test/test_image_key_editor.py +3 -1
- orangecontrib/tomwer/widgets/edit/test/test_image_key_upgrader.py +3 -1
- orangecontrib/tomwer/widgets/edit/test/test_nxtomo_editor.py +3 -1
- orangecontrib/tomwer/widgets/other/PythonScriptOW.py +11 -11
- orangecontrib/tomwer/widgets/reconstruction/AxisOW.py +22 -27
- orangecontrib/tomwer/widgets/reconstruction/CastNabuVolumeOW.py +13 -11
- orangecontrib/tomwer/widgets/reconstruction/DarkRefAndCopyOW.py +11 -9
- orangecontrib/tomwer/widgets/reconstruction/NabuOW.py +16 -14
- orangecontrib/tomwer/widgets/reconstruction/NabuVolumeOW.py +27 -32
- orangecontrib/tomwer/widgets/reconstruction/SAAxisOW.py +27 -34
- orangecontrib/tomwer/widgets/reconstruction/SADeltaBetaOW.py +23 -25
- orangecontrib/tomwer/widgets/reconstruction/SinoNormOW.py +16 -18
- orangecontrib/tomwer/widgets/reconstruction/TofuOW.py +9 -7
- orangecontrib/tomwer/widgets/reconstruction/icons/nabu_2d.png +0 -0
- orangecontrib/tomwer/widgets/reconstruction/icons/nabu_2d.svg +8 -11
- orangecontrib/tomwer/widgets/visualization/DataViewerOW.py +8 -8
- orangecontrib/tomwer/widgets/visualization/DiffViewerOW.py +6 -4
- orangecontrib/tomwer/widgets/visualization/LivesliceOW.py +4 -3
- orangecontrib/tomwer/widgets/visualization/NXtomoMetadataViewerOW.py +4 -3
- orangecontrib/tomwer/widgets/visualization/RadioStackOW.py +6 -4
- orangecontrib/tomwer/widgets/visualization/SampleMovedOW.py +8 -6
- orangecontrib/tomwer/widgets/visualization/SinogramViewerOW.py +6 -3
- orangecontrib/tomwer/widgets/visualization/SliceStackOW.py +7 -5
- orangecontrib/tomwer/widgets/visualization/VolumeViewerOW.py +5 -4
- tomwer/__init__.py +1 -1
- tomwer/__main__.py +2 -1
- tomwer/app/axis.py +18 -14
- tomwer/app/canvas.py +7 -5
- tomwer/app/canvas_launcher/config.py +8 -6
- tomwer/app/canvas_launcher/environ.py +1 -2
- tomwer/app/canvas_launcher/mainwindow.py +23 -22
- tomwer/app/canvas_launcher/splash.py +1 -0
- tomwer/app/canvas_launcher/widgetsscheme.py +3 -3
- tomwer/app/darkref.py +7 -6
- tomwer/app/darkrefpatch.py +8 -6
- tomwer/app/diffframe.py +6 -4
- tomwer/app/imagekeyeditor.py +10 -10
- tomwer/app/imagekeyupgrader.py +8 -6
- tomwer/app/intensitynormalization.py +8 -8
- tomwer/app/lamino.py +5 -3
- tomwer/app/nabuapp.py +8 -6
- tomwer/app/nxtomoeditor.py +6 -5
- tomwer/app/radiostack.py +8 -6
- tomwer/app/rsync.py +3 -3
- tomwer/app/saaxis.py +22 -23
- tomwer/app/sadeltabeta.py +21 -21
- tomwer/app/samplemoved.py +8 -6
- tomwer/app/scanviewer.py +7 -6
- tomwer/app/sinogramviewer.py +8 -7
- tomwer/app/slicestack.py +8 -6
- tomwer/app/stopdatalistener.py +2 -1
- tomwer/core/futureobject.py +15 -6
- tomwer/core/log/logger.py +4 -3
- tomwer/core/log/processlog.py +0 -1
- tomwer/core/process/conditions/filters.py +3 -3
- tomwer/core/process/control/datadiscovery.py +7 -0
- tomwer/core/process/control/datalistener/datalistener.py +22 -21
- tomwer/core/process/control/datalistener/rpcserver.py +18 -28
- tomwer/core/process/control/datawatcher/datawatcher.py +15 -12
- tomwer/core/process/control/datawatcher/datawatcherobserver.py +11 -8
- tomwer/core/process/control/datawatcher/datawatcherprocess.py +7 -5
- tomwer/core/process/control/datawatcher/edfdwprocess.py +5 -15
- tomwer/core/process/control/datawatcher/hdf5dwprocess.py +3 -1
- tomwer/core/process/control/datawatcher/status.py +2 -0
- tomwer/core/process/control/nxtomomill.py +7 -6
- tomwer/core/process/control/scanlist.py +2 -1
- tomwer/core/process/control/scanselector.py +1 -0
- tomwer/core/process/control/scantransfer.py +12 -12
- tomwer/core/process/control/scanvalidator.py +7 -6
- tomwer/core/process/control/test/test_volume_link.py +5 -4
- tomwer/core/process/control/timer.py +4 -4
- tomwer/core/process/control/volumeselector.py +1 -0
- tomwer/core/process/control/volumesymlink.py +8 -9
- tomwer/core/process/edit/darkflatpatch.py +9 -12
- tomwer/core/process/edit/imagekeyeditor.py +11 -13
- tomwer/core/process/reconstruction/axis/axis.py +36 -38
- tomwer/core/process/reconstruction/axis/mode.py +2 -1
- tomwer/core/process/reconstruction/axis/params.py +23 -28
- tomwer/core/process/reconstruction/darkref/darkrefs.py +23 -27
- tomwer/core/process/reconstruction/darkref/darkrefscopy.py +14 -18
- tomwer/core/process/reconstruction/darkref/params.py +3 -1
- tomwer/core/process/reconstruction/lamino/tofu.py +11 -15
- tomwer/core/process/reconstruction/nabu/castvolume.py +15 -18
- tomwer/core/process/reconstruction/nabu/nabucommon.py +19 -20
- tomwer/core/process/reconstruction/nabu/nabuscores.py +16 -14
- tomwer/core/process/reconstruction/nabu/nabuslices.py +27 -22
- tomwer/core/process/reconstruction/nabu/nabuvolume.py +20 -22
- tomwer/core/process/reconstruction/nabu/utils.py +17 -15
- tomwer/core/process/reconstruction/normalization/__init__.py +1 -3
- tomwer/core/process/reconstruction/normalization/normalization.py +16 -21
- tomwer/core/process/reconstruction/normalization/params.py +2 -2
- tomwer/core/process/reconstruction/saaxis/__init__.py +1 -1
- tomwer/core/process/reconstruction/saaxis/params.py +6 -7
- tomwer/core/process/reconstruction/saaxis/saaxis.py +44 -55
- tomwer/core/process/reconstruction/sadeltabeta/__init__.py +1 -1
- tomwer/core/process/reconstruction/sadeltabeta/params.py +9 -13
- tomwer/core/process/reconstruction/sadeltabeta/sadeltabeta.py +40 -46
- tomwer/core/process/reconstruction/scores/__init__.py +2 -2
- tomwer/core/process/reconstruction/scores/params.py +6 -9
- tomwer/core/process/reconstruction/scores/scores.py +10 -13
- tomwer/core/process/reconstruction/test/test_axis_params.py +4 -2
- tomwer/core/process/reconstruction/test/test_darkref.py +1 -2
- tomwer/core/process/reconstruction/test/test_darkref_copy.py +3 -1
- tomwer/core/process/reconstruction/test/test_paramsbase.py +1 -1
- tomwer/core/process/reconstruction/test/test_saaxis.py +11 -7
- tomwer/core/process/reconstruction/test/test_sadeltabeta.py +5 -4
- tomwer/core/process/reconstruction/test/test_utils.py +3 -2
- tomwer/core/process/script/python.py +6 -8
- tomwer/core/process/task.py +11 -12
- tomwer/core/process/test/test_axis.py +12 -9
- tomwer/core/process/test/test_conditions.py +8 -8
- tomwer/core/process/test/test_dark_and_flat.py +9 -8
- tomwer/core/process/test/test_data_listener.py +5 -3
- tomwer/core/process/test/test_data_transfer.py +14 -12
- tomwer/core/process/test/test_data_watcher.py +3 -1
- tomwer/core/process/test/test_lamino.py +3 -1
- tomwer/core/process/test/test_nabu.py +13 -12
- tomwer/core/process/test/test_normalization.py +7 -5
- tomwer/core/process/test/test_timer.py +2 -1
- tomwer/core/process/utils.py +9 -9
- tomwer/core/progress.py +3 -4
- tomwer/core/scan/blissscan.py +4 -2
- tomwer/core/scan/edfscan.py +26 -29
- tomwer/core/scan/futurescan.py +2 -1
- tomwer/core/scan/hdf5scan.py +21 -28
- tomwer/core/scan/scanbase.py +18 -18
- tomwer/core/scan/scanfactory.py +20 -21
- tomwer/core/scan/scantype.py +7 -0
- tomwer/core/scan/test/test_edf.py +2 -1
- tomwer/core/scan/test/test_future_scan.py +2 -1
- tomwer/core/scan/test/test_h5.py +5 -4
- tomwer/core/scan/test/test_process_registration.py +5 -3
- tomwer/core/scan/test/test_scan.py +11 -9
- tomwer/core/settings.py +1 -2
- tomwer/core/test/test_lamino.py +3 -2
- tomwer/core/test/test_scanutils.py +3 -2
- tomwer/core/test/test_utils.py +6 -4
- tomwer/core/utils/__init__.py +8 -6
- tomwer/core/utils/deprecation.py +2 -2
- tomwer/core/utils/image.py +4 -3
- tomwer/core/utils/locker.py +1 -1
- tomwer/core/utils/normalization.py +1 -0
- tomwer/core/utils/nxtomoutils.py +2 -1
- tomwer/core/utils/scanutils.py +9 -6
- tomwer/core/utils/slurm.py +2 -1
- tomwer/core/utils/time.py +2 -4
- tomwer/core/utils/volumeutils.py +2 -1
- tomwer/core/volume/__init__.py +1 -1
- tomwer/core/volume/edfvolume.py +4 -3
- tomwer/core/volume/hdf5volume.py +6 -8
- tomwer/core/volume/jp2kvolume.py +4 -3
- tomwer/core/volume/rawvolume.py +7 -7
- tomwer/core/volume/tiffvolume.py +8 -6
- tomwer/core/volume/volumebase.py +1 -0
- tomwer/core/volume/volumefactory.py +18 -18
- tomwer/gui/cluster/slurm.py +2 -0
- tomwer/gui/cluster/supervisor.py +4 -2
- tomwer/gui/cluster/test/test_cluster.py +5 -4
- tomwer/gui/cluster/test/test_supervisor.py +4 -2
- tomwer/gui/conditions/filter.py +7 -6
- tomwer/gui/control/actions.py +1 -0
- tomwer/gui/control/datadiscovery.py +168 -0
- tomwer/gui/control/datalist.py +29 -28
- tomwer/gui/control/datalistener.py +8 -4
- tomwer/gui/control/datareacheractions.py +2 -1
- tomwer/gui/control/datatransfert.py +3 -1
- tomwer/gui/control/datavalidator.py +11 -12
- tomwer/gui/control/datawatcher/configuration.py +12 -1
- tomwer/gui/control/datawatcher/controlwidget.py +116 -0
- tomwer/gui/control/datawatcher/datawatcher.py +63 -121
- tomwer/gui/control/datawatcher/datawatcherobserver.py +7 -9
- tomwer/gui/control/history.py +3 -1
- tomwer/gui/control/observations.py +7 -7
- tomwer/gui/control/scanselectorwidget.py +4 -2
- tomwer/gui/control/selectorwidgetbase.py +3 -1
- tomwer/gui/control/serie/seriecreator.py +11 -12
- tomwer/gui/control/singletomoobj.py +4 -4
- tomwer/gui/control/test/test_datadiscovery.py +27 -0
- tomwer/gui/control/test/test_datalist.py +7 -6
- tomwer/gui/control/test/test_datalistener.py +4 -4
- tomwer/gui/control/test/test_datavalidator.py +3 -1
- tomwer/gui/control/test/test_inputwidget.py +5 -4
- tomwer/gui/control/test/test_process_manager.py +3 -3
- tomwer/gui/control/test/test_scanselector.py +6 -4
- tomwer/gui/control/test/test_scanvalidator.py +6 -5
- tomwer/gui/control/test/test_single_tomo_obj.py +5 -3
- tomwer/gui/control/test/test_volume_dialog.py +7 -5
- tomwer/gui/control/test/test_volumeselector.py +8 -6
- tomwer/gui/control/volumeselectorwidget.py +2 -1
- tomwer/gui/debugtools/datasetgenerator.py +2 -1
- tomwer/gui/debugtools/objectinspector.py +6 -7
- tomwer/gui/edit/dkrfpatch.py +11 -10
- tomwer/gui/edit/imagekeyeditor.py +12 -12
- tomwer/gui/edit/nxtomoeditor.py +8 -7
- tomwer/gui/edit/test/test_dkrf_patch.py +10 -9
- tomwer/gui/edit/test/test_image_key_editor.py +8 -6
- tomwer/gui/edit/test/test_nx_editor.py +7 -5
- tomwer/gui/icons.py +3 -2
- tomwer/gui/illustrations.py +3 -2
- tomwer/gui/imagefromfile.py +3 -1
- tomwer/gui/qfolderdialog.py +14 -12
- tomwer/gui/reconstruction/axis/CompareImages.py +9 -8
- tomwer/gui/reconstruction/axis/__init__.py +1 -1
- tomwer/gui/reconstruction/axis/axis.py +9 -7
- tomwer/gui/reconstruction/axis/radioaxis.py +30 -32
- tomwer/gui/reconstruction/darkref/darkrefcopywidget.py +6 -5
- tomwer/gui/reconstruction/darkref/darkrefwidget.py +4 -2
- tomwer/gui/reconstruction/lamino/tofu/misc.py +3 -1
- tomwer/gui/reconstruction/lamino/tofu/projections.py +16 -8
- tomwer/gui/reconstruction/lamino/tofu/tofu.py +6 -3
- tomwer/gui/reconstruction/lamino/tofu/tofuexpert.py +5 -2
- tomwer/gui/reconstruction/lamino/tofu/tofuoutput.py +8 -5
- tomwer/gui/reconstruction/nabu/action.py +1 -0
- tomwer/gui/reconstruction/nabu/castvolume.py +6 -4
- tomwer/gui/reconstruction/nabu/check.py +3 -2
- tomwer/gui/reconstruction/nabu/nabuconfig/base.py +5 -2
- tomwer/gui/reconstruction/nabu/nabuconfig/ctf.py +6 -3
- tomwer/gui/reconstruction/nabu/nabuconfig/nabuconfig.py +4 -3
- tomwer/gui/reconstruction/nabu/nabuconfig/output.py +7 -5
- tomwer/gui/reconstruction/nabu/nabuconfig/phase.py +8 -6
- tomwer/gui/reconstruction/nabu/nabuconfig/preprocessing.py +7 -7
- tomwer/gui/reconstruction/nabu/nabuconfig/reconstruction.py +40 -33
- tomwer/gui/reconstruction/nabu/nabuflow.py +7 -4
- tomwer/gui/reconstruction/nabu/slices.py +14 -10
- tomwer/gui/reconstruction/nabu/slurm.py +1 -0
- tomwer/gui/reconstruction/nabu/volume.py +5 -3
- tomwer/gui/reconstruction/normalization/intensity.py +14 -13
- tomwer/gui/reconstruction/saaxis/corrangeselector.py +36 -35
- tomwer/gui/reconstruction/saaxis/dimensionwidget.py +5 -4
- tomwer/gui/reconstruction/saaxis/saaxis.py +17 -17
- tomwer/gui/reconstruction/saaxis/sliceselector.py +5 -5
- tomwer/gui/reconstruction/sadeltabeta/saadeltabeta.py +33 -36
- tomwer/gui/reconstruction/scores/scoreplot.py +19 -18
- tomwer/gui/reconstruction/test/test_axis.py +14 -13
- tomwer/gui/reconstruction/test/test_lamino.py +3 -2
- tomwer/gui/reconstruction/test/test_nabu.py +8 -6
- tomwer/gui/reconstruction/test/test_saaxis.py +17 -15
- tomwer/gui/reconstruction/test/test_sadeltabeta.py +15 -13
- tomwer/gui/samplemoved/__init__.py +8 -7
- tomwer/gui/samplemoved/selectiontable.py +4 -2
- tomwer/gui/stackplot.py +14 -13
- tomwer/gui/stacks.py +11 -9
- tomwer/gui/test/test_axis_gui.py +5 -4
- tomwer/gui/test/test_qfolder_dialog.py +2 -1
- tomwer/gui/utils/__init__.py +5 -5
- tomwer/gui/utils/buttons.py +1 -0
- tomwer/gui/utils/completer.py +1 -0
- tomwer/gui/utils/flow.py +4 -2
- tomwer/gui/utils/illustrations.py +1 -0
- tomwer/gui/utils/inputwidget.py +11 -17
- tomwer/gui/utils/lineselector/lineselector.py +6 -8
- tomwer/gui/utils/qt_utils.py +1 -0
- tomwer/gui/utils/scandescription.py +2 -0
- tomwer/gui/utils/splashscreen.py +1 -1
- tomwer/gui/utils/unitsystem.py +3 -1
- tomwer/gui/utils/vignettes.py +8 -8
- tomwer/gui/utils/waiterthread.py +2 -1
- tomwer/gui/visualization/dataviewer.py +20 -28
- tomwer/gui/visualization/diffviewer/diffviewer.py +17 -20
- tomwer/gui/visualization/diffviewer/shiftwidget.py +3 -1
- tomwer/gui/visualization/nxtomometadata.py +1 -0
- tomwer/gui/visualization/reconstructionparameters.py +13 -12
- tomwer/gui/visualization/scanoverview.py +5 -3
- tomwer/gui/visualization/sinogramviewer.py +3 -2
- tomwer/gui/visualization/test/test_dataviewer.py +3 -1
- tomwer/gui/visualization/test/test_diffviewer.py +8 -6
- tomwer/gui/visualization/test/test_nx_tomo_metadata_viewer.py +5 -3
- tomwer/gui/visualization/test/test_reconstruction_parameters.py +5 -3
- tomwer/gui/visualization/test/test_sinogramviewer.py +10 -9
- tomwer/gui/visualization/test/test_stacks.py +8 -6
- tomwer/gui/visualization/test/test_volumeviewer.py +10 -8
- tomwer/gui/visualization/tomoobjoverview.py +7 -4
- tomwer/gui/visualization/volumeoverview.py +5 -3
- tomwer/gui/visualization/volumeviewer.py +15 -14
- tomwer/io/utils/__init__.py +3 -3
- tomwer/io/utils/h5pyutils.py +2 -1
- tomwer/io/utils/utils.py +17 -21
- tomwer/resources/__init__.py +1 -1
- tomwer/synctools/axis.py +3 -1
- tomwer/synctools/darkref.py +3 -2
- tomwer/synctools/datalistener.py +10 -6
- tomwer/synctools/datatransfert.py +2 -3
- tomwer/synctools/imageloaderthread.py +5 -3
- tomwer/synctools/rsyncmanager.py +3 -2
- tomwer/synctools/saaxis.py +3 -1
- tomwer/synctools/sadeltabeta.py +3 -1
- tomwer/synctools/stacks/control/datalistener.py +9 -12
- tomwer/synctools/stacks/edit/darkflatpatch.py +13 -12
- tomwer/synctools/stacks/edit/imagekeyeditor.py +12 -11
- tomwer/synctools/stacks/processingstack.py +3 -2
- tomwer/synctools/stacks/reconstruction/axis.py +12 -12
- tomwer/synctools/stacks/reconstruction/castvolume.py +8 -5
- tomwer/synctools/stacks/reconstruction/dkrefcopy.py +10 -9
- tomwer/synctools/stacks/reconstruction/lamino.py +9 -7
- tomwer/synctools/stacks/reconstruction/nabu.py +18 -17
- tomwer/synctools/stacks/reconstruction/normalization.py +12 -16
- tomwer/synctools/stacks/reconstruction/saaxis.py +13 -11
- tomwer/synctools/stacks/reconstruction/sadeltabeta.py +16 -14
- tomwer/synctools/test/test_darkRefs.py +4 -3
- tomwer/synctools/test/test_foldertransfer.py +14 -12
- tomwer/synctools/test/test_scanstages.py +8 -7
- tomwer/synctools/utils/scanstages.py +7 -5
- tomwer/tests/conftest.py +4 -4
- tomwer/tests/test_scripts.py +3 -2
- tomwer/tests/utils/__init__.py +5 -4
- tomwer/tests/utils/utilstest.py +5 -6
- tomwer/third_party/nabu/preproc/phase.py +7 -5
- tomwer/third_party/nabu/utils.py +3 -2
- tomwer/utils.py +12 -12
- tomwer/version.py +4 -4
- {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/METADATA +2 -2
- {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/RECORD +353 -345
- /tomwer-1.1.1-py3.8-nspkg.pth → /tomwer-1.2.0a0-py3.8-nspkg.pth +0 -0
- {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/LICENSE +0 -0
- {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/WHEEL +0 -0
- {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/entry_points.txt +0 -0
- {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/namespace_packages.txt +0 -0
- {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/top_level.txt +0 -0
@@ -1,9 +1,11 @@
|
|
1
1
|
import gc
|
2
|
+
|
2
3
|
import pytest
|
3
4
|
from silx.gui import qt
|
4
|
-
from tomwer.tests.utils import skip_gui_test
|
5
5
|
from silx.gui.utils.testutils import TestCaseQt
|
6
|
+
|
6
7
|
from orangecontrib.tomwer.widgets.edit.NXtomoEditorOW import NXtomoEditorOW
|
8
|
+
from tomwer.tests.utils import skip_gui_test
|
7
9
|
|
8
10
|
|
9
11
|
@pytest.mark.skipif(skip_gui_test(), reason="skip gui test")
|
@@ -2,24 +2,26 @@
|
|
2
2
|
the icon change (to difference them) and here the input is not a Table
|
3
3
|
but a TomwerScanBase (use silx.gui.qt instead of AnyQt too)"""
|
4
4
|
|
5
|
-
import sys
|
6
|
-
import os
|
7
5
|
import code
|
8
|
-
import keyword
|
9
6
|
import itertools
|
7
|
+
import keyword
|
8
|
+
import os
|
9
|
+
import sys
|
10
10
|
import unicodedata
|
11
11
|
from unittest.mock import patch
|
12
|
-
|
13
|
-
from orangewidget import
|
14
|
-
from orangewidget.utils import itemmodels
|
12
|
+
|
13
|
+
from orangewidget import gui, widget
|
15
14
|
from orangewidget.settings import Setting, SettingsHandler
|
16
|
-
from orangewidget.
|
15
|
+
from orangewidget.utils import itemmodels
|
16
|
+
from orangewidget.widget import Input, Output, OWBaseWidget
|
17
|
+
from silx.gui import qt
|
18
|
+
from tomoscan.serie import Serie
|
19
|
+
|
17
20
|
import tomwer.core.process.script.python
|
18
21
|
from tomwer.core.cluster.cluster import SlurmClusterConfiguration
|
19
22
|
from tomwer.core.futureobject import FutureTomwerObject
|
20
23
|
from tomwer.core.scan.scanbase import TomwerScanBase
|
21
24
|
from tomwer.core.volume.volumebase import TomwerVolumeBase
|
22
|
-
from tomoscan.serie import Serie
|
23
25
|
|
24
26
|
__all__ = ["OWPythonScript"]
|
25
27
|
|
@@ -778,9 +780,7 @@ class OWPythonScript(widget.OWBaseWidget, openclass=True):
|
|
778
780
|
if not isinstance(out_var, signal_type) and out_var is not None:
|
779
781
|
self.Error.add_message(
|
780
782
|
signal,
|
781
|
-
"'{}' has to be an instance of '{}'
|
782
|
-
signal, signal_type.__name__
|
783
|
-
),
|
783
|
+
f"'{signal}' has to be an instance of '{signal_type.__name__}'",
|
784
784
|
)
|
785
785
|
getattr(self.Error, signal)()
|
786
786
|
out_var = None
|
@@ -27,31 +27,31 @@ __authors__ = ["H. Payno"]
|
|
27
27
|
__license__ = "MIT"
|
28
28
|
__date__ = "04/03/2019"
|
29
29
|
|
30
|
-
import
|
31
|
-
|
30
|
+
import copy
|
31
|
+
import functools
|
32
|
+
import logging
|
33
|
+
|
32
34
|
from orangewidget import gui
|
33
|
-
from orangecontrib.tomwer.orange.managedprocess import SuperviseOW
|
34
35
|
from orangewidget.settings import Setting
|
35
|
-
from orangecontrib.tomwer.orange.settings import CallbackSettingsHandler
|
36
36
|
from orangewidget.widget import Input, Output
|
37
|
-
from processview.gui.processmanager import ProcessManager
|
38
|
-
from processview.core.manager import DatasetState
|
39
37
|
from processview.core import helpers as pv_helpers
|
40
|
-
from
|
41
|
-
from
|
38
|
+
from processview.core.manager import DatasetState
|
39
|
+
from processview.gui.processmanager import ProcessManager
|
40
|
+
from silx.gui import qt
|
41
|
+
|
42
|
+
import tomwer.core.process.reconstruction.axis
|
43
|
+
from orangecontrib.tomwer.orange.managedprocess import SuperviseOW
|
44
|
+
from orangecontrib.tomwer.orange.settings import CallbackSettingsHandler
|
45
|
+
from tomwer.core import settings, utils
|
42
46
|
from tomwer.core.process.reconstruction.axis import AxisProcess
|
43
|
-
from tomwer.
|
44
|
-
from tomwer.gui.reconstruction.axis import AxisWindow
|
45
|
-
from tomwer.core.scan.scanbase import TomwerScanBase
|
47
|
+
from tomwer.core.process.reconstruction.axis.mode import AxisMode
|
46
48
|
from tomwer.core.scan.hdf5scan import HDF5TomoScan
|
47
|
-
from tomwer.core.scan.scanbase import _TomwerBaseDock
|
48
|
-
from
|
49
|
-
from tomwer.
|
50
|
-
from tomwer.
|
51
|
-
import functools
|
52
|
-
import copy
|
49
|
+
from tomwer.core.scan.scanbase import TomwerScanBase, _TomwerBaseDock
|
50
|
+
from tomwer.gui.reconstruction.axis import AxisWindow
|
51
|
+
from tomwer.synctools.axis import QAxisRP
|
52
|
+
from tomwer.synctools.stacks.reconstruction.axis import AxisProcessStack
|
53
53
|
|
54
|
-
import
|
54
|
+
from ..utils import WidgetLongProcessing
|
55
55
|
|
56
56
|
logger = logging.getLogger(__name__)
|
57
57
|
|
@@ -116,8 +116,7 @@ class AxisOW(SuperviseOW, WidgetLongProcessing):
|
|
116
116
|
if axis_params is not None:
|
117
117
|
if not isinstance(axis_params, QAxisRP):
|
118
118
|
raise TypeError(
|
119
|
-
"axis_params should be an instance of "
|
120
|
-
"QAxisRP. Not {}".format(type(axis_params))
|
119
|
+
f"axis_params should be an instance of QAxisRP. Not {type(axis_params)}"
|
121
120
|
)
|
122
121
|
self._axis_params = axis_params or QAxisRP()
|
123
122
|
|
@@ -128,7 +127,7 @@ class AxisOW(SuperviseOW, WidgetLongProcessing):
|
|
128
127
|
try:
|
129
128
|
self._axis_params.load_from_dict(axis_params_settings)
|
130
129
|
except Exception as e:
|
131
|
-
logger.error(f"fail to load reconstruction settings: {
|
130
|
+
logger.error(f"fail to load reconstruction settings: {e}")
|
132
131
|
|
133
132
|
# gui settings
|
134
133
|
gui_settings = self._ewoks_default_inputs.get("gui", {})
|
@@ -321,15 +320,11 @@ class AxisOW(SuperviseOW, WidgetLongProcessing):
|
|
321
320
|
self.__scan._axis_params.set_relative_value(
|
322
321
|
self._axis_params.relative_cor_value
|
323
322
|
)
|
323
|
+
_cor_value = self.__scan.axis_params.relative_cor_value
|
324
324
|
pv_helpers.notify_succeed(
|
325
325
|
process=self,
|
326
326
|
dataset=self.__scan,
|
327
|
-
details="axis calculation defined for {}: {} (using
|
328
|
-
"".format(
|
329
|
-
str(self.__scan.path),
|
330
|
-
str(self.__scan.axis_params.relative_cor_value),
|
331
|
-
"manual",
|
332
|
-
),
|
327
|
+
details=f"axis calculation defined for {self.__scan.path}: {_cor_value} (using manual)",
|
333
328
|
)
|
334
329
|
# validate the center of rotation
|
335
330
|
pm = ProcessManager()
|
@@ -27,25 +27,27 @@ __authors__ = ["H. Payno"]
|
|
27
27
|
__license__ = "MIT"
|
28
28
|
__date__ = "15/12/2021"
|
29
29
|
|
30
|
+
import logging
|
30
31
|
from typing import Optional
|
31
32
|
|
33
|
+
from orangewidget import gui
|
34
|
+
from orangewidget.settings import Setting
|
35
|
+
from orangewidget.widget import Input, Output
|
32
36
|
from processview.core.manager.manager import DatasetState, ProcessManager
|
37
|
+
from silx.gui import qt
|
38
|
+
|
39
|
+
import tomwer.core.process.reconstruction.nabu.castvolume
|
40
|
+
from orangecontrib.tomwer.widgets.utils import WidgetLongProcessing
|
33
41
|
from tomwer.core import settings
|
34
42
|
from tomwer.core.cluster.cluster import SlurmClusterConfiguration
|
35
43
|
from tomwer.core.futureobject import FutureTomwerObject
|
36
|
-
from ...orange.managedprocess import SuperviseOW
|
37
|
-
from orangecontrib.tomwer.widgets.utils import WidgetLongProcessing
|
38
|
-
from orangewidget.settings import Setting
|
39
|
-
from orangewidget import gui
|
40
|
-
from orangewidget.widget import Input, Output
|
41
|
-
from silx.gui import qt
|
42
44
|
from tomwer.core.scan.scanbase import TomwerScanBase
|
43
|
-
from tomwer.synctools.stacks.reconstruction.castvolume import CastVolumeProcessStack
|
44
|
-
import tomwer.core.process.reconstruction.nabu.castvolume
|
45
|
-
from tomwer.gui.reconstruction.nabu.castvolume import CastVolumeWidget
|
46
|
-
from tomwer.core.volume.volumebase import TomwerVolumeBase
|
47
45
|
from tomwer.core.utils import isLowOnMemory
|
48
|
-
import
|
46
|
+
from tomwer.core.volume.volumebase import TomwerVolumeBase
|
47
|
+
from tomwer.gui.reconstruction.nabu.castvolume import CastVolumeWidget
|
48
|
+
from tomwer.synctools.stacks.reconstruction.castvolume import CastVolumeProcessStack
|
49
|
+
|
50
|
+
from ...orange.managedprocess import SuperviseOW
|
49
51
|
|
50
52
|
_logger = logging.getLogger(__name__)
|
51
53
|
|
@@ -28,23 +28,25 @@ __license__ = "MIT"
|
|
28
28
|
__date__ = "10/01/2018"
|
29
29
|
|
30
30
|
|
31
|
+
import copy
|
31
32
|
import logging
|
32
|
-
|
33
|
-
|
33
|
+
|
34
|
+
import tomoscan.esrf.scan.utils
|
34
35
|
from orangewidget import gui
|
35
|
-
from orangecontrib.tomwer.orange.managedprocess import SuperviseOW
|
36
36
|
from orangewidget.settings import Setting
|
37
37
|
from orangewidget.widget import Input, Output
|
38
|
+
from processview.core.manager import DatasetState, ProcessManager
|
39
|
+
from silx.gui import qt
|
40
|
+
|
41
|
+
import tomwer.core.process.reconstruction.darkref.darkrefscopy
|
42
|
+
from orangecontrib.tomwer.orange.managedprocess import SuperviseOW
|
38
43
|
from tomwer.core.scan.scanbase import TomwerScanBase
|
39
44
|
from tomwer.gui.reconstruction.darkref.darkrefcopywidget import DarkRefAndCopyWidget
|
40
45
|
from tomwer.synctools.darkref import QDKRFRP
|
41
46
|
from tomwer.synctools.stacks.reconstruction.dkrefcopy import DarkRefCopyProcessStack
|
42
|
-
from processview.core.manager import DatasetState
|
43
|
-
from processview.core.manager import ProcessManager
|
44
|
-
import tomoscan.esrf.scan.utils
|
45
47
|
from tomwer.utils import docstring
|
46
|
-
|
47
|
-
import
|
48
|
+
|
49
|
+
from ..utils import WidgetLongProcessing
|
48
50
|
|
49
51
|
_logger = logging.getLogger(__name__)
|
50
52
|
|
@@ -245,7 +247,7 @@ class DarkRefAndCopyOW(SuperviseOW, WidgetLongProcessing):
|
|
245
247
|
reduced_frames=scan.reduced_flats, scan=scan
|
246
248
|
)
|
247
249
|
)
|
248
|
-
_logger.info("{} ended"
|
250
|
+
_logger.info(f"{scan} ended")
|
249
251
|
|
250
252
|
def setReducedDarks(self, darks: dict):
|
251
253
|
self.widget._refCopyWidget.save_darks_to_be_copied(darks)
|
@@ -28,25 +28,27 @@ __license__ = "MIT"
|
|
28
28
|
__date__ = "14/02/2020"
|
29
29
|
|
30
30
|
|
31
|
+
import copy
|
31
32
|
import logging
|
32
|
-
from typing import Optional
|
33
|
-
from tomwer.core.volume.volumefactory import VolumeFactory
|
34
|
-
import tomwer.core.process.reconstruction.nabu.nabuslices
|
35
33
|
from contextlib import AbstractContextManager
|
36
|
-
from
|
37
|
-
|
38
|
-
from tomwer.core.process.reconstruction.nabu.nabuslices import NabuSlices
|
39
|
-
from tomwer.gui.reconstruction.nabu.slices import NabuWindow
|
40
|
-
from tomwer.core.scan.scanbase import TomwerScanBase
|
41
|
-
from ..utils import WidgetLongProcessing
|
42
|
-
from orangewidget.settings import Setting
|
34
|
+
from typing import Optional
|
35
|
+
|
43
36
|
from orangewidget import gui
|
44
|
-
from
|
37
|
+
from orangewidget.settings import Setting
|
45
38
|
from orangewidget.widget import Input, Output
|
46
|
-
from
|
39
|
+
from silx.gui import qt
|
40
|
+
|
41
|
+
import tomwer.core.process.reconstruction.nabu.nabuslices
|
47
42
|
from tomwer.core.cluster import SlurmClusterConfiguration
|
48
43
|
from tomwer.core.futureobject import FutureTomwerObject
|
49
|
-
import
|
44
|
+
from tomwer.core.process.reconstruction.nabu.nabuslices import NabuSlices
|
45
|
+
from tomwer.core.scan.scanbase import TomwerScanBase, _TomwerBaseDock
|
46
|
+
from tomwer.core.volume.volumefactory import VolumeFactory
|
47
|
+
from tomwer.gui.reconstruction.nabu.slices import NabuWindow
|
48
|
+
from tomwer.synctools.stacks.reconstruction.nabu import NabuSliceProcessStack
|
49
|
+
|
50
|
+
from ...orange.managedprocess import SuperviseOW
|
51
|
+
from ..utils import WidgetLongProcessing
|
50
52
|
|
51
53
|
_logger = logging.getLogger(__name__)
|
52
54
|
|
@@ -190,7 +192,7 @@ class NabuOW(WidgetLongProcessing, SuperviseOW):
|
|
190
192
|
scan_ = copy.copy(scan)
|
191
193
|
scan_.clear_latest_reconstructions()
|
192
194
|
|
193
|
-
_logger.info("add {} to the stack"
|
195
|
+
_logger.info(f"add {scan} to the stack")
|
194
196
|
# update the reconstruction mode if possible
|
195
197
|
self._nabuWidget.setScan(scan_)
|
196
198
|
self._processingStack.add(scan_, self.getConfiguration())
|
@@ -28,32 +28,35 @@ __license__ = "MIT"
|
|
28
28
|
__date__ = "14/02/2020"
|
29
29
|
|
30
30
|
|
31
|
+
import copy
|
32
|
+
import functools
|
31
33
|
import logging
|
34
|
+
from collections.abc import Iterable
|
32
35
|
from contextlib import AbstractContextManager
|
36
|
+
|
37
|
+
from orangewidget import gui
|
38
|
+
from orangewidget.settings import Setting
|
39
|
+
from orangewidget.widget import Input, Output
|
33
40
|
from silx.gui import qt
|
34
|
-
from
|
35
|
-
|
36
|
-
|
37
|
-
from tomwer.
|
41
|
+
from tomoscan.identifier import VolumeIdentifier
|
42
|
+
|
43
|
+
import tomwer.core.process.reconstruction.nabu.nabuvolume
|
44
|
+
from orangecontrib.tomwer.widgets.utils import WidgetLongProcessing
|
45
|
+
from tomwer.core import settings
|
38
46
|
from tomwer.core.cluster import SlurmClusterConfiguration
|
39
47
|
from tomwer.core.futureobject import FutureTomwerObject
|
40
|
-
from orangecontrib.tomwer.widgets.utils import WidgetLongProcessing
|
41
|
-
from tomwer.core.volume.volumefactory import VolumeFactory
|
42
|
-
from orangewidget.settings import Setting
|
43
|
-
from orangewidget import gui
|
44
|
-
from orangewidget.widget import Input, Output
|
45
|
-
from ...orange.managedprocess import SuperviseOW
|
46
48
|
from tomwer.core.process.reconstruction.nabu import utils as nabu_utils
|
49
|
+
from tomwer.core.process.reconstruction.nabu.nabuvolume import NabuVolume
|
50
|
+
from tomwer.core.scan.scanbase import TomwerScanBase
|
47
51
|
from tomwer.core.utils.char import BETA_CHAR, DELTA_CHAR
|
48
|
-
from collections.abc import Iterable
|
49
|
-
from tomwer.utils import docstring
|
50
|
-
from tomwer.core import settings
|
51
|
-
import tomwer.core.process.reconstruction.nabu.nabuvolume
|
52
|
-
from tomwer.core.volume.volumebase import TomwerVolumeBase
|
53
52
|
from tomwer.core.utils.scanutils import format_output_location
|
54
|
-
from
|
55
|
-
import
|
56
|
-
import
|
53
|
+
from tomwer.core.volume.volumebase import TomwerVolumeBase
|
54
|
+
from tomwer.core.volume.volumefactory import VolumeFactory
|
55
|
+
from tomwer.gui.reconstruction.nabu.volume import NabuVolumeWindow
|
56
|
+
from tomwer.synctools.stacks.reconstruction.nabu import NabuVolumeProcessStack
|
57
|
+
from tomwer.utils import docstring
|
58
|
+
|
59
|
+
from ...orange.managedprocess import SuperviseOW
|
57
60
|
|
58
61
|
_logger = logging.getLogger(__name__)
|
59
62
|
|
@@ -202,10 +205,8 @@ class NabuVolumeOW(WidgetLongProcessing, SuperviseOW):
|
|
202
205
|
# insure we are able to reconstruct
|
203
206
|
if scan.nabu_recons_params in ({}, None):
|
204
207
|
_logger.error(
|
205
|
-
"No reconstruction parameters found from nabu "
|
206
|
-
"
|
207
|
-
"reconstruction prior to volume reconstruction"
|
208
|
-
"".format(str(scan))
|
208
|
+
f"No reconstruction parameters found from nabu slices for {scan}. "
|
209
|
+
"You should first run slice reconstruction prior to volume reconstruction"
|
209
210
|
)
|
210
211
|
self.Outputs.data.send(scan)
|
211
212
|
self.sigScanReady.emit(scan)
|
@@ -235,9 +236,7 @@ class NabuVolumeOW(WidgetLongProcessing, SuperviseOW):
|
|
235
236
|
pass
|
236
237
|
if len(pag_dbs) > 1:
|
237
238
|
_logger.warning(
|
238
|
-
"Several value found for {} / {}. Volume"
|
239
|
-
"reconstruction take one at most."
|
240
|
-
"".format(DELTA_CHAR, BETA_CHAR)
|
239
|
+
f"Several value found for {DELTA_CHAR} / {BETA_CHAR}. Volume reconstruction take one at most."
|
241
240
|
)
|
242
241
|
timeout = NabuVolumeOW.TIMEOUT if settings.isOnLbsram(scan) else None
|
243
242
|
self._dialogDB = _DeltaBetaSelectorDialog(
|
@@ -372,13 +371,10 @@ class _DeltaBetaSelectorDialog(qt.QDialog):
|
|
372
371
|
self.layout().addWidget(self._buttons)
|
373
372
|
self._timeout = timeout
|
374
373
|
if self._timeout is None:
|
375
|
-
self.setWindowTitle(
|
376
|
-
"Select one value for {} / {}".format(DELTA_CHAR, BETA_CHAR)
|
377
|
-
)
|
374
|
+
self.setWindowTitle(f"Select one value for {DELTA_CHAR} / {BETA_CHAR}")
|
378
375
|
else:
|
379
376
|
self.setWindowTitle(
|
380
|
-
"Select one value for {} / {}. (close automatically in {} "
|
381
|
-
"sec.)".format(DELTA_CHAR, BETA_CHAR, self._timeout)
|
377
|
+
f"Select one value for {DELTA_CHAR} / {BETA_CHAR}. (close automatically in {self._timeout} sec.)"
|
382
378
|
)
|
383
379
|
|
384
380
|
# connect signal / slot
|
@@ -416,8 +412,7 @@ class _DeltaBetaSelectorDialog(qt.QDialog):
|
|
416
412
|
self.reject()
|
417
413
|
else:
|
418
414
|
self.setWindowTitle(
|
419
|
-
"Select one value for {} / {}. (close automatically in {} "
|
420
|
-
"sec.)".format(DELTA_CHAR, BETA_CHAR, self._timeout)
|
415
|
+
f"Select one value for {DELTA_CHAR} / {BETA_CHAR}. (close automatically in {self._timeout} sec.)"
|
421
416
|
)
|
422
417
|
self._displayTimer.start(1000)
|
423
418
|
|
@@ -28,31 +28,32 @@ __license__ = "MIT"
|
|
28
28
|
__date__ = "01/02/2021"
|
29
29
|
|
30
30
|
|
31
|
-
|
31
|
+
import functools
|
32
|
+
import logging
|
33
|
+
from typing import Union
|
34
|
+
|
32
35
|
from orangewidget import gui
|
33
|
-
from orangecontrib.tomwer.orange.managedprocess import SuperviseOW
|
34
36
|
from orangewidget.settings import Setting
|
35
|
-
from orangecontrib.tomwer.orange.settings import CallbackSettingsHandler
|
36
37
|
from orangewidget.widget import Input, Output
|
37
|
-
from
|
38
|
-
from
|
39
|
-
from tomwer.synctools.axis import QAxisRP
|
40
|
-
from tomwer.core.process.reconstruction.axis import AxisProcess
|
41
|
-
from tomwer.core.scan.scanbase import TomwerScanBase
|
38
|
+
from processview.core import helpers as pv_helpers
|
39
|
+
from processview.core.manager import DatasetState, ProcessManager
|
42
40
|
from silx.gui import qt
|
43
|
-
|
44
|
-
from processview.core.manager import ProcessManager, DatasetState
|
45
|
-
from tomwer.core import settings
|
46
|
-
from tomwer.core import utils
|
47
|
-
from tomwer.core.process.reconstruction.saaxis.saaxis import SAAxisProcess
|
48
|
-
from tomwer.core.scan.scanbase import _TomwerBaseDock
|
41
|
+
|
49
42
|
import tomwer.core.process.reconstruction.saaxis.saaxis
|
43
|
+
from orangecontrib.tomwer.orange.managedprocess import SuperviseOW
|
44
|
+
from orangecontrib.tomwer.orange.settings import CallbackSettingsHandler
|
45
|
+
from tomwer.core import settings, utils
|
50
46
|
from tomwer.core.cluster import SlurmClusterConfiguration
|
51
47
|
from tomwer.core.futureobject import FutureTomwerObject
|
52
|
-
from
|
53
|
-
import
|
54
|
-
import
|
55
|
-
from
|
48
|
+
from tomwer.core.process.reconstruction.axis import AxisProcess
|
49
|
+
from tomwer.core.process.reconstruction.saaxis.saaxis import SAAxisProcess
|
50
|
+
from tomwer.core.scan.scanbase import TomwerScanBase, _TomwerBaseDock
|
51
|
+
from tomwer.gui.reconstruction.saaxis.saaxis import SAAxisWindow as _SAAxisWindow
|
52
|
+
from tomwer.synctools.axis import QAxisRP
|
53
|
+
from tomwer.synctools.saaxis import QSAAxisParams
|
54
|
+
from tomwer.synctools.stacks.reconstruction.saaxis import SAAxisProcessStack
|
55
|
+
|
56
|
+
from ..utils import WidgetLongProcessing
|
56
57
|
|
57
58
|
_logger = logging.getLogger(__name__)
|
58
59
|
|
@@ -100,7 +101,7 @@ class SAAxisWindow(_SAAxisWindow):
|
|
100
101
|
else:
|
101
102
|
axis_params_info = self.getQAxisRP().get_simple_str()
|
102
103
|
|
103
|
-
text = "start automatic cor for {} with {}"
|
104
|
+
text = f"start automatic cor for {scan} with {axis_params_info}"
|
104
105
|
_logger.inform(text)
|
105
106
|
cor_estimation_process = AxisProcess(
|
106
107
|
inputs={
|
@@ -113,10 +114,7 @@ class SAAxisWindow(_SAAxisWindow):
|
|
113
114
|
try:
|
114
115
|
cor_estimation_process.run()
|
115
116
|
except Exception as e:
|
116
|
-
text =
|
117
|
-
"Unable to run automatic cor calculation. Reason is "
|
118
|
-
"{}.".format(e)
|
119
|
-
)
|
117
|
+
text = f"Unable to run automatic cor calculation. Reason is {e}"
|
120
118
|
_logger.error(text)
|
121
119
|
msg = qt.QMessageBox(self)
|
122
120
|
msg.setIcon(qt.QMessageBox.Critical)
|
@@ -125,9 +123,7 @@ class SAAxisWindow(_SAAxisWindow):
|
|
125
123
|
return None
|
126
124
|
else:
|
127
125
|
cor = scan.axis_params.relative_cor_value
|
128
|
-
text = "automatic cor computed for {}: {} ({})"
|
129
|
-
scan, cor, axis_params_info
|
130
|
-
)
|
126
|
+
text = f"automatic cor computed for {scan}: {cor} ({axis_params_info})"
|
131
127
|
_logger.inform(text)
|
132
128
|
self.setEstimatedCorPosition(value=cor)
|
133
129
|
self.getAutomaticCorWindow().hide()
|
@@ -198,7 +194,7 @@ class SAAxisWindow(_SAAxisWindow):
|
|
198
194
|
if details is None:
|
199
195
|
details = ""
|
200
196
|
if selected_cor_value is None:
|
201
|
-
infos = "no selected cor value. {} skip SAAXIS"
|
197
|
+
infos = f"no selected cor value. {scan} skip SAAXIS"
|
202
198
|
infos = "\n".join((infos, details))
|
203
199
|
_logger.warning(infos)
|
204
200
|
scan.axis_params.set_relative_value(None)
|
@@ -213,11 +209,9 @@ class SAAxisWindow(_SAAxisWindow):
|
|
213
209
|
scan.nabu_recons_params["reconstruction"][
|
214
210
|
"rotation_axis_position"
|
215
211
|
] = scan.axis_params.absolute_cor_value
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
scan.axis_params.absolute_cor_value,
|
220
|
-
)
|
212
|
+
r_cor = scan.axis_params.relative_cor_value
|
213
|
+
a_cor = scan.axis_params.absolute_cor_value
|
214
|
+
infos = f"cor selected for {scan}: relative: {r_cor}, absolute: {a_cor}"
|
221
215
|
infos = "\n".join((infos, details))
|
222
216
|
pv_helpers.notify_succeed(
|
223
217
|
process=self._processing_stack, dataset=scan, details=infos
|
@@ -404,8 +398,7 @@ class SAAxisOW(SuperviseOW, WidgetLongProcessing):
|
|
404
398
|
):
|
405
399
|
self.notify_skip(
|
406
400
|
scan=scan,
|
407
|
-
details="saaxis has been skiped for {} because "
|
408
|
-
"of low space in lbsram".format(scan),
|
401
|
+
details=f"saaxis has been skiped for {scan} because of low space in lbsram",
|
409
402
|
)
|
410
403
|
self.Outputs.data.send(scan)
|
411
404
|
else:
|
@@ -28,30 +28,32 @@ __license__ = "MIT"
|
|
28
28
|
__date__ = "04/05/2021"
|
29
29
|
|
30
30
|
|
31
|
-
|
31
|
+
import functools
|
32
|
+
import logging
|
33
|
+
|
32
34
|
from orangewidget import gui
|
33
|
-
from orangecontrib.tomwer.orange.managedprocess import SuperviseOW
|
34
35
|
from orangewidget.settings import Setting
|
35
|
-
from orangecontrib.tomwer.orange.settings import CallbackSettingsHandler
|
36
36
|
from orangewidget.widget import Input, Output
|
37
|
-
from
|
38
|
-
from
|
39
|
-
from tomwer.synctools.sadeltabeta import QSADeltaBetaParams
|
40
|
-
from tomwer.synctools.axis import QAxisRP
|
37
|
+
from processview.core import helpers as pv_helpers
|
38
|
+
from processview.core.manager import DatasetState, ProcessManager
|
41
39
|
from silx.gui import qt
|
42
|
-
|
43
|
-
SADeltaBetaWindow as _SADeltaBetaWindow,
|
44
|
-
)
|
45
|
-
from tomwer.core.scan.scanbase import TomwerScanBase, _TomwerBaseDock
|
46
|
-
from processview.core.manager import ProcessManager, DatasetState
|
40
|
+
|
47
41
|
import tomwer.core.process.reconstruction.sadeltabeta.sadeltabeta
|
48
|
-
from tomwer.
|
49
|
-
from tomwer.
|
42
|
+
from orangecontrib.tomwer.orange.managedprocess import SuperviseOW
|
43
|
+
from orangecontrib.tomwer.orange.settings import CallbackSettingsHandler
|
44
|
+
from tomwer.core import settings, utils
|
50
45
|
from tomwer.core.cluster import SlurmClusterConfiguration
|
51
46
|
from tomwer.core.futureobject import FutureTomwerObject
|
52
|
-
from
|
53
|
-
import
|
54
|
-
import
|
47
|
+
from tomwer.core.process.reconstruction.sadeltabeta import SADeltaBetaProcess
|
48
|
+
from tomwer.core.scan.scanbase import TomwerScanBase, _TomwerBaseDock
|
49
|
+
from tomwer.gui.reconstruction.sadeltabeta import (
|
50
|
+
SADeltaBetaWindow as _SADeltaBetaWindow,
|
51
|
+
)
|
52
|
+
from tomwer.synctools.axis import QAxisRP
|
53
|
+
from tomwer.synctools.sadeltabeta import QSADeltaBetaParams
|
54
|
+
from tomwer.synctools.stacks.reconstruction.sadeltabeta import SADeltaBetaProcessStack
|
55
|
+
|
56
|
+
from ..utils import WidgetLongProcessing
|
55
57
|
|
56
58
|
_logger = logging.getLogger(__name__)
|
57
59
|
|
@@ -129,9 +131,7 @@ class SADeltaBetaWindow(_SADeltaBetaWindow):
|
|
129
131
|
self.getCurrentDeltaBetaValue() or scan.sa_delta_beta_params.autofocus
|
130
132
|
)
|
131
133
|
if selected_db_value is None:
|
132
|
-
infos = "no selected delta / beta value. {} skip SADeltaBetaParams"
|
133
|
-
scan
|
134
|
-
)
|
134
|
+
infos = f"no selected delta / beta value. {scan} skip SADeltaBetaParams"
|
135
135
|
_logger.warning(infos)
|
136
136
|
scan.sa_delta_beta_params.set_db_selected_value(None)
|
137
137
|
pv_helpers.notify_skip(
|
@@ -143,9 +143,8 @@ class SADeltaBetaWindow(_SADeltaBetaWindow):
|
|
143
143
|
if "phase" not in scan.nabu_recons_params:
|
144
144
|
scan.nabu_recons_params["phase"] = {}
|
145
145
|
scan.nabu_recons_params["phase"]["delta_beta"] = (selected_db_value,)
|
146
|
-
|
147
|
-
|
148
|
-
)
|
146
|
+
_db_value = scan.sa_delta_beta_params.value
|
147
|
+
infos = f"delta / beta selected for {scan}: {_db_value}"
|
149
148
|
pv_helpers.notify_succeed(
|
150
149
|
process=self._processing_stack, dataset=scan, details=infos
|
151
150
|
)
|
@@ -330,8 +329,7 @@ class SADeltaBetaOW(SuperviseOW, WidgetLongProcessing):
|
|
330
329
|
):
|
331
330
|
self.notify_skip(
|
332
331
|
scan=scan,
|
333
|
-
details="sa-delta-beta has been skiped for {} because "
|
334
|
-
"of low space in lbsram".format(scan),
|
332
|
+
details=f"sa-delta-beta has been skiped for {scan} because of low space in lbsram",
|
335
333
|
)
|
336
334
|
self.Outputs.data.send(scan)
|
337
335
|
else:
|
@@ -30,30 +30,29 @@ __license__ = "MIT"
|
|
30
30
|
__date__ = "19/07/2021"
|
31
31
|
|
32
32
|
|
33
|
+
import functools
|
33
34
|
import logging
|
34
|
-
|
35
|
-
from tomwer.core.scan.scanbase import TomwerScanBase
|
36
|
-
from orangecontrib.tomwer.widgets.utils import WidgetLongProcessing
|
37
|
-
from orangewidget.settings import Setting
|
35
|
+
|
38
36
|
from orangewidget import gui
|
37
|
+
from orangewidget.settings import Setting
|
39
38
|
from orangewidget.widget import Input, Output
|
40
|
-
from
|
39
|
+
from processview.core.manager import DatasetState, ProcessManager
|
40
|
+
from silx.gui import qt
|
41
|
+
from tomoscan.normalization import Method as NormMethod
|
42
|
+
|
43
|
+
from orangecontrib.tomwer.widgets.utils import WidgetLongProcessing
|
44
|
+
from tomwer.core import settings, utils
|
45
|
+
from tomwer.core.process.reconstruction.normalization import SinoNormalizationTask
|
46
|
+
from tomwer.core.process.reconstruction.normalization.params import _ValueSource
|
47
|
+
from tomwer.core.scan.scanbase import TomwerScanBase
|
41
48
|
from tomwer.gui.reconstruction.normalization.intensity import (
|
42
49
|
SinoNormWindow as _SinoNormWindow,
|
43
50
|
)
|
44
51
|
from tomwer.synctools.stacks.reconstruction.normalization import (
|
45
52
|
INormalizationProcessStack,
|
46
53
|
)
|
47
|
-
|
48
|
-
from
|
49
|
-
from tomwer.core.process.reconstruction.normalization import (
|
50
|
-
SinoNormalizationTask,
|
51
|
-
)
|
52
|
-
from tomwer.core import settings
|
53
|
-
from tomwer.core import utils
|
54
|
-
from tomoscan.normalization import Method as NormMethod
|
55
|
-
from tomwer.core.process.reconstruction.normalization.params import _ValueSource
|
56
|
-
import functools
|
54
|
+
|
55
|
+
from ...orange.managedprocess import SuperviseOW
|
57
56
|
|
58
57
|
_logger = logging.getLogger(__name__)
|
59
58
|
|
@@ -193,8 +192,7 @@ class SinoNormOW(WidgetLongProcessing, SuperviseOW):
|
|
193
192
|
def process(self, scan: TomwerScanBase):
|
194
193
|
if not isinstance(scan, (TomwerScanBase, type(None))):
|
195
194
|
raise TypeError(
|
196
|
-
"scan should be None or an instance of "
|
197
|
-
"TomwerScanBase. Not {}".format(type(scan))
|
195
|
+
f"scan should be None or an instance of TomwerScanBase. Not {(type(scan))}",
|
198
196
|
)
|
199
197
|
if scan is None:
|
200
198
|
return
|
@@ -203,7 +201,7 @@ class SinoNormOW(WidgetLongProcessing, SuperviseOW):
|
|
203
201
|
if settings.isOnLbsram(scan) and utils.isLowOnMemory(
|
204
202
|
settings.get_lbsram_path()
|
205
203
|
):
|
206
|
-
details = "skip {} because low memory on lbsram"
|
204
|
+
details = f"skip {scan} because low memory on lbsram"
|
207
205
|
self.notify_skip(scan=scan, details=details)
|
208
206
|
self.Outputs.data_out.send(scan)
|
209
207
|
else:
|