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,22 +27,24 @@ __license__ = "MIT"
27
27
  __date__ = "08/06/2021"
28
28
 
29
29
 
30
- from processview.core.manager import ProcessManager
31
- from tomwer.synctools.sadeltabeta import QSADeltaBetaParams
32
- from tomwer.synctools.axis import QAxisRP
33
- from tomwer.core.scan.scanbase import TomwerScanBase
30
+ import functools
31
+ import logging
32
+
33
+ from processview.core.manager import DatasetState, ProcessManager
34
+ from processview.core.superviseprocess import SuperviseProcess
35
+ from silx.gui import qt
36
+
34
37
  from tomwer.core.process.reconstruction.sadeltabeta.sadeltabeta import (
35
38
  SADeltaBetaProcess,
36
39
  )
40
+ from tomwer.core.scan.scanbase import TomwerScanBase
37
41
  from tomwer.core.settings import get_lbsram_path, isOnLbsram
38
42
  from tomwer.core.utils import isLowOnMemory
39
- from processview.core.manager import DatasetState
40
- from ..processingstack import FIFO, ProcessingThread
41
- from processview.core.superviseprocess import SuperviseProcess
42
43
  from tomwer.io.utils import format_stderr_stdout
43
- from silx.gui import qt
44
- import logging
45
- import functools
44
+ from tomwer.synctools.axis import QAxisRP
45
+ from tomwer.synctools.sadeltabeta import QSADeltaBetaParams
46
+
47
+ from ..processingstack import FIFO, ProcessingThread
46
48
 
47
49
  _logger = logging.getLogger(__name__)
48
50
 
@@ -70,7 +72,7 @@ class SADeltaBetaProcessStack(FIFO, qt.QObject):
70
72
  process=self,
71
73
  state=DatasetState.ON_GOING,
72
74
  )
73
- _logger.processStarted("start sa-delta-beta {}" "".format(str(data)))
75
+ _logger.processStarted(f"start sa-delta-beta {data}")
74
76
  assert isinstance(data, TomwerScanBase)
75
77
  if data.axis_params is None:
76
78
  data.axis_params = QAxisRP()
@@ -80,7 +82,7 @@ class SADeltaBetaProcessStack(FIFO, qt.QObject):
80
82
  sa_delta_beta_params = QSADeltaBetaParams.from_dict(configuration)
81
83
  if isOnLbsram(data) and isLowOnMemory(get_lbsram_path()) is True:
82
84
  # if computer is running into low memory on lbsram skip it
83
- mess = "low memory, skip sa-delta-beta-axis calculation", data.path
85
+ mess = f"low memory, skip sa-delta-beta-axis calculation {data.path}"
84
86
  ProcessManager().notify_dataset_state(
85
87
  dataset=data, process=self._process_id, state=DatasetState.SKIPPED
86
88
  )
@@ -176,10 +178,10 @@ class _ProcessingThread(ProcessingThread, SuperviseProcess):
176
178
  sa_delta_beta.run()
177
179
  except Exception as e:
178
180
  _logger.error(str(e))
179
- mess = "SADeltaBeta computation for {} failed.".format(str(self._scan))
181
+ mess = f"SADeltaBeta computation for {self._scan} failed."
180
182
  state = DatasetState.FAILED
181
183
  else:
182
- mess = "SADeltaBeta computation for {} succeed.".format(str(self._scan))
184
+ mess = f"SADeltaBeta computation for {self._scan} succeed."
183
185
  state = DatasetState.WAIT_USER_VALIDATION
184
186
  self.db_value = self._scan.sa_delta_beta_params.autofocus
185
187
 
@@ -31,14 +31,15 @@ __date__ = "11/12/2017"
31
31
  import os
32
32
  import shutil
33
33
  import tempfile
34
+
34
35
  import fabio
35
36
  import numpy
36
37
  from silx.gui.utils.testutils import TestCaseQt
37
- from tomwer.core.utils.scanutils import MockEDF
38
+
38
39
  from tomwer.core.process.reconstruction.darkref.darkrefs import DarkRefs
39
- from tomwer.core.process.reconstruction.darkref.params import DKRFRP
40
- from tomwer.core.process.reconstruction.darkref.params import ReduceMethod
40
+ from tomwer.core.process.reconstruction.darkref.params import DKRFRP, ReduceMethod
41
41
  from tomwer.core.scan.scanfactory import ScanFactory
42
+ from tomwer.core.utils.scanutils import MockEDF
42
43
  from tomwer.tests.utils import UtilsTest
43
44
 
44
45
 
@@ -28,22 +28,24 @@ __license__ = "MIT"
28
28
  __date__ = "24/01/2017"
29
29
 
30
30
 
31
- from tomwer.synctools.datatransfert import ScanTransfer
31
+ import logging
32
+ import os
33
+ import shutil
34
+ import tempfile
35
+ import unittest
36
+ from glob import glob
37
+
38
+ import pytest
39
+ from nxtomomill.converter import from_h5_to_nx
40
+ from nxtomomill.io.config.hdf5config import TomoHDF5Config
41
+ from silx.gui.utils.testutils import TestCaseQt
42
+
43
+ from tomwer.core.scan.hdf5scan import HDF5TomoScan
32
44
  from tomwer.core.scan.scanfactory import ScanFactory
33
45
  from tomwer.core.utils import rebaseParFile
34
46
  from tomwer.core.utils.scanutils import MockEDF
47
+ from tomwer.synctools.datatransfert import ScanTransfer
35
48
  from tomwer.tests.utils import UtilsTest
36
- from tomwer.core.scan.hdf5scan import HDF5TomoScan
37
- from nxtomomill.converter import from_h5_to_nx
38
- from nxtomomill.io.config.hdf5config import TomoHDF5Config
39
- from silx.gui.utils.testutils import TestCaseQt
40
- from glob import glob
41
- import unittest
42
- import os
43
- import tempfile
44
- import shutil
45
- import logging
46
- import pytest
47
49
 
48
50
  try:
49
51
  from tomwer.synctools.rsyncmanager import RSyncManager
@@ -28,18 +28,19 @@ __license__ = "MIT"
28
28
  __date__ = "30/09/2019"
29
29
 
30
30
 
31
- import unittest
32
- import tempfile
31
+ import glob
33
32
  import os
34
33
  import shutil
35
- import glob
34
+ import tempfile
35
+ import unittest
36
36
  from collections import namedtuple
37
- from tomwer.tests.utils import UtilsTest
38
- from tomwer.synctools.utils.scanstages import ScanStages
39
- from tomwer.core.scan.scanfactory import ScanFactory
40
- from tomwer.tests.utils import skip_gui_test
37
+
41
38
  import pytest
42
39
 
40
+ from tomwer.core.scan.scanfactory import ScanFactory
41
+ from tomwer.synctools.utils.scanstages import ScanStages
42
+ from tomwer.tests.utils import UtilsTest, skip_gui_test
43
+
43
44
  if skip_gui_test() is False:
44
45
  from tomwer.synctools.rsyncmanager import RSyncManager
45
46
 
@@ -30,14 +30,16 @@ __license__ = "MIT"
30
30
  __date__ = "09/01/2020"
31
31
 
32
32
 
33
- import shutil
34
33
  import glob
35
- from tomwer.core.scan.scanbase import TomwerScanBase
34
+ import os
35
+ import shutil
36
+
37
+ from silx.io.url import DataUrl
38
+ from silx.utils.enum import Enum as _Enum
39
+
36
40
  from tomwer.core.scan.edfscan import EDFTomoScan
37
41
  from tomwer.core.scan.hdf5scan import HDF5TomoScan
38
- from silx.utils.enum import Enum as _Enum
39
- from silx.io.url import DataUrl
40
- import os
42
+ from tomwer.core.scan.scanbase import TomwerScanBase
41
43
  from tomwer.synctools.rsyncmanager import RSyncManager
42
44
 
43
45
 
tomwer/tests/conftest.py CHANGED
@@ -1,8 +1,8 @@
1
- import pytest
2
- from ewoksorange.bindings.qtapp import qtapp_context
3
- from ewoksorange.bindings.qtapp import get_all_qtwidgets
4
- import logging
5
1
  import gc
2
+ import logging
3
+
4
+ import pytest
5
+ from ewoksorange.bindings.qtapp import get_all_qtwidgets, qtapp_context
6
6
 
7
7
  _logger = logging.getLogger(__name__)
8
8
 
@@ -33,10 +33,11 @@ __copyright__ = "European Synchrotron Radiation Facility, Grenoble, France"
33
33
  __date__ = "21/02/2018"
34
34
 
35
35
 
36
- import sys
37
- import unittest
38
36
  import logging
39
37
  import subprocess
38
+ import sys
39
+ import unittest
40
+
40
41
  from tomwer.tests.utils.utilstest import UtilsTest
41
42
 
42
43
  _logger = logging.getLogger(__name__)
@@ -33,11 +33,12 @@ __license__ = "MIT"
33
33
  __copyright__ = "European Synchrotron Radiation Facility, Grenoble, France"
34
34
  __date__ = "07/02/2017"
35
35
 
36
+ import fileinput
37
+ import logging
36
38
  import os
37
39
  import shutil
38
- import fileinput
40
+
39
41
  from tomwer.core.utils import DownloadDataset, url_base
40
- import logging
41
42
 
42
43
  logger = logging.getLogger(__name__)
43
44
  logger.setLevel(logging.DEBUG)
@@ -186,8 +187,8 @@ class UtilsTest(object):
186
187
  if "TOMWER_ADDITIONAL_TESTS_DIR" not in os.environ:
187
188
  return False
188
189
  else:
189
- dir = os.path.join(os.environ["TOMWER_ADDITIONAL_TESTS_DIR"], dataset)
190
- return os.path.isdir(dir)
190
+ dir_ = os.path.join(os.environ["TOMWER_ADDITIONAL_TESTS_DIR"], dataset)
191
+ return os.path.isdir(dir_)
191
192
 
192
193
  @classmethod
193
194
  def getInternalTestDir(cls, dataset):
@@ -30,17 +30,16 @@ __license__ = "MIT"
30
30
  __copyright__ = "European Synchrotron Radiation Facility, Grenoble, France"
31
31
  __date__ = "24/01/2018"
32
32
 
33
+ import getpass
34
+ import logging
33
35
  import os
36
+ import shutil
34
37
  import sys
38
+ import tempfile
35
39
  import threading
36
40
  import unittest
37
- import logging
38
- import shutil
39
- import tempfile
40
- import getpass
41
-
42
-
43
41
  from argparse import ArgumentParser
42
+
44
43
  from silx.resources import ExternalResources
45
44
 
46
45
  PACKAGE = "pyFAI"
@@ -1,12 +1,14 @@
1
1
  #!/usr/bin/env python
2
2
  # -*- coding: utf-8 -*-
3
3
 
4
- import numpy as np
5
- from math import pi
6
4
  from bisect import bisect
7
- from ..utils import generate_powers
5
+ from math import pi
6
+
7
+ import numpy as np
8
8
  from silx.utils.enum import Enum as _Enum
9
9
 
10
+ from ..utils import generate_powers
11
+
10
12
 
11
13
  def lmicron_to_db(Lmicron, energy, distance):
12
14
  """
@@ -359,9 +361,9 @@ class PaganinPhaseRetrieval(object):
359
361
  padding_method = padding_method or self.padding
360
362
  padding_method = PaddingMode.from_value(padding_method)
361
363
  if padding_method not in self.padding_methods:
364
+ valid_padding_modes = list(self.padding_methods.keys())
362
365
  raise ValueError(
363
- "Unknown padding method %s. Available are: %s"
364
- % (padding_method, str(list(self.padding_methods.keys())))
366
+ f"Unknown padding method {padding_method}. Available are: {valid_padding_modes}"
365
367
  )
366
368
  pad_func = self.padding_methods[padding_method]
367
369
  pad_func(data)
@@ -1,7 +1,8 @@
1
1
  import os
2
- import numpy as np
3
- from time import time
4
2
  from itertools import product
3
+ from time import time
4
+
5
+ import numpy as np
5
6
 
6
7
  _warnings = {}
7
8
 
tomwer/utils.py CHANGED
@@ -22,6 +22,9 @@
22
22
  # THE SOFTWARE.
23
23
  #
24
24
  # ###########################################################################*/
25
+ """
26
+ some project general utils functions
27
+ """
25
28
 
26
29
  __authors__ = ["H. Payno", "T. Vincent"]
27
30
  __license__ = "MIT"
@@ -30,19 +33,16 @@ __date__ = "04/01/2018"
30
33
 
31
34
  import argparse
32
35
  import functools
36
+ import importlib
37
+ import logging
38
+ import sys
39
+
33
40
  from silx.utils.launcher import Launcher as _Launcher
34
41
  from silx.utils.launcher import LauncherCommand as _LauncherCommand
35
- import sys
36
- import logging
37
- import importlib
38
42
 
39
43
  _logger = logging.getLogger(__file__)
40
44
 
41
45
 
42
- def addHTMLLine(txt):
43
- return "<li>" + txt + "</li>"
44
-
45
-
46
46
  def _docstring(dest, origin):
47
47
  """Implementation of docstring decorator.
48
48
 
@@ -202,12 +202,12 @@ class Launcher(_Launcher):
202
202
  return 0
203
203
 
204
204
  if command_name not in self._commands:
205
- print("Unknown command: %s", command_name)
205
+ print(f"Unknown command: {command_name}")
206
206
  self.print_help()
207
207
  return -1
208
208
 
209
209
  command = self._commands[command_name]
210
- prog = "%s %s" % (self.prog, command.name)
210
+ prog = f"{self.prog} {command.name}"
211
211
  return command.execute([prog, "--help"])
212
212
 
213
213
  def execute(self, argv=None):
@@ -228,7 +228,7 @@ class Launcher(_Launcher):
228
228
  command_name = argv[1]
229
229
 
230
230
  if command_name == "--version":
231
- print("%s version %s" % (self.prog, str(self.version)))
231
+ print(f"{self.prog} version {str(self.version)}")
232
232
  return 0
233
233
 
234
234
  if command_name in ["--help", "-h"]:
@@ -239,10 +239,10 @@ class Launcher(_Launcher):
239
239
  else:
240
240
  command_name = argv[2]
241
241
  command_argv = argv[2:] + ["--help"]
242
- command_argv[0] = "%s %s" % (self.prog, command_argv[0])
242
+ command_argv[0] = f"{self.prog} {command_argv[0]}"
243
243
  else:
244
244
  command_argv = argv[1:]
245
- command_argv[0] = "%s %s" % (self.prog, command_argv[0])
245
+ command_argv[0] = f"{self.prog} {command_argv[0]}"
246
246
 
247
247
  if command_name not in self._commands:
248
248
  print("Unknown command: %s" % command_name)
tomwer/version.py CHANGED
@@ -76,10 +76,10 @@ RELEASE_LEVEL_VALUE = {
76
76
  }
77
77
 
78
78
  MAJOR = 1
79
- MINOR = 1
80
- MICRO = 1
81
- RELEV = "final" # <16
82
- SERIAL = 7 # <16
79
+ MINOR = 2
80
+ MICRO = 0
81
+ RELEV = "alpha" # <16
82
+ SERIAL = 0 # <16
83
83
 
84
84
  date = __date__
85
85
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: tomwer
3
- Version: 1.1.1
3
+ Version: 1.2.0a0
4
4
  Summary: "tomography workflow tools"
5
5
  Home-page: https://gitlab.esrf.fr/tomotools/tomwer
6
6
  Author: data analysis unit
@@ -28,7 +28,7 @@ Requires-Dist: tomoscan (>=1.1.2)
28
28
  Requires-Dist: nxtomomill (>=0.12.2)
29
29
  Requires-Dist: processview (>=1.1)
30
30
  Requires-Dist: ewoks (>=0.1.1)
31
- Requires-Dist: sluurp (>=0.1)
31
+ Requires-Dist: sluurp (>=0.2.1)
32
32
  Requires-Dist: packaging
33
33
  Provides-Extra: _dev_spec
34
34
  Requires-Dist: black ; extra == '_dev_spec'