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.
Files changed (353) hide show
  1. orangecontrib/tomwer/__init__.py +1 -0
  2. orangecontrib/tomwer/orange/managedprocess.py +6 -4
  3. orangecontrib/tomwer/state_summary.py +3 -2
  4. orangecontrib/tomwer/widgets/__init__.py +2 -2
  5. orangecontrib/tomwer/widgets/cluster/FutureSupervisorOW.py +9 -7
  6. orangecontrib/tomwer/widgets/cluster/SlurmClusterOW.py +6 -5
  7. orangecontrib/tomwer/widgets/control/AdvancementOW.py +2 -1
  8. orangecontrib/tomwer/widgets/control/DataDiscoveryOW.py +235 -0
  9. orangecontrib/tomwer/widgets/control/DataListOW.py +7 -5
  10. orangecontrib/tomwer/widgets/control/DataListenerOW.py +13 -14
  11. orangecontrib/tomwer/widgets/control/DataSelectorOW.py +8 -6
  12. orangecontrib/tomwer/widgets/control/DataTransfertOW.py +9 -9
  13. orangecontrib/tomwer/widgets/control/DataValidatorOW.py +7 -8
  14. orangecontrib/tomwer/widgets/control/DataWatcherOW.py +25 -17
  15. orangecontrib/tomwer/widgets/control/EDF2NXTomomillOW.py +8 -8
  16. orangecontrib/tomwer/widgets/control/FilterOW.py +9 -8
  17. orangecontrib/tomwer/widgets/control/NXTomomillMixIn.py +3 -4
  18. orangecontrib/tomwer/widgets/control/NXTomomillOW.py +13 -14
  19. orangecontrib/tomwer/widgets/control/NotifierOW.py +3 -4
  20. orangecontrib/tomwer/widgets/control/SingleTomoObjOW.py +7 -5
  21. orangecontrib/tomwer/widgets/control/TimerOW.py +6 -5
  22. orangecontrib/tomwer/widgets/control/TomoObjSerieOW.py +5 -3
  23. orangecontrib/tomwer/widgets/control/VolumeSelector.py +8 -6
  24. orangecontrib/tomwer/widgets/control/VolumeSymLinkOW.py +10 -9
  25. orangecontrib/tomwer/widgets/control/icons/datadiscover.png +0 -0
  26. orangecontrib/tomwer/widgets/control/icons/datadiscover.svg +137 -0
  27. orangecontrib/tomwer/widgets/control/icons/nxtomomill.png +0 -0
  28. orangecontrib/tomwer/widgets/control/icons/nxtomomill.svg +5 -8
  29. orangecontrib/tomwer/widgets/debugtools/DatasetGeneratorOW.py +13 -15
  30. orangecontrib/tomwer/widgets/debugtools/ObjectInspectorOW.py +3 -2
  31. orangecontrib/tomwer/widgets/edit/DarkFlatPatchOW.py +10 -7
  32. orangecontrib/tomwer/widgets/edit/ImageKeyEditorOW.py +8 -5
  33. orangecontrib/tomwer/widgets/edit/ImageKeyUpgraderOW.py +5 -2
  34. orangecontrib/tomwer/widgets/edit/NXtomoEditorOW.py +6 -3
  35. orangecontrib/tomwer/widgets/edit/test/test_dark_flat_patch.py +8 -6
  36. orangecontrib/tomwer/widgets/edit/test/test_image_key_editor.py +3 -1
  37. orangecontrib/tomwer/widgets/edit/test/test_image_key_upgrader.py +3 -1
  38. orangecontrib/tomwer/widgets/edit/test/test_nxtomo_editor.py +3 -1
  39. orangecontrib/tomwer/widgets/other/PythonScriptOW.py +11 -11
  40. orangecontrib/tomwer/widgets/reconstruction/AxisOW.py +22 -27
  41. orangecontrib/tomwer/widgets/reconstruction/CastNabuVolumeOW.py +13 -11
  42. orangecontrib/tomwer/widgets/reconstruction/DarkRefAndCopyOW.py +11 -9
  43. orangecontrib/tomwer/widgets/reconstruction/NabuOW.py +16 -14
  44. orangecontrib/tomwer/widgets/reconstruction/NabuVolumeOW.py +27 -32
  45. orangecontrib/tomwer/widgets/reconstruction/SAAxisOW.py +27 -34
  46. orangecontrib/tomwer/widgets/reconstruction/SADeltaBetaOW.py +23 -25
  47. orangecontrib/tomwer/widgets/reconstruction/SinoNormOW.py +16 -18
  48. orangecontrib/tomwer/widgets/reconstruction/TofuOW.py +9 -7
  49. orangecontrib/tomwer/widgets/reconstruction/icons/nabu_2d.png +0 -0
  50. orangecontrib/tomwer/widgets/reconstruction/icons/nabu_2d.svg +8 -11
  51. orangecontrib/tomwer/widgets/visualization/DataViewerOW.py +8 -8
  52. orangecontrib/tomwer/widgets/visualization/DiffViewerOW.py +6 -4
  53. orangecontrib/tomwer/widgets/visualization/LivesliceOW.py +4 -3
  54. orangecontrib/tomwer/widgets/visualization/NXtomoMetadataViewerOW.py +4 -3
  55. orangecontrib/tomwer/widgets/visualization/RadioStackOW.py +6 -4
  56. orangecontrib/tomwer/widgets/visualization/SampleMovedOW.py +8 -6
  57. orangecontrib/tomwer/widgets/visualization/SinogramViewerOW.py +6 -3
  58. orangecontrib/tomwer/widgets/visualization/SliceStackOW.py +7 -5
  59. orangecontrib/tomwer/widgets/visualization/VolumeViewerOW.py +5 -4
  60. tomwer/__init__.py +1 -1
  61. tomwer/__main__.py +2 -1
  62. tomwer/app/axis.py +18 -14
  63. tomwer/app/canvas.py +7 -5
  64. tomwer/app/canvas_launcher/config.py +8 -6
  65. tomwer/app/canvas_launcher/environ.py +1 -2
  66. tomwer/app/canvas_launcher/mainwindow.py +23 -22
  67. tomwer/app/canvas_launcher/splash.py +1 -0
  68. tomwer/app/canvas_launcher/widgetsscheme.py +3 -3
  69. tomwer/app/darkref.py +7 -6
  70. tomwer/app/darkrefpatch.py +8 -6
  71. tomwer/app/diffframe.py +6 -4
  72. tomwer/app/imagekeyeditor.py +10 -10
  73. tomwer/app/imagekeyupgrader.py +8 -6
  74. tomwer/app/intensitynormalization.py +8 -8
  75. tomwer/app/lamino.py +5 -3
  76. tomwer/app/nabuapp.py +8 -6
  77. tomwer/app/nxtomoeditor.py +6 -5
  78. tomwer/app/radiostack.py +8 -6
  79. tomwer/app/rsync.py +3 -3
  80. tomwer/app/saaxis.py +22 -23
  81. tomwer/app/sadeltabeta.py +21 -21
  82. tomwer/app/samplemoved.py +8 -6
  83. tomwer/app/scanviewer.py +7 -6
  84. tomwer/app/sinogramviewer.py +8 -7
  85. tomwer/app/slicestack.py +8 -6
  86. tomwer/app/stopdatalistener.py +2 -1
  87. tomwer/core/futureobject.py +15 -6
  88. tomwer/core/log/logger.py +4 -3
  89. tomwer/core/log/processlog.py +0 -1
  90. tomwer/core/process/conditions/filters.py +3 -3
  91. tomwer/core/process/control/datadiscovery.py +7 -0
  92. tomwer/core/process/control/datalistener/datalistener.py +22 -21
  93. tomwer/core/process/control/datalistener/rpcserver.py +18 -28
  94. tomwer/core/process/control/datawatcher/datawatcher.py +15 -12
  95. tomwer/core/process/control/datawatcher/datawatcherobserver.py +11 -8
  96. tomwer/core/process/control/datawatcher/datawatcherprocess.py +7 -5
  97. tomwer/core/process/control/datawatcher/edfdwprocess.py +5 -15
  98. tomwer/core/process/control/datawatcher/hdf5dwprocess.py +3 -1
  99. tomwer/core/process/control/datawatcher/status.py +2 -0
  100. tomwer/core/process/control/nxtomomill.py +7 -6
  101. tomwer/core/process/control/scanlist.py +2 -1
  102. tomwer/core/process/control/scanselector.py +1 -0
  103. tomwer/core/process/control/scantransfer.py +12 -12
  104. tomwer/core/process/control/scanvalidator.py +7 -6
  105. tomwer/core/process/control/test/test_volume_link.py +5 -4
  106. tomwer/core/process/control/timer.py +4 -4
  107. tomwer/core/process/control/volumeselector.py +1 -0
  108. tomwer/core/process/control/volumesymlink.py +8 -9
  109. tomwer/core/process/edit/darkflatpatch.py +9 -12
  110. tomwer/core/process/edit/imagekeyeditor.py +11 -13
  111. tomwer/core/process/reconstruction/axis/axis.py +36 -38
  112. tomwer/core/process/reconstruction/axis/mode.py +2 -1
  113. tomwer/core/process/reconstruction/axis/params.py +23 -28
  114. tomwer/core/process/reconstruction/darkref/darkrefs.py +23 -27
  115. tomwer/core/process/reconstruction/darkref/darkrefscopy.py +14 -18
  116. tomwer/core/process/reconstruction/darkref/params.py +3 -1
  117. tomwer/core/process/reconstruction/lamino/tofu.py +11 -15
  118. tomwer/core/process/reconstruction/nabu/castvolume.py +15 -18
  119. tomwer/core/process/reconstruction/nabu/nabucommon.py +19 -20
  120. tomwer/core/process/reconstruction/nabu/nabuscores.py +16 -14
  121. tomwer/core/process/reconstruction/nabu/nabuslices.py +27 -22
  122. tomwer/core/process/reconstruction/nabu/nabuvolume.py +20 -22
  123. tomwer/core/process/reconstruction/nabu/utils.py +17 -15
  124. tomwer/core/process/reconstruction/normalization/__init__.py +1 -3
  125. tomwer/core/process/reconstruction/normalization/normalization.py +16 -21
  126. tomwer/core/process/reconstruction/normalization/params.py +2 -2
  127. tomwer/core/process/reconstruction/saaxis/__init__.py +1 -1
  128. tomwer/core/process/reconstruction/saaxis/params.py +6 -7
  129. tomwer/core/process/reconstruction/saaxis/saaxis.py +44 -55
  130. tomwer/core/process/reconstruction/sadeltabeta/__init__.py +1 -1
  131. tomwer/core/process/reconstruction/sadeltabeta/params.py +9 -13
  132. tomwer/core/process/reconstruction/sadeltabeta/sadeltabeta.py +40 -46
  133. tomwer/core/process/reconstruction/scores/__init__.py +2 -2
  134. tomwer/core/process/reconstruction/scores/params.py +6 -9
  135. tomwer/core/process/reconstruction/scores/scores.py +10 -13
  136. tomwer/core/process/reconstruction/test/test_axis_params.py +4 -2
  137. tomwer/core/process/reconstruction/test/test_darkref.py +1 -2
  138. tomwer/core/process/reconstruction/test/test_darkref_copy.py +3 -1
  139. tomwer/core/process/reconstruction/test/test_paramsbase.py +1 -1
  140. tomwer/core/process/reconstruction/test/test_saaxis.py +11 -7
  141. tomwer/core/process/reconstruction/test/test_sadeltabeta.py +5 -4
  142. tomwer/core/process/reconstruction/test/test_utils.py +3 -2
  143. tomwer/core/process/script/python.py +6 -8
  144. tomwer/core/process/task.py +11 -12
  145. tomwer/core/process/test/test_axis.py +12 -9
  146. tomwer/core/process/test/test_conditions.py +8 -8
  147. tomwer/core/process/test/test_dark_and_flat.py +9 -8
  148. tomwer/core/process/test/test_data_listener.py +5 -3
  149. tomwer/core/process/test/test_data_transfer.py +14 -12
  150. tomwer/core/process/test/test_data_watcher.py +3 -1
  151. tomwer/core/process/test/test_lamino.py +3 -1
  152. tomwer/core/process/test/test_nabu.py +13 -12
  153. tomwer/core/process/test/test_normalization.py +7 -5
  154. tomwer/core/process/test/test_timer.py +2 -1
  155. tomwer/core/process/utils.py +9 -9
  156. tomwer/core/progress.py +3 -4
  157. tomwer/core/scan/blissscan.py +4 -2
  158. tomwer/core/scan/edfscan.py +26 -29
  159. tomwer/core/scan/futurescan.py +2 -1
  160. tomwer/core/scan/hdf5scan.py +21 -28
  161. tomwer/core/scan/scanbase.py +18 -18
  162. tomwer/core/scan/scanfactory.py +20 -21
  163. tomwer/core/scan/scantype.py +7 -0
  164. tomwer/core/scan/test/test_edf.py +2 -1
  165. tomwer/core/scan/test/test_future_scan.py +2 -1
  166. tomwer/core/scan/test/test_h5.py +5 -4
  167. tomwer/core/scan/test/test_process_registration.py +5 -3
  168. tomwer/core/scan/test/test_scan.py +11 -9
  169. tomwer/core/settings.py +1 -2
  170. tomwer/core/test/test_lamino.py +3 -2
  171. tomwer/core/test/test_scanutils.py +3 -2
  172. tomwer/core/test/test_utils.py +6 -4
  173. tomwer/core/utils/__init__.py +8 -6
  174. tomwer/core/utils/deprecation.py +2 -2
  175. tomwer/core/utils/image.py +4 -3
  176. tomwer/core/utils/locker.py +1 -1
  177. tomwer/core/utils/normalization.py +1 -0
  178. tomwer/core/utils/nxtomoutils.py +2 -1
  179. tomwer/core/utils/scanutils.py +9 -6
  180. tomwer/core/utils/slurm.py +2 -1
  181. tomwer/core/utils/time.py +2 -4
  182. tomwer/core/utils/volumeutils.py +2 -1
  183. tomwer/core/volume/__init__.py +1 -1
  184. tomwer/core/volume/edfvolume.py +4 -3
  185. tomwer/core/volume/hdf5volume.py +6 -8
  186. tomwer/core/volume/jp2kvolume.py +4 -3
  187. tomwer/core/volume/rawvolume.py +7 -7
  188. tomwer/core/volume/tiffvolume.py +8 -6
  189. tomwer/core/volume/volumebase.py +1 -0
  190. tomwer/core/volume/volumefactory.py +18 -18
  191. tomwer/gui/cluster/slurm.py +2 -0
  192. tomwer/gui/cluster/supervisor.py +4 -2
  193. tomwer/gui/cluster/test/test_cluster.py +5 -4
  194. tomwer/gui/cluster/test/test_supervisor.py +4 -2
  195. tomwer/gui/conditions/filter.py +7 -6
  196. tomwer/gui/control/actions.py +1 -0
  197. tomwer/gui/control/datadiscovery.py +168 -0
  198. tomwer/gui/control/datalist.py +29 -28
  199. tomwer/gui/control/datalistener.py +8 -4
  200. tomwer/gui/control/datareacheractions.py +2 -1
  201. tomwer/gui/control/datatransfert.py +3 -1
  202. tomwer/gui/control/datavalidator.py +11 -12
  203. tomwer/gui/control/datawatcher/configuration.py +12 -1
  204. tomwer/gui/control/datawatcher/controlwidget.py +116 -0
  205. tomwer/gui/control/datawatcher/datawatcher.py +63 -121
  206. tomwer/gui/control/datawatcher/datawatcherobserver.py +7 -9
  207. tomwer/gui/control/history.py +3 -1
  208. tomwer/gui/control/observations.py +7 -7
  209. tomwer/gui/control/scanselectorwidget.py +4 -2
  210. tomwer/gui/control/selectorwidgetbase.py +3 -1
  211. tomwer/gui/control/serie/seriecreator.py +11 -12
  212. tomwer/gui/control/singletomoobj.py +4 -4
  213. tomwer/gui/control/test/test_datadiscovery.py +27 -0
  214. tomwer/gui/control/test/test_datalist.py +7 -6
  215. tomwer/gui/control/test/test_datalistener.py +4 -4
  216. tomwer/gui/control/test/test_datavalidator.py +3 -1
  217. tomwer/gui/control/test/test_inputwidget.py +5 -4
  218. tomwer/gui/control/test/test_process_manager.py +3 -3
  219. tomwer/gui/control/test/test_scanselector.py +6 -4
  220. tomwer/gui/control/test/test_scanvalidator.py +6 -5
  221. tomwer/gui/control/test/test_single_tomo_obj.py +5 -3
  222. tomwer/gui/control/test/test_volume_dialog.py +7 -5
  223. tomwer/gui/control/test/test_volumeselector.py +8 -6
  224. tomwer/gui/control/volumeselectorwidget.py +2 -1
  225. tomwer/gui/debugtools/datasetgenerator.py +2 -1
  226. tomwer/gui/debugtools/objectinspector.py +6 -7
  227. tomwer/gui/edit/dkrfpatch.py +11 -10
  228. tomwer/gui/edit/imagekeyeditor.py +12 -12
  229. tomwer/gui/edit/nxtomoeditor.py +8 -7
  230. tomwer/gui/edit/test/test_dkrf_patch.py +10 -9
  231. tomwer/gui/edit/test/test_image_key_editor.py +8 -6
  232. tomwer/gui/edit/test/test_nx_editor.py +7 -5
  233. tomwer/gui/icons.py +3 -2
  234. tomwer/gui/illustrations.py +3 -2
  235. tomwer/gui/imagefromfile.py +3 -1
  236. tomwer/gui/qfolderdialog.py +14 -12
  237. tomwer/gui/reconstruction/axis/CompareImages.py +9 -8
  238. tomwer/gui/reconstruction/axis/__init__.py +1 -1
  239. tomwer/gui/reconstruction/axis/axis.py +9 -7
  240. tomwer/gui/reconstruction/axis/radioaxis.py +30 -32
  241. tomwer/gui/reconstruction/darkref/darkrefcopywidget.py +6 -5
  242. tomwer/gui/reconstruction/darkref/darkrefwidget.py +4 -2
  243. tomwer/gui/reconstruction/lamino/tofu/misc.py +3 -1
  244. tomwer/gui/reconstruction/lamino/tofu/projections.py +16 -8
  245. tomwer/gui/reconstruction/lamino/tofu/tofu.py +6 -3
  246. tomwer/gui/reconstruction/lamino/tofu/tofuexpert.py +5 -2
  247. tomwer/gui/reconstruction/lamino/tofu/tofuoutput.py +8 -5
  248. tomwer/gui/reconstruction/nabu/action.py +1 -0
  249. tomwer/gui/reconstruction/nabu/castvolume.py +6 -4
  250. tomwer/gui/reconstruction/nabu/check.py +3 -2
  251. tomwer/gui/reconstruction/nabu/nabuconfig/base.py +5 -2
  252. tomwer/gui/reconstruction/nabu/nabuconfig/ctf.py +6 -3
  253. tomwer/gui/reconstruction/nabu/nabuconfig/nabuconfig.py +4 -3
  254. tomwer/gui/reconstruction/nabu/nabuconfig/output.py +7 -5
  255. tomwer/gui/reconstruction/nabu/nabuconfig/phase.py +8 -6
  256. tomwer/gui/reconstruction/nabu/nabuconfig/preprocessing.py +7 -7
  257. tomwer/gui/reconstruction/nabu/nabuconfig/reconstruction.py +40 -33
  258. tomwer/gui/reconstruction/nabu/nabuflow.py +7 -4
  259. tomwer/gui/reconstruction/nabu/slices.py +14 -10
  260. tomwer/gui/reconstruction/nabu/slurm.py +1 -0
  261. tomwer/gui/reconstruction/nabu/volume.py +5 -3
  262. tomwer/gui/reconstruction/normalization/intensity.py +14 -13
  263. tomwer/gui/reconstruction/saaxis/corrangeselector.py +36 -35
  264. tomwer/gui/reconstruction/saaxis/dimensionwidget.py +5 -4
  265. tomwer/gui/reconstruction/saaxis/saaxis.py +17 -17
  266. tomwer/gui/reconstruction/saaxis/sliceselector.py +5 -5
  267. tomwer/gui/reconstruction/sadeltabeta/saadeltabeta.py +33 -36
  268. tomwer/gui/reconstruction/scores/scoreplot.py +19 -18
  269. tomwer/gui/reconstruction/test/test_axis.py +14 -13
  270. tomwer/gui/reconstruction/test/test_lamino.py +3 -2
  271. tomwer/gui/reconstruction/test/test_nabu.py +8 -6
  272. tomwer/gui/reconstruction/test/test_saaxis.py +17 -15
  273. tomwer/gui/reconstruction/test/test_sadeltabeta.py +15 -13
  274. tomwer/gui/samplemoved/__init__.py +8 -7
  275. tomwer/gui/samplemoved/selectiontable.py +4 -2
  276. tomwer/gui/stackplot.py +14 -13
  277. tomwer/gui/stacks.py +11 -9
  278. tomwer/gui/test/test_axis_gui.py +5 -4
  279. tomwer/gui/test/test_qfolder_dialog.py +2 -1
  280. tomwer/gui/utils/__init__.py +5 -5
  281. tomwer/gui/utils/buttons.py +1 -0
  282. tomwer/gui/utils/completer.py +1 -0
  283. tomwer/gui/utils/flow.py +4 -2
  284. tomwer/gui/utils/illustrations.py +1 -0
  285. tomwer/gui/utils/inputwidget.py +11 -17
  286. tomwer/gui/utils/lineselector/lineselector.py +6 -8
  287. tomwer/gui/utils/qt_utils.py +1 -0
  288. tomwer/gui/utils/scandescription.py +2 -0
  289. tomwer/gui/utils/splashscreen.py +1 -1
  290. tomwer/gui/utils/unitsystem.py +3 -1
  291. tomwer/gui/utils/vignettes.py +8 -8
  292. tomwer/gui/utils/waiterthread.py +2 -1
  293. tomwer/gui/visualization/dataviewer.py +20 -28
  294. tomwer/gui/visualization/diffviewer/diffviewer.py +17 -20
  295. tomwer/gui/visualization/diffviewer/shiftwidget.py +3 -1
  296. tomwer/gui/visualization/nxtomometadata.py +1 -0
  297. tomwer/gui/visualization/reconstructionparameters.py +13 -12
  298. tomwer/gui/visualization/scanoverview.py +5 -3
  299. tomwer/gui/visualization/sinogramviewer.py +3 -2
  300. tomwer/gui/visualization/test/test_dataviewer.py +3 -1
  301. tomwer/gui/visualization/test/test_diffviewer.py +8 -6
  302. tomwer/gui/visualization/test/test_nx_tomo_metadata_viewer.py +5 -3
  303. tomwer/gui/visualization/test/test_reconstruction_parameters.py +5 -3
  304. tomwer/gui/visualization/test/test_sinogramviewer.py +10 -9
  305. tomwer/gui/visualization/test/test_stacks.py +8 -6
  306. tomwer/gui/visualization/test/test_volumeviewer.py +10 -8
  307. tomwer/gui/visualization/tomoobjoverview.py +7 -4
  308. tomwer/gui/visualization/volumeoverview.py +5 -3
  309. tomwer/gui/visualization/volumeviewer.py +15 -14
  310. tomwer/io/utils/__init__.py +3 -3
  311. tomwer/io/utils/h5pyutils.py +2 -1
  312. tomwer/io/utils/utils.py +17 -21
  313. tomwer/resources/__init__.py +1 -1
  314. tomwer/synctools/axis.py +3 -1
  315. tomwer/synctools/darkref.py +3 -2
  316. tomwer/synctools/datalistener.py +10 -6
  317. tomwer/synctools/datatransfert.py +2 -3
  318. tomwer/synctools/imageloaderthread.py +5 -3
  319. tomwer/synctools/rsyncmanager.py +3 -2
  320. tomwer/synctools/saaxis.py +3 -1
  321. tomwer/synctools/sadeltabeta.py +3 -1
  322. tomwer/synctools/stacks/control/datalistener.py +9 -12
  323. tomwer/synctools/stacks/edit/darkflatpatch.py +13 -12
  324. tomwer/synctools/stacks/edit/imagekeyeditor.py +12 -11
  325. tomwer/synctools/stacks/processingstack.py +3 -2
  326. tomwer/synctools/stacks/reconstruction/axis.py +12 -12
  327. tomwer/synctools/stacks/reconstruction/castvolume.py +8 -5
  328. tomwer/synctools/stacks/reconstruction/dkrefcopy.py +10 -9
  329. tomwer/synctools/stacks/reconstruction/lamino.py +9 -7
  330. tomwer/synctools/stacks/reconstruction/nabu.py +18 -17
  331. tomwer/synctools/stacks/reconstruction/normalization.py +12 -16
  332. tomwer/synctools/stacks/reconstruction/saaxis.py +13 -11
  333. tomwer/synctools/stacks/reconstruction/sadeltabeta.py +16 -14
  334. tomwer/synctools/test/test_darkRefs.py +4 -3
  335. tomwer/synctools/test/test_foldertransfer.py +14 -12
  336. tomwer/synctools/test/test_scanstages.py +8 -7
  337. tomwer/synctools/utils/scanstages.py +7 -5
  338. tomwer/tests/conftest.py +4 -4
  339. tomwer/tests/test_scripts.py +3 -2
  340. tomwer/tests/utils/__init__.py +5 -4
  341. tomwer/tests/utils/utilstest.py +5 -6
  342. tomwer/third_party/nabu/preproc/phase.py +7 -5
  343. tomwer/third_party/nabu/utils.py +3 -2
  344. tomwer/utils.py +12 -12
  345. tomwer/version.py +4 -4
  346. {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/METADATA +2 -2
  347. {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/RECORD +353 -345
  348. /tomwer-1.1.1-py3.8-nspkg.pth → /tomwer-1.2.0a0-py3.8-nspkg.pth +0 -0
  349. {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/LICENSE +0 -0
  350. {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/WHEEL +0 -0
  351. {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/entry_points.txt +0 -0
  352. {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/namespace_packages.txt +0 -0
  353. {tomwer-1.1.1.dist-info → tomwer-1.2.0a0.dist-info}/top_level.txt +0 -0
@@ -27,18 +27,19 @@ __authors__ = ["H. Payno"]
27
27
  __license__ = "MIT"
28
28
  __date__ = "19/07/2018"
29
29
 
30
- from silx.gui import qt
30
+ import logging
31
+
31
32
  from orangewidget import gui
33
+ from orangewidget.widget import Input, Output
34
+ from processview.core.manager import DatasetState
35
+ from silx.gui import qt
32
36
 
33
37
  import tomwer.core.process.conditions.filters
34
38
  from orangecontrib.tomwer.orange.managedprocess import SuperviseOW
35
- from orangewidget.widget import Input, Output
36
- from tomwer.gui.conditions.filter import FileNameFilterWidget
39
+ from tomwer.core.process.conditions import filters
37
40
  from tomwer.core.scan.scanbase import TomwerScanBase
38
- from processview.core.manager import DatasetState
41
+ from tomwer.gui.conditions.filter import FileNameFilterWidget
39
42
  from tomwer.utils import docstring
40
- from tomwer.core.process.conditions import filters
41
- import logging
42
43
 
43
44
  logger = logging.getLogger(__name__)
44
45
 
@@ -98,11 +99,11 @@ class NameFilterOW(SuperviseOW):
98
99
  out = process.outputs.data
99
100
  if out is not None:
100
101
  self.set_dataset_state(dataset=scan, state=DatasetState.SUCCEED)
101
- logger.processSucceed("{} pass through filter".format(str(scan)))
102
+ logger.processSucceed(f"{scan} pass through filter")
102
103
  self._signalScanReady(scan)
103
104
  else:
104
105
  self.set_dataset_state(dataset=scan, state=DatasetState.FAILED)
105
- logger.processFailed("{} NOT pass through filter".format(str(scan)))
106
+ logger.processFailed(f"{scan} NOT pass through filter")
106
107
 
107
108
  @docstring(SuperviseOW)
108
109
  def reprocess(self, dataset):
@@ -1,5 +1,6 @@
1
- import os
2
1
  import logging
2
+ import os
3
+
3
4
  from orangewidget.settings import Setting
4
5
 
5
6
  _logger = logging.getLogger(__name__)
@@ -46,9 +47,7 @@ class NXTomomillMixIn:
46
47
  ) # pylint: disable=E1102
47
48
  except Exception as e:
48
49
  self._logger.error(
49
- "Fail to use configuration file {}."
50
- "Error is {}. No conversion will be done."
51
- "".format(cfg_file, e)
50
+ f"Fail to use configuration file {cfg_file}. Error is {e}. No conversion will be done."
52
51
  )
53
52
  else:
54
53
  default_inputs = {
@@ -27,20 +27,21 @@ __authors__ = ["H. Payno"]
27
27
  __license__ = "MIT"
28
28
  __date__ = "11/03/2020"
29
29
 
30
- import os
31
30
  import logging
31
+ import os
32
32
  from copy import copy
33
- from silx.gui import qt
33
+
34
+ from nxtomomill.io.config import TomoHDF5Config as HDF5Config
34
35
  from orangewidget import gui
35
- from tomwer.gui.control.datalist import BlissHDF5DataListMainWindow
36
+ from silx.gui import qt
37
+
36
38
  from orangecontrib.tomwer.orange.managedprocess import TomwerWithStackStack
37
- from tomwer.core.scan.hdf5scan import HDF5TomoScan, HDF5TomoScanIdentifier
38
- from tomwer.core.process.control.nxtomomill import H5ToNxProcess
39
39
  from orangecontrib.tomwer.widgets.control.NXTomomillMixIn import NXTomomillMixIn
40
+ from tomwer.core.process.control.nxtomomill import H5ToNxProcess
40
41
  from tomwer.core.scan.blissscan import BlissScan
41
- from nxtomomill.io.config import TomoHDF5Config as HDF5Config
42
- from tomwer.gui.control.nxtomomill import OverwriteMessage
43
- from tomwer.gui.control.nxtomomill import NXTomomillInput
42
+ from tomwer.core.scan.hdf5scan import HDF5TomoScan, HDF5TomoScanIdentifier
43
+ from tomwer.gui.control.datalist import BlissHDF5DataListMainWindow
44
+ from tomwer.gui.control.nxtomomill import NXTomomillInput, OverwriteMessage
44
45
 
45
46
  logger = logging.getLogger(__name__)
46
47
 
@@ -164,7 +165,7 @@ class NXTomomillOW(
164
165
 
165
166
  :param str bliss_url: string at entry@file format
166
167
  """
167
- logger.processStarted("Start translate {} to NXTomo".format(str(bliss_url)))
168
+ logger.processStarted(f"Start translate {bliss_url} to NXTomo")
168
169
  self.__configuration_cache = HDF5Config.from_dict(
169
170
  copy(self.get_default_input_values()["h5_to_nx_configuration"])
170
171
  )
@@ -242,9 +243,9 @@ class NXTomomillOW(
242
243
  try:
243
244
  self.widget.add(scan)
244
245
  except Exception as e:
245
- logger.error("Fail to add {}. Error is {}".format(scan, e))
246
+ logger.error(f"Fail to add {scan}. Error is {e}")
246
247
  else:
247
- logger.warning("{} is an invalid link to a file".format(scan))
248
+ logger.warning(f"{scan} is an invalid link to a file")
248
249
  if "nxtomomill_cfg_file" in self._ewoks_default_inputs: # pylint: disable=E1135
249
250
  nxtomo_cfg_file = self._ewoks_default_inputs[ # pylint: disable=E1136
250
251
  "nxtomomill_cfg_file"
@@ -264,9 +265,7 @@ class NXTomomillOW(
264
265
  configuration = HDF5Config.from_cfg_file(configuration_file)
265
266
  except Exception as e:
266
267
  logger.error(
267
- "Fail to use configuration file {}."
268
- "Error is {}. No conversion will be done."
269
- "".format(configuration_file, e)
268
+ f"Fail to use configuration file {configuration_file}. Error is {e}. No conversion will be done."
270
269
  )
271
270
  return None
272
271
  return configuration
@@ -27,12 +27,11 @@ __authors__ = ["H. Payno"]
27
27
  __license__ = "MIT"
28
28
  __date__ = "19/07/2018"
29
29
 
30
- from orangewidget import gui
31
- from silx.gui import qt
32
- from orangewidget import widget
30
+ from orangewidget import gui, settings, widget
33
31
  from orangewidget.widget import Input, Output
32
+ from silx.gui import qt
33
+
34
34
  from tomwer.core.tomwer_object import TomwerObject
35
- from orangewidget import settings
36
35
 
37
36
 
38
37
  class NotifierWidgetOW(widget.OWBaseWidget):
@@ -27,17 +27,19 @@ __authors__ = ["C. Nemoz", "H. Payno"]
27
27
  __license__ = "MIT"
28
28
  __date__ = "25/08/2022"
29
29
 
30
+ import logging
31
+
32
+ import tomoscan.esrf.scan.utils
30
33
  from orangewidget import gui
34
+ from orangewidget.settings import Setting
35
+ from orangewidget.widget import Input, Output, OWBaseWidget
36
+
37
+ import tomwer.core.process.control.singletomoobj
31
38
  from tomwer.core.scan.scanbase import TomwerScanBase
32
39
  from tomwer.core.scan.scanfactory import ScanFactory
33
40
  from tomwer.core.tomwer_object import TomwerObject
34
41
  from tomwer.core.volume.volumefactory import VolumeFactory
35
42
  from tomwer.gui.control.singletomoobj import SingleTomoObj
36
- from orangewidget.settings import Setting
37
- from orangewidget.widget import Output, Input, OWBaseWidget
38
- import tomoscan.esrf.scan.utils
39
- import tomwer.core.process.control.singletomoobj
40
- import logging
41
43
 
42
44
  _logger = logging.getLogger(__name__)
43
45
 
@@ -27,18 +27,19 @@ __authors__ = ["H. Payno"]
27
27
  __license__ = "MIT"
28
28
  __date__ = "19/07/2018"
29
29
 
30
- from silx.gui import qt
30
+ import functools
31
+ import logging
32
+
31
33
  from orangewidget import gui
32
34
  from orangewidget.settings import Setting
33
35
  from orangewidget.widget import Input, Output
36
+ from processview.core.manager import DatasetState, ProcessManager
37
+ from silx.gui import qt
34
38
 
35
39
  import tomwer.core.process.control.timer
36
- from tomwer.core.scan.scanbase import TomwerScanBase
37
- from processview.core.manager import ProcessManager, DatasetState
38
40
  from orangecontrib.tomwer.orange.managedprocess import SuperviseOW
41
+ from tomwer.core.scan.scanbase import TomwerScanBase
39
42
  from tomwer.utils import docstring
40
- import logging
41
- import functools
42
43
 
43
44
  _logger = logging.getLogger(__name__)
44
45
 
@@ -29,13 +29,15 @@ __authors__ = [
29
29
  __license__ = "MIT"
30
30
  __date__ = "12/07/2022"
31
31
 
32
+ import logging
33
+
32
34
  from orangewidget import gui
33
- from orangewidget.widget import Output, Input, OWBaseWidget
35
+ from orangewidget.widget import Input, Output, OWBaseWidget
34
36
  from tomoscan.serie import Serie
35
- from tomwer.core.tomwer_object import TomwerObject
37
+
36
38
  import tomwer.core.process.control.tomoobjserie
39
+ from tomwer.core.tomwer_object import TomwerObject
37
40
  from tomwer.gui.control.serie.seriecreator import SerieWidgetDialog
38
- import logging
39
41
 
40
42
  logger = logging.getLogger(__name__)
41
43
 
@@ -29,15 +29,17 @@ __authors__ = [
29
29
  __license__ = "MIT"
30
30
  __date__ = "12/07/2022"
31
31
 
32
- from silx.gui import qt
32
+ import logging
33
+
33
34
  from orangewidget import gui
34
- from orangewidget.widget import Output, Input, OWBaseWidget
35
- from tomwer.core.volume.volumebase import TomwerVolumeBase
36
- from tomwer.core.scan.hdf5scan import HDF5TomoScan
37
- from tomwer.gui.control.volumeselectorwidget import VolumeSelectorWidget
38
35
  from orangewidget.settings import Setting
36
+ from orangewidget.widget import Input, Output, OWBaseWidget
37
+ from silx.gui import qt
38
+
39
39
  import tomwer.core.process.control.volumeselector
40
- import logging
40
+ from tomwer.core.scan.hdf5scan import HDF5TomoScan
41
+ from tomwer.core.volume.volumebase import TomwerVolumeBase
42
+ from tomwer.gui.control.volumeselectorwidget import VolumeSelectorWidget
41
43
 
42
44
  logger = logging.getLogger(__name__)
43
45
 
@@ -28,20 +28,21 @@ __license__ = "MIT"
28
28
  __date__ = "16/11/2020"
29
29
 
30
30
 
31
- from silx.gui import qt
31
+ import logging
32
+
32
33
  from orangewidget import gui
34
+ from orangewidget.settings import Setting
35
+ from orangewidget.widget import Input, Output
36
+ from processview.core.manager import DatasetState, ProcessManager
37
+ from silx.gui import qt
33
38
 
34
39
  import tomwer.core.process.control.volumesymlink
35
- from orangewidget.settings import Setting
36
- from orangewidget.widget import Output, Input
37
- from tomwer.core.scan.scanbase import TomwerScanBase
40
+ from orangecontrib.tomwer.orange.managedprocess import SuperviseOW
38
41
  from tomwer.core.process.control.volumesymlink import (
39
42
  OutputType,
40
43
  VolumeSymbolicLinkProcess,
41
44
  )
42
- from orangecontrib.tomwer.orange.managedprocess import SuperviseOW
43
- from processview.core.manager import ProcessManager, DatasetState
44
- import logging
45
+ from tomwer.core.scan.scanbase import TomwerScanBase
45
46
 
46
47
  _logger = logging.getLogger(__name__)
47
48
 
@@ -115,13 +116,13 @@ class VolumeSymLinkOW(SuperviseOW):
115
116
  try:
116
117
  symlink_process.run()
117
118
  except Exception:
118
- mess = "Failed to create symbolic link for {}".format(str(scan))
119
+ mess = f"Failed to create symbolic link for {scan}"
119
120
  _logger.processFailed(mess)
120
121
  ProcessManager().notify_dataset_state(
121
122
  dataset=self.scan, process=self, state=DatasetState.FAILED, details=mess
122
123
  )
123
124
  else:
124
- mess = "Create symbolic link for {}".format(str(scan))
125
+ mess = f"Create symbolic link for {scan}"
125
126
  _logger.processSucceed(mess)
126
127
  ProcessManager().notify_dataset_state(
127
128
  dataset=self.scan,
@@ -0,0 +1,137 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+ <svg
5
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
6
+ xmlns:cc="http://creativecommons.org/ns#"
7
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8
+ xmlns:svg="http://www.w3.org/2000/svg"
9
+ xmlns="http://www.w3.org/2000/svg"
10
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12
+ id="svg2"
13
+ width="36px"
14
+ height="31px"
15
+ version="1.1"
16
+ sodipodi:docname="datadiscover.svg"
17
+ inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)">
18
+ <sodipodi:namedview
19
+ pagecolor="#ffffff"
20
+ bordercolor="#666666"
21
+ borderopacity="1"
22
+ objecttolerance="10"
23
+ gridtolerance="10"
24
+ guidetolerance="10"
25
+ inkscape:pageopacity="0"
26
+ inkscape:pageshadow="2"
27
+ inkscape:window-width="1508"
28
+ inkscape:window-height="826"
29
+ id="namedview29"
30
+ showgrid="false"
31
+ inkscape:zoom="7.6129032"
32
+ inkscape:cx="18"
33
+ inkscape:cy="15.5"
34
+ inkscape:window-x="72"
35
+ inkscape:window-y="27"
36
+ inkscape:window-maximized="0"
37
+ inkscape:current-layer="layer1" />
38
+ <defs
39
+ id="defs8">
40
+ <marker
41
+ id="TriangleOutM"
42
+ overflow="visible"
43
+ orient="auto">
44
+ <path
45
+ id="path3916"
46
+ transform="scale(.4)"
47
+ d="m5.77 0-8.65 5v-10l8.65 5z"
48
+ fill-rule="evenodd"
49
+ stroke="#000"
50
+ stroke-width="1pt" />
51
+ </marker>
52
+ <filter
53
+ id="filter3815">
54
+ <feGaussianBlur
55
+ id="feGaussianBlur3817"
56
+ stdDeviation="0.069119977" />
57
+ </filter>
58
+ <filter
59
+ id="filter3784">
60
+ <feGaussianBlur
61
+ id="feGaussianBlur3786"
62
+ stdDeviation="0.10012024" />
63
+ </filter>
64
+ <radialGradient
65
+ id="radialGradient3022"
66
+ cx="13.792"
67
+ cy="20.623"
68
+ r="6.9238"
69
+ gradientTransform="matrix(1 0 0 1.0949 0 -1.9563)"
70
+ gradientUnits="userSpaceOnUse">
71
+ <stop
72
+ id="stop3790"
73
+ stop-color="#dfd4d4"
74
+ stop-opacity=".69565"
75
+ offset="0" />
76
+ <stop
77
+ id="stop3792"
78
+ stop-opacity="0"
79
+ offset="1" />
80
+ </radialGradient>
81
+ <linearGradient
82
+ id="linearGradient3024"
83
+ x1="3.5069"
84
+ x2="12.781"
85
+ y1="25.746"
86
+ y2="25.746"
87
+ gradientUnits="userSpaceOnUse">
88
+ <stop
89
+ id="stop3755"
90
+ stop-color="#dedde8"
91
+ offset="0" />
92
+ <stop
93
+ id="stop3757"
94
+ stop-opacity="0"
95
+ offset="1" />
96
+ </linearGradient>
97
+ </defs>
98
+ <metadata
99
+ id="metadata4">
100
+ <rdf:RDF>
101
+ <cc:Work
102
+ rdf:about="">
103
+ <dc:format>image/svg+xml</dc:format>
104
+ <dc:type
105
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
106
+ <dc:title></dc:title>
107
+ </cc:Work>
108
+ </rdf:RDF>
109
+ </metadata>
110
+ <g
111
+ id="layer1">
112
+ <path
113
+ id="rect1363"
114
+ d="m25.702 4.6056 0.968 1.7107h-11.836l0.839-1.7107h10.029zm3.394 2.1159v14.944h-22.988l-2e-4 -14.944 22.988 2e-4z"
115
+ fill="#e4ff07"
116
+ filter="url(#filter3784)"
117
+ stroke="#000"
118
+ stroke-width=".2" />
119
+ <g
120
+ id="g3018"
121
+ transform="translate(-3.2839 -1.4449)"
122
+ stroke="#000">
123
+ <path
124
+ id="path3005"
125
+ transform="translate(1.1822 -3.2839)"
126
+ d="m19.309 20.623c0 3.4097-2.47 6.1737-5.5169 6.1737s-5.5169-2.7641-5.5169-6.1737 2.47-6.1737 5.5169-6.1737c3.0441 0 5.5129 2.7591 5.5169 6.1655"
127
+ fill="url(#radialGradient3022)"
128
+ stroke-width="2" />
129
+ <path
130
+ id="path3775"
131
+ d="m11.531 22.221-6.7744 7.0496z"
132
+ fill="url(#linearGradient3024)"
133
+ filter="url(#filter3815)"
134
+ stroke-width="2.5" />
135
+ </g>
136
+ </g>
137
+ </svg>
@@ -15,10 +15,7 @@
15
15
  version="1.1"
16
16
  id="SVGRoot"
17
17
  sodipodi:docname="nxtomomill.svg"
18
- inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"
19
- inkscape:export-filename="/media/payno/830add5c-f5d7-4db2-875e-03be4f0a67f0/dev/tomography/tomwer/orangecontrib/tomwer/widgets/control/icons/nxtomomill.png"
20
- inkscape:export-xdpi="59.900002"
21
- inkscape:export-ydpi="59.900002">
18
+ inkscape:version="0.92.4 (5da689c313, 2019-01-14)">
22
19
  <defs
23
20
  id="defs815">
24
21
  <filter
@@ -44,14 +41,14 @@
44
41
  inkscape:pageopacity="0.0"
45
42
  inkscape:pageshadow="2"
46
43
  inkscape:zoom="7.7781746"
47
- inkscape:cx="3.527853"
48
- inkscape:cy="25.109756"
44
+ inkscape:cx="26.605247"
45
+ inkscape:cy="25.624015"
49
46
  inkscape:document-units="px"
50
47
  inkscape:current-layer="layer1"
51
48
  showgrid="false"
52
- inkscape:window-width="1848"
49
+ inkscape:window-width="1920"
53
50
  inkscape:window-height="1136"
54
- inkscape:window-x="72"
51
+ inkscape:window-x="0"
55
52
  inkscape:window-y="27"
56
53
  inkscape:window-maximized="1"
57
54
  inkscape:grid-bbox="true" />
@@ -29,21 +29,21 @@ __authors__ = [
29
29
  __license__ = "MIT"
30
30
  __date__ = "28/09/2020"
31
31
 
32
- from silx.gui import qt
33
- from orangewidget import widget, gui
32
+ import os
33
+ import threading
34
+ import uuid
35
+
36
+ from orangewidget import gui, widget
37
+ from orangewidget.settings import Setting
34
38
  from orangewidget.widget import Output
35
- from tomwer.gui.debugtools.datasetgenerator import DatasetGeneratorDialog
39
+ from silx.gui import qt
40
+ from silx.gui.utils import concurrent
41
+
42
+ from tomwer.core.scan.blissscan import BlissScan
36
43
  from tomwer.core.scan.edfscan import EDFTomoScan
37
44
  from tomwer.core.scan.hdf5scan import HDF5TomoScan
38
- from tomwer.core.scan.blissscan import BlissScan
39
- from tomwer.core.utils.scanutils import MockEDF
40
- from tomwer.core.utils.scanutils import MockHDF5
41
- from tomwer.core.utils.scanutils import MockBlissAcquisition
42
- from orangewidget.settings import Setting
43
- from silx.gui.utils import concurrent
44
- import threading
45
- import os
46
- import uuid
45
+ from tomwer.core.utils.scanutils import MockBlissAcquisition, MockEDF, MockHDF5
46
+ from tomwer.gui.debugtools.datasetgenerator import DatasetGeneratorDialog
47
47
 
48
48
 
49
49
  class DatasetGeneratorOW(widget.OWBaseWidget, openclass=True):
@@ -173,7 +173,5 @@ class _DatasetGeneratorThread(threading.Thread):
173
173
  )
174
174
  scan = mock.create_bliss_scan()
175
175
  else:
176
- raise ValueError(
177
- "type to generate {} not recognized".format(self.type_to_generate)
178
- )
176
+ raise ValueError(f"type to generate {self.type_to_generate} not recognized")
179
177
  concurrent.submitToQtMainThread(self.callback, scan)
@@ -29,10 +29,11 @@ __authors__ = [
29
29
  __license__ = "MIT"
30
30
  __date__ = "30/09/2020"
31
31
 
32
- from orangewidget import widget, gui
33
- from tomwer.gui.debugtools.objectinspector import ObjectInspector
32
+ from orangewidget import gui, widget
34
33
  from orangewidget.widget import Input
35
34
 
35
+ from tomwer.gui.debugtools.objectinspector import ObjectInspector
36
+
36
37
 
37
38
  class ObjectInspectorOW(widget.OWBaseWidget, openclass=True):
38
39
  """
@@ -29,20 +29,23 @@ __license__ = "MIT"
29
29
  __date__ = "02/11/2020"
30
30
 
31
31
 
32
+ import logging
32
33
  from typing import Optional
33
- from silx.io.url import DataUrl
34
- from orangewidget.widget import Input, Output
34
+
35
35
  from orangewidget import gui
36
- from tomwer.gui.edit.dkrfpatch import DarkRefPatchWidget
36
+ from orangewidget.settings import Setting
37
+ from orangewidget.widget import Input, Output
38
+ from silx.io.url import DataUrl
39
+
40
+ import tomwer.core.process.edit.darkflatpatch
37
41
  from tomwer.core.scan.hdf5scan import HDF5TomoScan
38
42
  from tomwer.core.scan.scanbase import TomwerScanBase
43
+ from tomwer.gui.edit.dkrfpatch import DarkRefPatchWidget
39
44
  from tomwer.synctools.stacks.edit.darkflatpatch import DarkFlatPatchProcessStack
40
- from orangewidget.settings import Setting
45
+ from tomwer.utils import docstring
46
+
41
47
  from ...orange.managedprocess import SuperviseOW
42
48
  from ..utils import WidgetLongProcessing
43
- from tomwer.utils import docstring
44
- import tomwer.core.process.edit.darkflatpatch
45
- import logging
46
49
 
47
50
  _logger = logging.getLogger(__name__)
48
51
 
@@ -29,17 +29,20 @@ __license__ = "MIT"
29
29
  __date__ = "28/10/2020"
30
30
 
31
31
 
32
- from orangewidget.widget import Input, Output
32
+ import logging
33
+
33
34
  from orangewidget import gui
34
- from tomwer.core.scan.scanbase import TomwerScanBase
35
+ from orangewidget.widget import Input, Output
36
+
37
+ import tomwer.core.process.edit.imagekeyeditor
35
38
  from tomwer.core.scan.hdf5scan import HDF5TomoScan
39
+ from tomwer.core.scan.scanbase import TomwerScanBase
36
40
  from tomwer.gui.edit.imagekeyeditor import ImageKeyDialog
37
41
  from tomwer.synctools.stacks.edit.imagekeyeditor import ImageKeyEditorProcessStack
38
- import tomwer.core.process.edit.imagekeyeditor
39
42
  from tomwer.utils import docstring
40
- from ..utils import WidgetLongProcessing
43
+
41
44
  from ...orange.managedprocess import SuperviseOW
42
- import logging
45
+ from ..utils import WidgetLongProcessing
43
46
 
44
47
  _logger = logging.getLogger(__name__)
45
48
 
@@ -29,11 +29,14 @@ __license__ = "MIT"
29
29
  __date__ = "28/10/2020"
30
30
 
31
31
 
32
+ import logging
33
+
32
34
  from orangewidget import gui
33
- from tomwer.gui.edit.imagekeyeditor import ImageKeyUpgraderWidget
35
+
34
36
  import tomwer.core.process.edit.imagekeyeditor
37
+ from tomwer.gui.edit.imagekeyeditor import ImageKeyUpgraderWidget
38
+
35
39
  from ...orange.managedprocess import TomwerWithStackStack
36
- import logging
37
40
 
38
41
  _logger = logging.getLogger(__name__)
39
42
 
@@ -1,11 +1,14 @@
1
+ import logging
2
+
1
3
  from orangewidget import gui
2
- from tomwer.gui.edit.nxtomoeditor import NXtomoEditorDialog as _NXtomoEditorDialog
3
4
  from orangewidget.widget import Input, Output
5
+ from silx.gui import qt
6
+
4
7
  from tomwer.core.scan.hdf5scan import HDF5TomoScan
5
8
  from tomwer.core.scan.scanbase import TomwerScanBase
6
- from silx.gui import qt
9
+ from tomwer.gui.edit.nxtomoeditor import NXtomoEditorDialog as _NXtomoEditorDialog
10
+
7
11
  from ...orange.managedprocess import SuperviseOW
8
- import logging
9
12
 
10
13
  _logger = logging.getLogger(__name__)
11
14
 
@@ -27,19 +27,21 @@ __license__ = "MIT"
27
27
  __date__ = "10/12/2021"
28
28
 
29
29
 
30
- import os
31
30
  import gc
32
- import h5py
33
- import pytest
31
+ import os
34
32
  import pickle
35
33
  import tempfile
34
+
35
+ import h5py
36
36
  import numpy
37
+ import pytest
38
+ from orangecanvas.scheme.readwrite import literal_dumps
37
39
  from silx.gui import qt
38
- from silx.io.url import DataUrl
39
- from tomwer.tests.utils import skip_gui_test
40
40
  from silx.gui.utils.testutils import TestCaseQt
41
- from orangecanvas.scheme.readwrite import literal_dumps
41
+ from silx.io.url import DataUrl
42
+
42
43
  from orangecontrib.tomwer.widgets.edit.DarkFlatPatchOW import DarkFlatPatchOW
44
+ from tomwer.tests.utils import skip_gui_test
43
45
 
44
46
 
45
47
  @pytest.mark.skipif(skip_gui_test(), reason="skip gui test")
@@ -28,11 +28,13 @@ __date__ = "10/12/2021"
28
28
 
29
29
 
30
30
  import gc
31
+
31
32
  import pytest
32
33
  from silx.gui import qt
33
- from tomwer.tests.utils import skip_gui_test
34
34
  from silx.gui.utils.testutils import TestCaseQt
35
+
35
36
  from orangecontrib.tomwer.widgets.edit.ImageKeyEditorOW import ImageKeyEditorOW
37
+ from tomwer.tests.utils import skip_gui_test
36
38
 
37
39
 
38
40
  @pytest.mark.skipif(skip_gui_test(), reason="skip gui test")
@@ -28,11 +28,13 @@ __date__ = "10/12/2021"
28
28
 
29
29
 
30
30
  import gc
31
+
31
32
  import pytest
32
33
  from silx.gui import qt
33
- from tomwer.tests.utils import skip_gui_test
34
34
  from silx.gui.utils.testutils import TestCaseQt
35
+
35
36
  from orangecontrib.tomwer.widgets.edit.ImageKeyUpgraderOW import ImageKeyUpgraderOW
37
+ from tomwer.tests.utils import skip_gui_test
36
38
 
37
39
 
38
40
  @pytest.mark.skipif(skip_gui_test(), reason="skip gui test")