pymodaq 4.4.7__py3-none-any.whl → 5.0.1__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.

Potentially problematic release.


This version of pymodaq might be problematic. Click here for more details.

Files changed (415) hide show
  1. pymodaq/__init__.py +57 -91
  2. pymodaq/control_modules/daq_move.py +64 -46
  3. pymodaq/control_modules/daq_move_ui.py +34 -12
  4. pymodaq/control_modules/daq_viewer.py +55 -30
  5. pymodaq/control_modules/daq_viewer_ui.py +6 -6
  6. pymodaq/control_modules/mocks.py +1 -1
  7. pymodaq/control_modules/move_utility_classes.py +51 -43
  8. pymodaq/control_modules/utils.py +43 -20
  9. pymodaq/control_modules/viewer_utility_classes.py +54 -18
  10. pymodaq/daq_utils/daq_utils.py +6 -0
  11. pymodaq/dashboard.py +639 -323
  12. pymodaq/examples/function_plotter.py +13 -12
  13. pymodaq/examples/tcp_client.py +1 -1
  14. pymodaq/extensions/__init__.py +1 -1
  15. pymodaq/extensions/bayesian/bayesian_optimisation.py +44 -32
  16. pymodaq/extensions/bayesian/utils.py +10 -10
  17. pymodaq/extensions/console.py +7 -6
  18. pymodaq/extensions/daq_logger/__init__.py +1 -0
  19. pymodaq/extensions/{daq_logger.py → daq_logger/daq_logger.py} +30 -30
  20. pymodaq/{utils/db/db_logger → extensions/daq_logger/db}/db_logger.py +16 -15
  21. pymodaq/{utils/db/db_logger → extensions/daq_logger/db}/db_logger_models.py +2 -0
  22. pymodaq/{utils/h5modules → extensions/daq_logger}/h5logging.py +7 -8
  23. pymodaq/extensions/daq_scan.py +42 -34
  24. pymodaq/extensions/daq_scan_ui.py +18 -18
  25. pymodaq/extensions/h5browser.py +2 -3
  26. pymodaq/extensions/pid/__init__.py +4 -2
  27. pymodaq/extensions/pid/daq_move_PID.py +3 -3
  28. pymodaq/extensions/pid/pid_controller.py +59 -50
  29. pymodaq/extensions/pid/utils.py +10 -5
  30. pymodaq/extensions/utils.py +33 -3
  31. pymodaq/post_treatment/load_and_plot.py +10 -7
  32. pymodaq/resources/preset_default.xml +1 -1
  33. pymodaq/updater.py +107 -0
  34. pymodaq/utils/array_manipulation.py +4 -384
  35. pymodaq/utils/calibration_camera.py +12 -9
  36. pymodaq/utils/chrono_timer.py +11 -10
  37. pymodaq/utils/config.py +3 -458
  38. pymodaq/utils/daq_utils.py +9 -715
  39. pymodaq/utils/data.py +17 -2959
  40. pymodaq/utils/enums.py +4 -74
  41. pymodaq/utils/exceptions.py +0 -4
  42. pymodaq/utils/gui_utils/__init__.py +8 -8
  43. pymodaq/utils/gui_utils/loader_utils.py +26 -1
  44. pymodaq/utils/gui_utils/utils.py +8 -162
  45. pymodaq/utils/gui_utils/widgets/lcd.py +6 -109
  46. pymodaq/utils/h5modules/__init__.py +0 -4
  47. pymodaq/utils/h5modules/module_saving.py +9 -8
  48. pymodaq/utils/leco/__init__.py +2 -2
  49. pymodaq/utils/leco/daq_move_LECODirector.py +3 -6
  50. pymodaq/utils/leco/daq_xDviewer_LECODirector.py +5 -5
  51. pymodaq/utils/leco/director_utils.py +2 -2
  52. pymodaq/utils/leco/leco_director.py +3 -3
  53. pymodaq/utils/leco/pymodaq_listener.py +4 -3
  54. pymodaq/utils/leco/utils.py +11 -9
  55. pymodaq/utils/logger.py +4 -76
  56. pymodaq/utils/managers/batchscan_manager.py +16 -19
  57. pymodaq/utils/managers/modules_manager.py +30 -17
  58. pymodaq/utils/managers/overshoot_manager.py +48 -6
  59. pymodaq/utils/managers/preset_manager.py +39 -59
  60. pymodaq/utils/managers/preset_manager_utils.py +28 -22
  61. pymodaq/utils/managers/remote_manager.py +12 -10
  62. pymodaq/utils/math_utils.py +4 -582
  63. pymodaq/utils/messenger.py +4 -64
  64. pymodaq/utils/parameter/__init__.py +6 -9
  65. pymodaq/utils/parameter/utils.py +4 -328
  66. pymodaq/utils/scanner/scan_config.py +1 -1
  67. pymodaq/utils/scanner/scan_factory.py +16 -12
  68. pymodaq/utils/{plotting → scanner}/scan_selector.py +19 -20
  69. pymodaq/utils/scanner/scanner.py +10 -8
  70. pymodaq/utils/scanner/scanners/_1d_scanners.py +8 -5
  71. pymodaq/utils/scanner/scanners/_2d_scanners.py +5 -5
  72. pymodaq/utils/scanner/scanners/sequential.py +8 -8
  73. pymodaq/utils/scanner/scanners/tabular.py +9 -9
  74. pymodaq/utils/scanner/utils.py +6 -4
  75. pymodaq/utils/svg/svg_viewer2D.py +3 -4
  76. pymodaq/utils/tcp_ip/mysocket.py +4 -110
  77. pymodaq/utils/tcp_ip/serializer.py +4 -801
  78. pymodaq/utils/tcp_ip/tcp_server_client.py +15 -13
  79. pymodaq-5.0.1.dist-info/METADATA +242 -0
  80. pymodaq-5.0.1.dist-info/RECORD +122 -0
  81. {pymodaq-4.4.7.dist-info → pymodaq-5.0.1.dist-info}/WHEEL +1 -1
  82. {pymodaq-4.4.7.dist-info → pymodaq-5.0.1.dist-info}/entry_points.txt +1 -0
  83. pymodaq/examples/custom_app.py +0 -258
  84. pymodaq/examples/custom_viewer.py +0 -112
  85. pymodaq/examples/parameter_ex.py +0 -138
  86. pymodaq/examples/preset_MockCamera.xml +0 -1
  87. pymodaq/post_treatment/daq_measurement/daq_measurement_GUI.py +0 -142
  88. pymodaq/post_treatment/daq_measurement/daq_measurement_GUI.ui +0 -232
  89. pymodaq/post_treatment/daq_measurement/daq_measurement_main.py +0 -391
  90. pymodaq/post_treatment/daq_measurement/process_from_QtDesigner_DAQ_Measurement_GUI.bat +0 -2
  91. pymodaq/post_treatment/process_to_scalar.py +0 -263
  92. pymodaq/resources/QtDesigner_Ressources/Icon_Library/1d.png +0 -0
  93. pymodaq/resources/QtDesigner_Ressources/Icon_Library/2d.png +0 -0
  94. pymodaq/resources/QtDesigner_Ressources/Icon_Library/3d.png +0 -0
  95. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Add2.png +0 -0
  96. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Add_Step.png +0 -0
  97. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Approve.png +0 -0
  98. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Approve_All.png +0 -0
  99. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Browse_Dir_Path.png +0 -0
  100. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Calculator.png +0 -0
  101. pymodaq/resources/QtDesigner_Ressources/Icon_Library/ChnGroup.png +0 -0
  102. pymodaq/resources/QtDesigner_Ressources/Icon_Library/ChnNum.png +0 -0
  103. pymodaq/resources/QtDesigner_Ressources/Icon_Library/ChnText.png +0 -0
  104. pymodaq/resources/QtDesigner_Ressources/Icon_Library/ChnTime.png +0 -0
  105. pymodaq/resources/QtDesigner_Ressources/Icon_Library/ChnWave.png +0 -0
  106. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Close3.png +0 -0
  107. pymodaq/resources/QtDesigner_Ressources/Icon_Library/CollapseAll.png +0 -0
  108. pymodaq/resources/QtDesigner_Ressources/Icon_Library/CollapseAll_32.png +0 -0
  109. pymodaq/resources/QtDesigner_Ressources/Icon_Library/ColorPicker.png +0 -0
  110. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Contract.png +0 -0
  111. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Create.png +0 -0
  112. pymodaq/resources/QtDesigner_Ressources/Icon_Library/DeleteLayer.png +0 -0
  113. pymodaq/resources/QtDesigner_Ressources/Icon_Library/EditOpen.png +0 -0
  114. pymodaq/resources/QtDesigner_Ressources/Icon_Library/EditRedo.png +0 -0
  115. pymodaq/resources/QtDesigner_Ressources/Icon_Library/EditUndo.png +0 -0
  116. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Ellipse.png +0 -0
  117. pymodaq/resources/QtDesigner_Ressources/Icon_Library/EllipseFilled.png +0 -0
  118. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Error.png +0 -0
  119. pymodaq/resources/QtDesigner_Ressources/Icon_Library/ErrorMessage.png +0 -0
  120. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Error_16.png +0 -0
  121. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Exit.png +0 -0
  122. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Expand.png +0 -0
  123. pymodaq/resources/QtDesigner_Ressources/Icon_Library/ExpandAll.png +0 -0
  124. pymodaq/resources/QtDesigner_Ressources/Icon_Library/ExpandAll_32.png +0 -0
  125. pymodaq/resources/QtDesigner_Ressources/Icon_Library/FFT.png +0 -0
  126. pymodaq/resources/QtDesigner_Ressources/Icon_Library/HLM.ico +0 -0
  127. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Help.png +0 -0
  128. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Help_32.png +0 -0
  129. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Histogram.png +0 -0
  130. pymodaq/resources/QtDesigner_Ressources/Icon_Library/LUT_LookUpTable.png +0 -0
  131. pymodaq/resources/QtDesigner_Ressources/Icon_Library/MagnifyingGlass.png +0 -0
  132. pymodaq/resources/QtDesigner_Ressources/Icon_Library/MagnifyingGlass_24.png +0 -0
  133. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Marker.png +0 -0
  134. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Math.png +0 -0
  135. pymodaq/resources/QtDesigner_Ressources/Icon_Library/MeasurementStudio_32.png +0 -0
  136. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Move.png +0 -0
  137. pymodaq/resources/QtDesigner_Ressources/Icon_Library/MoveDown.png +0 -0
  138. pymodaq/resources/QtDesigner_Ressources/Icon_Library/MoveUp.png +0 -0
  139. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Multiply.png +0 -0
  140. pymodaq/resources/QtDesigner_Ressources/Icon_Library/NewFile.png +0 -0
  141. pymodaq/resources/QtDesigner_Ressources/Icon_Library/NewLayer.png +0 -0
  142. pymodaq/resources/QtDesigner_Ressources/Icon_Library/New_File.png +0 -0
  143. pymodaq/resources/QtDesigner_Ressources/Icon_Library/New_Folder.png +0 -0
  144. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Open.png +0 -0
  145. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Open_1D.png +0 -0
  146. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Open_2D.png +0 -0
  147. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Open_File.png +0 -0
  148. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Open_File_32.png +0 -0
  149. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Open_sim.png +0 -0
  150. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Options.png +0 -0
  151. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Oscilloscope.png +0 -0
  152. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Oscilloscope_16.png +0 -0
  153. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Pass.png +0 -0
  154. pymodaq/resources/QtDesigner_Ressources/Icon_Library/RGB.png +0 -0
  155. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Rectangle.png +0 -0
  156. pymodaq/resources/QtDesigner_Ressources/Icon_Library/RectangleFilled.png +0 -0
  157. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Redo.png +0 -0
  158. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Refresh.png +0 -0
  159. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Refresh2.png +0 -0
  160. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Refresh_32.png +0 -0
  161. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Region.png +0 -0
  162. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Rendezvous.png +0 -0
  163. pymodaq/resources/QtDesigner_Ressources/Icon_Library/SELECT.png +0 -0
  164. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Save.png +0 -0
  165. pymodaq/resources/QtDesigner_Ressources/Icon_Library/SaveAll.png +0 -0
  166. pymodaq/resources/QtDesigner_Ressources/Icon_Library/SaveAll_32.png +0 -0
  167. pymodaq/resources/QtDesigner_Ressources/Icon_Library/SaveAs.png +0 -0
  168. pymodaq/resources/QtDesigner_Ressources/Icon_Library/SaveAs_32.png +0 -0
  169. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Save_24.png +0 -0
  170. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Save_32.png +0 -0
  171. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Search.png +0 -0
  172. pymodaq/resources/QtDesigner_Ressources/Icon_Library/SelectPolygon.png +0 -0
  173. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Select_24.png +0 -0
  174. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Settings.png +0 -0
  175. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Snap&Save.png +0 -0
  176. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Snapshot.png +0 -0
  177. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Snapshot2.png +0 -0
  178. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Snapshot2_16.png +0 -0
  179. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Snapshot2_32.png +0 -0
  180. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Spreadsheet.png +0 -0
  181. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Statistics.png +0 -0
  182. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Statistics2.png +0 -0
  183. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Status.png +0 -0
  184. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Subtract.png +0 -0
  185. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Vision.png +0 -0
  186. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Volts.png +0 -0
  187. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Wait2.png +0 -0
  188. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Zoom_1_1.png +0 -0
  189. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Zoom_in.png +0 -0
  190. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Zoom_out.png +0 -0
  191. pymodaq/resources/QtDesigner_Ressources/Icon_Library/Zoom_to_Selection.png +0 -0
  192. pymodaq/resources/QtDesigner_Ressources/Icon_Library/abort.png +0 -0
  193. pymodaq/resources/QtDesigner_Ressources/Icon_Library/advanced2.png +0 -0
  194. pymodaq/resources/QtDesigner_Ressources/Icon_Library/algo.png +0 -0
  195. pymodaq/resources/QtDesigner_Ressources/Icon_Library/autoscale.png +0 -0
  196. pymodaq/resources/QtDesigner_Ressources/Icon_Library/b_icon.png +0 -0
  197. pymodaq/resources/QtDesigner_Ressources/Icon_Library/back.png +0 -0
  198. pymodaq/resources/QtDesigner_Ressources/Icon_Library/bg_icon.png +0 -0
  199. pymodaq/resources/QtDesigner_Ressources/Icon_Library/camera.png +0 -0
  200. pymodaq/resources/QtDesigner_Ressources/Icon_Library/camera_snap.png +0 -0
  201. pymodaq/resources/QtDesigner_Ressources/Icon_Library/cartesian.png +0 -0
  202. pymodaq/resources/QtDesigner_Ressources/Icon_Library/clear2.png +0 -0
  203. pymodaq/resources/QtDesigner_Ressources/Icon_Library/clear_ROI.png +0 -0
  204. pymodaq/resources/QtDesigner_Ressources/Icon_Library/close2.png +0 -0
  205. pymodaq/resources/QtDesigner_Ressources/Icon_Library/cluster2.png +0 -0
  206. pymodaq/resources/QtDesigner_Ressources/Icon_Library/color.png +0 -0
  207. pymodaq/resources/QtDesigner_Ressources/Icon_Library/color2.png +0 -0
  208. pymodaq/resources/QtDesigner_Ressources/Icon_Library/continuous.png +0 -0
  209. pymodaq/resources/QtDesigner_Ressources/Icon_Library/data.png +0 -0
  210. pymodaq/resources/QtDesigner_Ressources/Icon_Library/delay.png +0 -0
  211. pymodaq/resources/QtDesigner_Ressources/Icon_Library/download.png +0 -0
  212. pymodaq/resources/QtDesigner_Ressources/Icon_Library/download2.png +0 -0
  213. pymodaq/resources/QtDesigner_Ressources/Icon_Library/error2.png +0 -0
  214. pymodaq/resources/QtDesigner_Ressources/Icon_Library/ethernet.png +0 -0
  215. pymodaq/resources/QtDesigner_Ressources/Icon_Library/exit2.png +0 -0
  216. pymodaq/resources/QtDesigner_Ressources/Icon_Library/fan.png +0 -0
  217. pymodaq/resources/QtDesigner_Ressources/Icon_Library/filter2.png +0 -0
  218. pymodaq/resources/QtDesigner_Ressources/Icon_Library/g_icon.png +0 -0
  219. pymodaq/resources/QtDesigner_Ressources/Icon_Library/gear2.png +0 -0
  220. pymodaq/resources/QtDesigner_Ressources/Icon_Library/go_to.png +0 -0
  221. pymodaq/resources/QtDesigner_Ressources/Icon_Library/go_to_1.png +0 -0
  222. pymodaq/resources/QtDesigner_Ressources/Icon_Library/go_to_2.png +0 -0
  223. pymodaq/resources/QtDesigner_Ressources/Icon_Library/grab.png +0 -0
  224. pymodaq/resources/QtDesigner_Ressources/Icon_Library/graph.png +0 -0
  225. pymodaq/resources/QtDesigner_Ressources/Icon_Library/greenLight2.png +0 -0
  226. pymodaq/resources/QtDesigner_Ressources/Icon_Library/greenLight2_32.png +0 -0
  227. pymodaq/resources/QtDesigner_Ressources/Icon_Library/green_light.png +0 -0
  228. pymodaq/resources/QtDesigner_Ressources/Icon_Library/grey_icon.png +0 -0
  229. pymodaq/resources/QtDesigner_Ressources/Icon_Library/greyscale.png +0 -0
  230. pymodaq/resources/QtDesigner_Ressources/Icon_Library/help1.png +0 -0
  231. pymodaq/resources/QtDesigner_Ressources/Icon_Library/help1_32.png +0 -0
  232. pymodaq/resources/QtDesigner_Ressources/Icon_Library/home2.png +0 -0
  233. pymodaq/resources/QtDesigner_Ressources/Icon_Library/information2.png +0 -0
  234. pymodaq/resources/QtDesigner_Ressources/Icon_Library/ini.png +0 -0
  235. pymodaq/resources/QtDesigner_Ressources/Icon_Library/input.png +0 -0
  236. pymodaq/resources/QtDesigner_Ressources/Icon_Library/integrator.png +0 -0
  237. pymodaq/resources/QtDesigner_Ressources/Icon_Library/joystick.png +0 -0
  238. pymodaq/resources/QtDesigner_Ressources/Icon_Library/light_green.png +0 -0
  239. pymodaq/resources/QtDesigner_Ressources/Icon_Library/light_green_16.png +0 -0
  240. pymodaq/resources/QtDesigner_Ressources/Icon_Library/light_red.png +0 -0
  241. pymodaq/resources/QtDesigner_Ressources/Icon_Library/light_red_16.png +0 -0
  242. pymodaq/resources/QtDesigner_Ressources/Icon_Library/light_yellow.png +0 -0
  243. pymodaq/resources/QtDesigner_Ressources/Icon_Library/light_yellow_16.png +0 -0
  244. pymodaq/resources/QtDesigner_Ressources/Icon_Library/limiter.png +0 -0
  245. pymodaq/resources/QtDesigner_Ressources/Icon_Library/load_ROI.png +0 -0
  246. pymodaq/resources/QtDesigner_Ressources/Icon_Library/meshPlot.png +0 -0
  247. pymodaq/resources/QtDesigner_Ressources/Icon_Library/meter.png +0 -0
  248. pymodaq/resources/QtDesigner_Ressources/Icon_Library/meter2.png +0 -0
  249. pymodaq/resources/QtDesigner_Ressources/Icon_Library/meter_32.png +0 -0
  250. pymodaq/resources/QtDesigner_Ressources/Icon_Library/move_contour.png +0 -0
  251. pymodaq/resources/QtDesigner_Ressources/Icon_Library/move_straight_line.png +0 -0
  252. pymodaq/resources/QtDesigner_Ressources/Icon_Library/movie.png +0 -0
  253. pymodaq/resources/QtDesigner_Ressources/Icon_Library/multi_point.png +0 -0
  254. pymodaq/resources/QtDesigner_Ressources/Icon_Library/multiplexer.png +0 -0
  255. pymodaq/resources/QtDesigner_Ressources/Icon_Library/new.png +0 -0
  256. pymodaq/resources/QtDesigner_Ressources/Icon_Library/openArrow.png +0 -0
  257. pymodaq/resources/QtDesigner_Ressources/Icon_Library/openTree.png +0 -0
  258. pymodaq/resources/QtDesigner_Ressources/Icon_Library/oscilloscope2.png +0 -0
  259. pymodaq/resources/QtDesigner_Ressources/Icon_Library/oscilloscope3.png +0 -0
  260. pymodaq/resources/QtDesigner_Ressources/Icon_Library/overlay.png +0 -0
  261. pymodaq/resources/QtDesigner_Ressources/Icon_Library/pass2.png +0 -0
  262. pymodaq/resources/QtDesigner_Ressources/Icon_Library/pass2_16.png +0 -0
  263. pymodaq/resources/QtDesigner_Ressources/Icon_Library/pass_32.png +0 -0
  264. pymodaq/resources/QtDesigner_Ressources/Icon_Library/pause.png +0 -0
  265. pymodaq/resources/QtDesigner_Ressources/Icon_Library/permute.png +0 -0
  266. pymodaq/resources/QtDesigner_Ressources/Icon_Library/phase.png +0 -0
  267. pymodaq/resources/QtDesigner_Ressources/Icon_Library/play.png +0 -0
  268. pymodaq/resources/QtDesigner_Ressources/Icon_Library/polar.png +0 -0
  269. pymodaq/resources/QtDesigner_Ressources/Icon_Library/pole_zero.png +0 -0
  270. pymodaq/resources/QtDesigner_Ressources/Icon_Library/powerMeter.png +0 -0
  271. pymodaq/resources/QtDesigner_Ressources/Icon_Library/powerSwitch.png +0 -0
  272. pymodaq/resources/QtDesigner_Ressources/Icon_Library/powerSwitch_16.png +0 -0
  273. pymodaq/resources/QtDesigner_Ressources/Icon_Library/print2.png +0 -0
  274. pymodaq/resources/QtDesigner_Ressources/Icon_Library/print2_32.png +0 -0
  275. pymodaq/resources/QtDesigner_Ressources/Icon_Library/properties.png +0 -0
  276. pymodaq/resources/QtDesigner_Ressources/Icon_Library/r_icon.png +0 -0
  277. pymodaq/resources/QtDesigner_Ressources/Icon_Library/radiocontrolbutton.png +0 -0
  278. pymodaq/resources/QtDesigner_Ressources/Icon_Library/random.png +0 -0
  279. pymodaq/resources/QtDesigner_Ressources/Icon_Library/read2.png +0 -0
  280. pymodaq/resources/QtDesigner_Ressources/Icon_Library/red_light.png +0 -0
  281. pymodaq/resources/QtDesigner_Ressources/Icon_Library/remove.png +0 -0
  282. pymodaq/resources/QtDesigner_Ressources/Icon_Library/reset.png +0 -0
  283. pymodaq/resources/QtDesigner_Ressources/Icon_Library/rgb_icon.png +0 -0
  284. pymodaq/resources/QtDesigner_Ressources/Icon_Library/robot.png +0 -0
  285. pymodaq/resources/QtDesigner_Ressources/Icon_Library/rotation2.png +0 -0
  286. pymodaq/resources/QtDesigner_Ressources/Icon_Library/run2.png +0 -0
  287. pymodaq/resources/QtDesigner_Ressources/Icon_Library/run_all.png +0 -0
  288. pymodaq/resources/QtDesigner_Ressources/Icon_Library/saturation.png +0 -0
  289. pymodaq/resources/QtDesigner_Ressources/Icon_Library/saveTree.png +0 -0
  290. pymodaq/resources/QtDesigner_Ressources/Icon_Library/save_ROI.png +0 -0
  291. pymodaq/resources/QtDesigner_Ressources/Icon_Library/scale_horizontally.png +0 -0
  292. pymodaq/resources/QtDesigner_Ressources/Icon_Library/scale_vertically.png +0 -0
  293. pymodaq/resources/QtDesigner_Ressources/Icon_Library/search2.png +0 -0
  294. pymodaq/resources/QtDesigner_Ressources/Icon_Library/select2.png +0 -0
  295. pymodaq/resources/QtDesigner_Ressources/Icon_Library/select_all.png +0 -0
  296. pymodaq/resources/QtDesigner_Ressources/Icon_Library/select_all2.png +0 -0
  297. pymodaq/resources/QtDesigner_Ressources/Icon_Library/select_none.png +0 -0
  298. pymodaq/resources/QtDesigner_Ressources/Icon_Library/sequence.png +0 -0
  299. pymodaq/resources/QtDesigner_Ressources/Icon_Library/sequence2.png +0 -0
  300. pymodaq/resources/QtDesigner_Ressources/Icon_Library/snap.png +0 -0
  301. pymodaq/resources/QtDesigner_Ressources/Icon_Library/sort_ascend.png +0 -0
  302. pymodaq/resources/QtDesigner_Ressources/Icon_Library/spectrumAnalyzer.png +0 -0
  303. pymodaq/resources/QtDesigner_Ressources/Icon_Library/start.png +0 -0
  304. pymodaq/resources/QtDesigner_Ressources/Icon_Library/status_cancelled.png +0 -0
  305. pymodaq/resources/QtDesigner_Ressources/Icon_Library/stop.png +0 -0
  306. pymodaq/resources/QtDesigner_Ressources/Icon_Library/stop2.png +0 -0
  307. pymodaq/resources/QtDesigner_Ressources/Icon_Library/stop3.png +0 -0
  308. pymodaq/resources/QtDesigner_Ressources/Icon_Library/stop_all.png +0 -0
  309. pymodaq/resources/QtDesigner_Ressources/Icon_Library/sum.png +0 -0
  310. pymodaq/resources/QtDesigner_Ressources/Icon_Library/surfacePlot.png +0 -0
  311. pymodaq/resources/QtDesigner_Ressources/Icon_Library/target.png +0 -0
  312. pymodaq/resources/QtDesigner_Ressources/Icon_Library/tree.png +0 -0
  313. pymodaq/resources/QtDesigner_Ressources/Icon_Library/updateTree.png +0 -0
  314. pymodaq/resources/QtDesigner_Ressources/Icon_Library/utility2.png +0 -0
  315. pymodaq/resources/QtDesigner_Ressources/Icon_Library/utility_small.png +0 -0
  316. pymodaq/resources/QtDesigner_Ressources/Icon_Library/vector.png +0 -0
  317. pymodaq/resources/QtDesigner_Ressources/Icon_Library/verify.png +0 -0
  318. pymodaq/resources/QtDesigner_Ressources/Icon_Library/video.png +0 -0
  319. pymodaq/resources/QtDesigner_Ressources/Icon_Library/wait.png +0 -0
  320. pymodaq/resources/QtDesigner_Ressources/Icon_Library/waterfallPlot.png +0 -0
  321. pymodaq/resources/QtDesigner_Ressources/Icon_Library/watershed.png +0 -0
  322. pymodaq/resources/QtDesigner_Ressources/Icon_Library/yellow_light.png +0 -0
  323. pymodaq/resources/QtDesigner_Ressources/Icon_Library/zip_file.png +0 -0
  324. pymodaq/resources/QtDesigner_Ressources/Icon_Library/zoomAuto.png +0 -0
  325. pymodaq/resources/QtDesigner_Ressources/Icon_Library/zoomReset.png +0 -0
  326. pymodaq/resources/QtDesigner_Ressources/QtDesigner_ressources.bat +0 -2
  327. pymodaq/resources/QtDesigner_Ressources/QtDesigner_ressources.qrc +0 -238
  328. pymodaq/resources/QtDesigner_Ressources/QtDesigner_ressources_rc.py +0 -127453
  329. pymodaq/resources/QtDesigner_Ressources/__init__.py +0 -0
  330. pymodaq/resources/QtDesigner_Ressources/credit.rst +0 -7
  331. pymodaq/resources/QtDesigner_Ressources/icons.svg +0 -142
  332. pymodaq/resources/VERSION +0 -2
  333. pymodaq/resources/config_template.toml +0 -96
  334. pymodaq/resources/triangulation_data.npy +0 -0
  335. pymodaq/utils/abstract/__init__.py +0 -48
  336. pymodaq/utils/db/__init__.py +0 -0
  337. pymodaq/utils/db/db_logger/__init__.py +0 -0
  338. pymodaq/utils/factory.py +0 -82
  339. pymodaq/utils/gui_utils/custom_app.py +0 -133
  340. pymodaq/utils/gui_utils/dock.py +0 -107
  341. pymodaq/utils/gui_utils/file_io.py +0 -94
  342. pymodaq/utils/gui_utils/layout.py +0 -34
  343. pymodaq/utils/gui_utils/list_picker.py +0 -38
  344. pymodaq/utils/gui_utils/widgets/__init__.py +0 -5
  345. pymodaq/utils/gui_utils/widgets/label.py +0 -24
  346. pymodaq/utils/gui_utils/widgets/push.py +0 -149
  347. pymodaq/utils/gui_utils/widgets/qled.py +0 -62
  348. pymodaq/utils/gui_utils/widgets/spinbox.py +0 -24
  349. pymodaq/utils/gui_utils/widgets/table.py +0 -263
  350. pymodaq/utils/gui_utils/widgets/tree_layout.py +0 -188
  351. pymodaq/utils/gui_utils/widgets/tree_toml.py +0 -110
  352. pymodaq/utils/h5modules/backends.py +0 -1022
  353. pymodaq/utils/h5modules/browsing.py +0 -627
  354. pymodaq/utils/h5modules/data_saving.py +0 -1107
  355. pymodaq/utils/h5modules/exporter.py +0 -119
  356. pymodaq/utils/h5modules/exporters/__init__.py +0 -0
  357. pymodaq/utils/h5modules/exporters/base.py +0 -111
  358. pymodaq/utils/h5modules/exporters/flimj.py +0 -63
  359. pymodaq/utils/h5modules/exporters/hyperspy.py +0 -143
  360. pymodaq/utils/h5modules/saving.py +0 -866
  361. pymodaq/utils/h5modules/utils.py +0 -115
  362. pymodaq/utils/managers/action_manager.py +0 -489
  363. pymodaq/utils/managers/parameter_manager.py +0 -279
  364. pymodaq/utils/managers/roi_manager.py +0 -740
  365. pymodaq/utils/parameter/ioxml.py +0 -545
  366. pymodaq/utils/parameter/pymodaq_ptypes/__init__.py +0 -38
  367. pymodaq/utils/parameter/pymodaq_ptypes/bool.py +0 -31
  368. pymodaq/utils/parameter/pymodaq_ptypes/date.py +0 -126
  369. pymodaq/utils/parameter/pymodaq_ptypes/filedir.py +0 -143
  370. pymodaq/utils/parameter/pymodaq_ptypes/itemselect.py +0 -265
  371. pymodaq/utils/parameter/pymodaq_ptypes/led.py +0 -44
  372. pymodaq/utils/parameter/pymodaq_ptypes/list.py +0 -150
  373. pymodaq/utils/parameter/pymodaq_ptypes/numeric.py +0 -18
  374. pymodaq/utils/parameter/pymodaq_ptypes/pixmap.py +0 -175
  375. pymodaq/utils/parameter/pymodaq_ptypes/slide.py +0 -166
  376. pymodaq/utils/parameter/pymodaq_ptypes/table.py +0 -135
  377. pymodaq/utils/parameter/pymodaq_ptypes/tableview.py +0 -149
  378. pymodaq/utils/parameter/pymodaq_ptypes/text.py +0 -142
  379. pymodaq/utils/plotting/__init__.py +0 -0
  380. pymodaq/utils/plotting/data_viewers/__init__.py +0 -10
  381. pymodaq/utils/plotting/data_viewers/base.py +0 -286
  382. pymodaq/utils/plotting/data_viewers/viewer.py +0 -275
  383. pymodaq/utils/plotting/data_viewers/viewer0D.py +0 -298
  384. pymodaq/utils/plotting/data_viewers/viewer1D.py +0 -826
  385. pymodaq/utils/plotting/data_viewers/viewer1Dbasic.py +0 -231
  386. pymodaq/utils/plotting/data_viewers/viewer2D.py +0 -1118
  387. pymodaq/utils/plotting/data_viewers/viewer2D_basic.py +0 -146
  388. pymodaq/utils/plotting/data_viewers/viewerND.py +0 -800
  389. pymodaq/utils/plotting/gant_chart.py +0 -123
  390. pymodaq/utils/plotting/image_viewer.py +0 -97
  391. pymodaq/utils/plotting/items/__init__.py +0 -0
  392. pymodaq/utils/plotting/items/axis_scaled.py +0 -93
  393. pymodaq/utils/plotting/items/crosshair.py +0 -94
  394. pymodaq/utils/plotting/items/image.py +0 -388
  395. pymodaq/utils/plotting/navigator.py +0 -353
  396. pymodaq/utils/plotting/plotter/plotter.py +0 -94
  397. pymodaq/utils/plotting/plotter/plotters/__init__.py +0 -0
  398. pymodaq/utils/plotting/plotter/plotters/matplotlib_plotters.py +0 -134
  399. pymodaq/utils/plotting/plotter/plotters/qt_plotters.py +0 -78
  400. pymodaq/utils/plotting/utils/__init__.py +0 -0
  401. pymodaq/utils/plotting/utils/axes_viewer.py +0 -88
  402. pymodaq/utils/plotting/utils/filter.py +0 -585
  403. pymodaq/utils/plotting/utils/lineout.py +0 -226
  404. pymodaq/utils/plotting/utils/plot_utils.py +0 -579
  405. pymodaq/utils/plotting/utils/signalND.py +0 -1347
  406. pymodaq/utils/plotting/widgets.py +0 -76
  407. pymodaq/utils/qvariant.py +0 -12
  408. pymodaq/utils/slicing.py +0 -63
  409. pymodaq/utils/units.py +0 -216
  410. pymodaq-4.4.7.dist-info/METADATA +0 -163
  411. pymodaq-4.4.7.dist-info/RECORD +0 -446
  412. /pymodaq/{post_treatment/daq_analysis → daq_utils}/__init__.py +0 -0
  413. /pymodaq/{utils/abstract/logger.py → extensions/daq_logger/abstract.py} +0 -0
  414. /pymodaq/{post_treatment/daq_measurement → extensions/daq_logger/db}/__init__.py +0 -0
  415. {pymodaq-4.4.7.dist-info → pymodaq-5.0.1.dist-info}/licenses/LICENSE +0 -0
@@ -1,13 +1,10 @@
1
- from qtpy import QtWidgets
1
+ from pymodaq_gui.parameter import Parameter, ParameterTree, utils, ioxml, pymodaq_ptypes
2
+ from sys import modules as sysmodules
3
+ from pymodaq_utils.warnings import deprecation_msg
2
4
 
3
- from pyqtgraph.parametertree import parameterTypes, Parameter, ParameterTree
4
- from . import pymodaq_ptypes
5
5
 
6
+ sysmodules["pymodaq.utils.parameter.pymodaq_ptypes"] = pymodaq_ptypes
6
7
 
7
- class ParameterTree(ParameterTree):
8
- def __init__(self, *args, **kwargs):
9
- super().__init__(*args, **kwargs)
10
8
 
11
- self.header().setVisible(True)
12
- self.header().setSectionResizeMode(QtWidgets.QHeaderView.ResizeMode.Interactive)
13
- self.header().setMinimumSectionSize(150)
9
+ deprecation_msg('Importing Parameter stuff from pymodaq is deprecated in pymodaq>5.0.0,'
10
+ 'please use the pymodaq_gui package')
@@ -1,330 +1,6 @@
1
- from __future__ import annotations
2
- from typing import TYPE_CHECKING, List
3
- import numpy as np
4
- from collections import OrderedDict
5
- from dataclasses import dataclass
6
- from pymodaq.utils.daq_utils import find_keys_from_val
1
+ from pymodaq_gui.parameter.utils import *
7
2
 
8
- if TYPE_CHECKING:
9
- from pymodaq.utils.parameter import Parameter
3
+ from pymodaq_utils.warnings import deprecation_msg
10
4
 
11
-
12
- class ParameterWithPath:
13
- """ holds together a Parameter object and its full path
14
-
15
- To be used when communicating between TCPIP to reconstruct properly the Parameter
16
-
17
- Parameters
18
- ----------
19
- parameter: Parameter
20
- a Parameter object
21
- path: full path of the parameter, if None it is constructed from the parameter parents
22
- """
23
- def __init__(self, parameter: Parameter, path: List[str] = None):
24
- self._parameter = parameter
25
- if path is None:
26
- path = get_param_path(parameter)
27
- self._path = path
28
-
29
- @property
30
- def parameter(self) -> Parameter:
31
- return self._parameter
32
-
33
- @property
34
- def path(self) -> List[str]:
35
- return self._path
36
-
37
-
38
- def get_widget_from_tree(parameter_tree, widget_instance):
39
- widgets = []
40
- for item in parameter_tree.listAllItems():
41
- if hasattr(item, 'widget'):
42
- if item.widget.__class__.__name__ == widget_instance.__name__:
43
- widgets.append(item.widget)
44
- return widgets
45
-
46
-
47
- def get_param_path(param: Parameter) -> List[str]:
48
- """ Get the parameter path from its highest parent down to the given parameter including its
49
- identifier (name)
50
-
51
- Parameters
52
- ----------
53
- param: Parameter
54
- The parameter object
55
-
56
- Returns
57
- -------
58
- List[str]: the path as a list of parameter identifiers
59
- """
60
- path = [param.name()]
61
- while param.parent() is not None:
62
- path.append(param.parent().name())
63
- param = param.parent()
64
- return path[::-1]
65
-
66
-
67
- def getOpts(param:Parameter,) -> OrderedDict:
68
- """Return an OrderedDict with tree structures of all opts for all children of this parameter
69
- Parameters
70
- ----------
71
- param: Parameter
72
- Returns
73
- -------
74
- OrderedDict
75
- """
76
- vals = OrderedDict()
77
- for ch in param:
78
- vals[ch.name()] = (ch.opts, getOpts(ch))
79
- return vals
80
-
81
- def getStruct(param:Parameter,) -> OrderedDict:
82
- """Return an OrderedDict with tree structures of all children of this parameter
83
- Parameters
84
- ----------
85
- param: Parameter
86
- Returns
87
- -------
88
- OrderedDict
89
- """
90
- vals = OrderedDict()
91
- for ch in param:
92
- vals[ch.name()] = (None, getStruct(ch))
93
- return vals
94
-
95
- def getValues(param:Parameter,) -> OrderedDict:
96
- """Return an OrderedDict with tree structures of all values for all children of this parameter
97
- Parameters
98
- ----------
99
- param: Parameter
100
- Returns
101
- -------
102
- OrderedDict
103
- """
104
- return param.getValues()
105
-
106
- def compareParameters(param1:Parameter,param2:Parameter,opts:list=[])-> bool:
107
- """Compare the structure and the opts of two parameters with their children, return True if structure and all opts are identical
108
- Parameters
109
- ----------
110
- param1: Parameter
111
- param2: Parameter
112
-
113
- Returns
114
- -------
115
- Bool
116
- """
117
- return getOpts(param1) == getOpts(param2)
118
-
119
- def compareStructureParameter(param1:Parameter,param2:Parameter,)-> bool:
120
- """Compare the structure of two parameters with their children, return True if structure is identical
121
- Parameters
122
- ----------
123
- param1: Parameter
124
- param2: Parameter
125
-
126
- Returns
127
- -------
128
- Bool
129
- """
130
- return getStruct(param1) == getStruct(param2)
131
-
132
- def compareValuesParameter(param1:Parameter,param2:Parameter,)-> bool:
133
- """Compare the structure and the values of two parameters with their children, return True if structures and values are identical
134
- Parameters
135
- ----------
136
- param1: Parameter
137
- param2: Parameter
138
-
139
- Returns
140
- -------
141
- Bool
142
- """
143
- return getValues(param1) == getValues(param2)
144
-
145
- def iter_children(param, childlist=[]):
146
- """Get a list of parameters name under a given Parameter
147
- | Returns all childrens names.
148
-
149
- =============== ================================= ====================================
150
- **Parameters** **Type** **Description**
151
- *param* instance of pyqtgraph parameter the root node to be coursed
152
- *childlist* list the child list recetion structure
153
- =============== ================================= ====================================
154
-
155
- Returns
156
- -------
157
- childlist : parameter list
158
- The list of the children from the given node.
159
- """
160
- for child in param.children():
161
- childlist.append(child.name())
162
- if child.hasChildren():
163
- # if 'group' in child.type():
164
- childlist.extend(iter_children(child, []))
165
- return childlist
166
-
167
-
168
- def iter_children_params(param, childlist=[]):
169
- """Get a list of parameters under a given Parameter
170
-
171
- """
172
- for child in param.children():
173
- childlist.append(child)
174
- if child.hasChildren():
175
- childlist.extend(iter_children_params(child, []))
176
- return childlist
177
-
178
-
179
- def get_param_from_name(parent, name) -> Parameter:
180
- """Get Parameter under parent whose name is name
181
-
182
- Parameters
183
- ----------
184
- parent: Parameter
185
- name: str
186
-
187
- Returns
188
- -------
189
- Parameter
190
- """
191
- for child in parent.children():
192
- if child.name() == name:
193
- return child
194
- if child.hasChildren():
195
- ch = get_param_from_name(child, name)
196
- if ch is not None:
197
- return ch
198
-
199
-
200
- def is_name_in_dict(dict_tmp, name):
201
- if 'name' in dict_tmp:
202
- if dict_tmp['name'] == name:
203
- return True
204
- return False
205
-
206
-
207
- def get_param_dict_from_name(parent_list, name, pop=False):
208
- """Get dict under parent whose name is name. The parent_list structure is the one used to init a Parameter object
209
-
210
- Parameters
211
- ----------
212
- parent_list: (list of dicts) as defined to init Parameter object
213
- name: (str) value to find for the key: name
214
- pop: (bool) if True remove the matched dict from parent
215
-
216
- Returns
217
- -------
218
- dict the matched dict
219
- """
220
- for index, parent_dict in enumerate(parent_list):
221
- if is_name_in_dict(parent_dict, name):
222
- if pop:
223
- return parent_list.pop(index)
224
- else:
225
- return parent_dict
226
-
227
- elif 'children' in parent_dict:
228
- ch = get_param_dict_from_name(parent_dict['children'], name, pop)
229
- if ch is not None:
230
- return ch
231
-
232
-
233
- if __name__ == '__main__': # pragma: no cover
234
- parent = [
235
- {'title': 'Spectro Settings:', 'name': 'spectro_settings', 'type': 'group', 'expanded': True,
236
- 'children': [
237
- {'title': 'Home Wavelength (nm):', 'name': 'spectro_wl_home', 'type': 'float', 'value': 600, 'min': 0,
238
- 'readonly': False},
239
- {'title': 'Grating Settings:', 'name': 'grating_settings', 'type': 'group', 'expanded': True,
240
- 'children': [
241
- {'title': 'Grating:', 'name': 'grating', 'type': 'list'},
242
- {'title': 'Lines (/mm):', 'name': 'lines', 'type': 'int', 'readonly': True},
243
- {'title': 'Blaze WL (nm):', 'name': 'blaze', 'type': 'str', 'readonly': True},
244
- ]},
245
- ]
246
- },
247
- ]
248
-
249
- d = get_param_dict_from_name(parent, 'lines')
250
-
251
- d['readonly'] = False
252
- print(parent[0]['children'][1]['children'])
253
-
254
-
255
- def set_param_from_param(param_old, param_new):
256
- """
257
- Walk through parameters children and set values using new parameter values.
258
- """
259
- for child_old in param_old.children():
260
- # try:
261
- path = param_old.childPath(child_old)
262
- child_new = param_new.child(*path)
263
- param_type = child_old.type()
264
-
265
- if 'group' not in param_type: # covers 'group', custom 'groupmove'...
266
- # try:
267
- if 'list' in param_type: # check if the value is in the limits of the old params
268
- # (limits are usually set at initialization) but carefull as such paramater limits can be a list or a
269
- # dict object
270
- if isinstance(child_old.opts['limits'], list):
271
- if child_new.value() not in child_old.opts['limits']:
272
- new_limits = child_old.opts['limits'].copy()
273
- new_limits.append(child_new.value())
274
- child_old.setLimits(new_limits)
275
-
276
- elif isinstance(child_old.opts['limits'], dict):
277
- if child_new.value() not in child_old.opts['limits'].values():
278
- child_new_key = find_keys_from_val(child_new.opts['limits'], child_new.value())[0]
279
- new_limits = child_old.opts['limits'].copy()
280
- new_limits.update({child_new_key: child_new.value()})
281
- child_old.setLimits(new_limits)
282
-
283
- child_old.setValue(child_new.value())
284
- elif 'str' in param_type or 'browsepath' in param_type or 'text' in param_type:
285
- if child_new.value() != "": # to make sure one doesnt overwrite something
286
- child_old.setValue(child_new.value())
287
- else:
288
- child_old.setValue(child_new.value())
289
- # except Exception as e:
290
- # print(str(e))
291
- else:
292
- set_param_from_param(child_old, child_new)
293
- # except Exception as e:
294
- # print(str(e))
295
-
296
-
297
- def scroll_log(scroll_val, min_val, max_val):
298
- """
299
- Convert a scroll value [0-100] to a log scale between min_val and max_val
300
- Parameters
301
- ----------
302
- scroll
303
- min_val
304
- max_val
305
- Returns
306
- -------
307
-
308
- """
309
- assert scroll_val >= 0
310
- assert scroll_val <= 100
311
- value = scroll_val * (np.log10(max_val) - np.log10(min_val)) / 100 + np.log10(min_val)
312
- return 10 ** value
313
-
314
-
315
- def scroll_linear(scroll_val, min_val, max_val):
316
- """
317
- Convert a scroll value [0-100] to a linear scale between min_val and max_val
318
- Parameters
319
- ----------
320
- scroll
321
- min_val
322
- max_val
323
- Returns
324
- -------
325
-
326
- """
327
- assert scroll_val >= 0
328
- assert scroll_val <= 100
329
- value = scroll_val * (max_val - min_val) / 100 + min_val
330
- return value
5
+ deprecation_msg('Importing Parameter stuff from pymodaq is deprecated in pymodaq>5.0.0,'
6
+ 'please use the pymodaq_gui.parameter module')
@@ -6,7 +6,7 @@ Created the 19/11/2023
6
6
  """
7
7
 
8
8
  from pathlib import Path
9
- from pymodaq.utils.config import BaseConfig, getitem_recursive
9
+ from pymodaq_utils.config import BaseConfig
10
10
 
11
11
 
12
12
  class ScanConfig(BaseConfig):
@@ -13,19 +13,23 @@ from typing import Callable, Union, List, Tuple, TYPE_CHECKING
13
13
  import numpy as np
14
14
  from qtpy import QtWidgets
15
15
 
16
- from pymodaq.utils.managers.parameter_manager import ParameterManager, Parameter
17
- from pymodaq.utils.parameter.utils import get_param_path, iter_children_params
18
- from pymodaq.utils.factory import ObjectFactory
19
- from pymodaq.utils.logger import set_logger, get_module_name
20
- from pymodaq.utils.data import Axis, DataDistribution
21
- from pymodaq.utils.abstract import abstract_attribute
22
- from pymodaq.utils import math_utils as mutils
23
- from pymodaq.utils import config as configmod
16
+ from pymodaq_utils.factory import ObjectFactory
17
+ from pymodaq_utils.logger import set_logger, get_module_name
18
+ from pymodaq_utils.abstract import abstract_attribute
19
+ from pymodaq_utils import math_utils as mutils
20
+ from pymodaq_utils import config as configmod
21
+
22
+ from pymodaq_gui.managers.parameter_manager import ParameterManager, Parameter
23
+
24
+ from pymodaq_data.data import Axis, DataDistribution
25
+
24
26
  from pymodaq.utils.scanner.scan_config import ScanConfig
27
+ from pymodaq_gui.config import ConfigSaverLoader
28
+
25
29
 
26
30
  if TYPE_CHECKING:
27
31
  from pymodaq.control_modules.daq_move import DAQ_Move
28
- from pymodaq.utils.plotting.scan_selector import Selector
32
+ from pymodaq.utils.scanner.scan_selector import Selector
29
33
 
30
34
 
31
35
  logger = set_logger(get_module_name(__file__))
@@ -84,9 +88,9 @@ class ScannerBase(ScanParameterManager, metaclass=ABCMeta):
84
88
  self.config = ScanConfig()
85
89
  base_path = [act.title for act in actuators] + [self.scan_type, self.scan_subtype]
86
90
 
87
- self.config_saver_loader = configmod.ConfigSaverLoader(self.settings,
88
- self.config,
89
- base_path)
91
+ self.config_saver_loader = ConfigSaverLoader(self.settings,
92
+ self.config,
93
+ base_path)
90
94
 
91
95
  self.actuators: List[DAQ_Move] = actuators
92
96
 
@@ -1,29 +1,28 @@
1
+ from abc import ABC, abstractmethod
2
+ from collections import OrderedDict
1
3
  import importlib
2
4
  import time
3
- from typing import Callable, Union, List, Tuple, TYPE_CHECKING
4
- from abc import abstractproperty
5
+ import sys
6
+ from typing import List, Dict
5
7
 
6
8
  import numpy as np
7
9
  from qtpy import QtWidgets, QtCore
8
10
  from qtpy.QtCore import QObject, Slot, QThread, Signal
9
- import sys
10
- from typing import List, Dict
11
- from collections import OrderedDict
11
+
12
12
  from pyqtgraph import ROI, RectROI, PolyLineROI, Point, LinearRegionItem
13
- from abc import ABC, abstractmethod
14
- from pymodaq.utils.parameter import Parameter, ParameterTree
15
- from pymodaq.utils.managers.parameter_manager import ParameterManager
16
- from pymodaq.utils.logger import set_logger, get_module_name
17
- from pymodaq.utils.gui_utils import DockArea, Dock
18
- from pymodaq.utils.plotting.utils.plot_utils import QVector
19
- from pymodaq.utils import daq_utils as utils
20
- from pymodaq.utils import gui_utils as gutils
21
- from pymodaq.utils.enums import BaseEnum, enum_checker
22
- from pymodaq.utils.parameter.pymodaq_ptypes import TableViewCustom
23
- from pymodaq.utils.parameter import utils as putils
24
- from pymodaq.utils.plotting.data_viewers.viewer import ViewerBase
25
- from pymodaq.utils.factory import ObjectFactory
26
- from pymodaq.utils.data import DataDim
13
+
14
+ from pymodaq_utils.factory import ObjectFactory
15
+ from pymodaq_utils.logger import set_logger, get_module_name
16
+ from pymodaq_utils import utils
17
+
18
+ from pymodaq_gui.managers.parameter_manager import ParameterManager
19
+ from pymodaq_gui import utils as gutils
20
+ from pymodaq_gui.utils import DockArea, Dock
21
+ from pymodaq_gui.plotting.utils.plot_utils import QVector
22
+ from pymodaq_gui.parameter.pymodaq_ptypes import TableViewCustom
23
+ from pymodaq_gui.parameter import utils as putils
24
+ from pymodaq_gui.plotting.data_viewers.viewer import ViewerBase
25
+
27
26
 
28
27
  logger = set_logger(get_module_name(__file__))
29
28
 
@@ -371,7 +370,7 @@ class ScanSelector(ParameterManager, QObject):
371
370
 
372
371
  def update_selector_type(self):
373
372
  self.remove_selector()
374
- mod = importlib.import_module('.scan_selector', 'pymodaq.utils.plotting')
373
+ mod = importlib.import_module('.scan_selector', 'pymodaq.utils.scanner')
375
374
  self.selector = selector_factory.create(self.settings['scan_options', 'selector_type'])
376
375
 
377
376
  if self.selector_source is not None and self.selector is not None:
@@ -2,17 +2,18 @@ from __future__ import annotations
2
2
  from typing import Tuple, List, TYPE_CHECKING
3
3
  from collections import OrderedDict
4
4
 
5
+ from qtpy.QtCore import QObject, Signal
6
+ from qtpy import QtWidgets
5
7
 
6
- from qtpy import QtWidgets, QtCore
7
- from qtpy.QtCore import QObject, Signal, Slot
8
+ from pymodaq_utils.logger import set_logger, get_module_name
9
+ from pymodaq_utils.config import Config
10
+ import pymodaq_utils.utils as utils
11
+
12
+ from pymodaq_gui.managers.parameter_manager import ParameterManager, Parameter
8
13
 
9
- from pymodaq.utils.logger import set_logger, get_module_name
10
- from pymodaq.utils.config import Config
11
14
  from pymodaq.utils.scanner.scan_factory import ScannerFactory, ScannerBase
12
- from pymodaq.utils.managers.parameter_manager import ParameterManager, Parameter
13
- import pymodaq.utils.daq_utils as utils
14
15
  from pymodaq.utils.scanner.utils import ScanInfo
15
- from pymodaq.utils.plotting.scan_selector import Selector
16
+ from pymodaq.utils.scanner.scan_selector import Selector
16
17
  from pymodaq.utils.data import DataToExport, DataActuator
17
18
 
18
19
  if TYPE_CHECKING:
@@ -45,7 +46,8 @@ class Scanner(QObject, ParameterManager):
45
46
  params = [
46
47
  {'title': 'Calculate positions:', 'name': 'calculate_positions', 'type': 'action'},
47
48
  {'title': 'N steps:', 'name': 'n_steps', 'type': 'int', 'value': 0, 'readonly': True},
48
- {'title': 'Scan type:', 'name': 'scan_type', 'type': 'list', 'limits': scanner_factory.scan_types()},
49
+ {'title': 'Scan type:', 'name': 'scan_type', 'type': 'list',
50
+ 'limits': scanner_factory.scan_types()},
49
51
  {'title': 'Scan subtype:', 'name': 'scan_sub_type', 'type': 'list',
50
52
  'limits': scanner_factory.scan_sub_types(scanner_factory.scan_types()[0])},
51
53
  ]
@@ -7,11 +7,14 @@ Created the 05/12/2022
7
7
  from typing import List, Tuple, Any, TYPE_CHECKING
8
8
  import re
9
9
  import numpy as np
10
- from pymodaq.utils.data import Axis, DataDistribution
11
- from pymodaq.utils.logger import set_logger, get_module_name
12
- from pymodaq.utils import math_utils as mutils
13
- from pymodaq.utils import config as configmod
14
- from pymodaq.utils.plotting.scan_selector import Selector
10
+
11
+ from pymodaq_utils.logger import set_logger, get_module_name
12
+ from pymodaq_utils import math_utils as mutils
13
+ from pymodaq_utils import config as configmod
14
+
15
+ from pymodaq_data.data import Axis, DataDistribution
16
+
17
+ from pymodaq.utils.scanner.scan_selector import Selector
15
18
 
16
19
  from ..scan_factory import ScannerFactory, ScannerBase, ScanParameterManager
17
20
 
@@ -7,11 +7,11 @@ Created the 05/12/2022
7
7
  from typing import List, Tuple, TYPE_CHECKING
8
8
 
9
9
  import numpy as np
10
- from pymodaq.utils.data import Axis, DataDistribution
11
- from pymodaq.utils.logger import set_logger, get_module_name
12
- from pymodaq.utils import math_utils as mutils
13
- from pymodaq.utils import config as configmod
14
- from pymodaq.utils.plotting.scan_selector import Selector
10
+ from pymodaq_data.data import Axis, DataDistribution
11
+ from pymodaq_utils.logger import set_logger, get_module_name
12
+ from pymodaq_utils import math_utils as mutils
13
+ from pymodaq_utils import config as configmod
14
+ from pymodaq.utils.scanner.scan_selector import Selector
15
15
 
16
16
  from ..scan_factory import ScannerFactory, ScannerBase, ScanParameterManager
17
17
 
@@ -9,15 +9,15 @@ from typing import List, Tuple, TYPE_CHECKING
9
9
  import numpy as np
10
10
 
11
11
  from qtpy import QtCore, QtWidgets
12
- from pymodaq.utils.data import Axis, DataDistribution
13
- from pymodaq.utils.logger import set_logger, get_module_name
14
- from pymodaq.utils import math_utils as mutils
15
- from pymodaq.utils import config as configmod
16
- from pymodaq.utils import gui_utils as gutils
12
+ from pymodaq_data.data import Axis, DataDistribution
13
+ from pymodaq_utils.logger import set_logger, get_module_name
14
+ from pymodaq_utils import math_utils as mutils
15
+ from pymodaq_utils import config as configmod
16
+ from pymodaq_gui import utils as gutils
17
17
  from ..scan_factory import ScannerFactory, ScannerBase, ScanParameterManager
18
- from pymodaq.utils.parameter import utils as putils
19
- from pymodaq.utils.parameter.pymodaq_ptypes import TableViewCustom
20
- from pymodaq.utils.plotting.scan_selector import Selector
18
+ from pymodaq_gui.parameter import utils as putils
19
+ from pymodaq_gui.parameter.pymodaq_ptypes import TableViewCustom
20
+ from pymodaq.utils.scanner.scan_selector import Selector
21
21
 
22
22
  logger = set_logger(get_module_name(__file__))
23
23
  config = configmod.Config()
@@ -9,16 +9,16 @@ from typing import List, Tuple, TYPE_CHECKING
9
9
  import numpy as np
10
10
 
11
11
  from qtpy import QtCore, QtWidgets
12
- from pymodaq.utils.data import Axis, DataDistribution
13
- from pymodaq.utils.logger import set_logger, get_module_name
14
- from pymodaq.utils import math_utils as mutils
15
- from pymodaq.utils import config as configmod
16
- from pymodaq.utils import gui_utils as gutils
12
+ from pymodaq_data.data import Axis, DataDistribution
13
+ from pymodaq_utils.logger import set_logger, get_module_name
14
+
15
+ from pymodaq_utils import config as configmod
16
+ from pymodaq_gui import utils as gutils
17
17
  from ..scan_factory import ScannerFactory, ScannerBase, ScanParameterManager
18
- from pymodaq.utils.parameter import utils as putils
19
- from pymodaq.utils.parameter.pymodaq_ptypes import TableViewCustom
20
- from pymodaq.utils.plotting.scan_selector import Selector
21
- from pymodaq.utils.plotting.utils.plot_utils import Point, get_sub_segmented_positions
18
+ from pymodaq_gui.parameter import utils as putils
19
+ from pymodaq_gui.parameter.pymodaq_ptypes import TableViewCustom
20
+ from pymodaq.utils.scanner.scan_selector import Selector
21
+ from pymodaq_gui.plotting.utils.plot_utils import Point, get_sub_segmented_positions
22
22
 
23
23
  if TYPE_CHECKING:
24
24
  from pymodaq.control_modules.daq_move import DAQ_Move
@@ -8,11 +8,13 @@ from importlib import import_module
8
8
  from pathlib import Path
9
9
 
10
10
 
11
- from pymodaq.utils.logger import set_logger, get_module_name
12
- from pymodaq.utils.config import Config
13
- from pymodaq.utils.daq_utils import get_entrypoints
11
+ from pymodaq_utils.logger import set_logger, get_module_name
12
+ from pymodaq_utils.config import Config
13
+ from pymodaq_utils.utils import get_entrypoints
14
+ from pymodaq_utils.enums import BaseEnum
15
+
14
16
  from pymodaq.utils.scanner.scan_factory import ScannerFactory
15
- from pymodaq.utils.enums import BaseEnum
17
+
16
18
 
17
19
  logger = set_logger(get_module_name(__file__))
18
20
  config = Config()
@@ -8,10 +8,9 @@ import sys
8
8
 
9
9
  import numpy as np
10
10
 
11
- from qtpy import QtWidgets, QtCore, QtSvg
12
- from pyqtgraph.widgets.GraphicsView import GraphicsView
13
- from pymodaq.utils.plotting.data_viewers.viewer2D import Viewer2D
14
- from pymodaq.utils.data import Axis, DataToExport, DataFromRoi, DataFromPlugins, DataRaw
11
+ from qtpy import QtWidgets
12
+ from pymodaq_gui.plotting.data_viewers.viewer2D import Viewer2D
13
+ from pymodaq.utils.data import Axis, DataFromRoi, DataFromPlugins
15
14
 
16
15
 
17
16
  def main():