dls-dodal 1.69.0__py3-none-any.whl → 2.0.0__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 (282) hide show
  1. {dls_dodal-1.69.0.dist-info → dls_dodal-2.0.0.dist-info}/METADATA +1 -1
  2. dls_dodal-2.0.0.dist-info/RECORD +354 -0
  3. {dls_dodal-1.69.0.dist-info → dls_dodal-2.0.0.dist-info}/WHEEL +1 -1
  4. dodal/_version.py +2 -2
  5. dodal/beamlines/__init__.py +10 -17
  6. dodal/beamlines/adsim.py +17 -17
  7. dodal/beamlines/b01_1.py +11 -0
  8. dodal/beamlines/b07.py +17 -21
  9. dodal/beamlines/b07_1.py +20 -22
  10. dodal/beamlines/b07_shared.py +12 -0
  11. dodal/beamlines/b16.py +1 -1
  12. dodal/beamlines/b21.py +15 -6
  13. dodal/beamlines/i02_1.py +3 -3
  14. dodal/beamlines/i02_2.py +1 -1
  15. dodal/beamlines/i03.py +4 -4
  16. dodal/beamlines/i04.py +16 -8
  17. dodal/beamlines/i05.py +7 -45
  18. dodal/beamlines/i05_1.py +4 -13
  19. dodal/beamlines/i05_shared.py +51 -0
  20. dodal/beamlines/i06_1.py +7 -5
  21. dodal/beamlines/{i06.py → i06_shared.py} +25 -14
  22. dodal/beamlines/i07.py +14 -16
  23. dodal/beamlines/i09.py +54 -51
  24. dodal/beamlines/i09_1.py +25 -64
  25. dodal/beamlines/i09_1_shared.py +61 -0
  26. dodal/beamlines/i09_2.py +6 -100
  27. dodal/beamlines/i09_2_shared.py +110 -0
  28. dodal/beamlines/i10.py +60 -54
  29. dodal/beamlines/i10_1.py +99 -10
  30. dodal/beamlines/{i10_optics.py → i10_shared.py} +80 -66
  31. dodal/beamlines/i11.py +31 -18
  32. dodal/beamlines/i13_1.py +1 -1
  33. dodal/beamlines/i15.py +6 -6
  34. dodal/beamlines/i15_1.py +6 -6
  35. dodal/beamlines/i17.py +37 -28
  36. dodal/beamlines/i18.py +3 -4
  37. dodal/beamlines/i19_1.py +95 -34
  38. dodal/beamlines/i19_2.py +68 -52
  39. dodal/beamlines/i19_optics.py +26 -13
  40. dodal/beamlines/i20_1.py +6 -14
  41. dodal/beamlines/i21.py +35 -28
  42. dodal/beamlines/i22.py +19 -4
  43. dodal/beamlines/i23.py +1 -2
  44. dodal/beamlines/i24.py +11 -10
  45. dodal/beamlines/k07.py +99 -5
  46. dodal/beamlines/p38.py +3 -3
  47. dodal/beamlines/p60.py +28 -17
  48. dodal/beamlines/p99.py +16 -15
  49. dodal/beamlines/training_rig.py +20 -12
  50. dodal/cli.py +36 -2
  51. dodal/common/beamlines/beamline_parameters.py +2 -1
  52. dodal/common/beamlines/beamline_utils.py +11 -9
  53. dodal/common/beamlines/commissioning_mode.py +6 -3
  54. dodal/common/coordination.py +12 -14
  55. dodal/common/crystal_metadata.py +5 -8
  56. dodal/common/device_utils.py +4 -3
  57. dodal/common/maths.py +28 -40
  58. dodal/common/udc_directory_provider.py +13 -8
  59. dodal/common/visit.py +18 -21
  60. dodal/common/watcher_utils.py +13 -12
  61. dodal/device_manager.py +94 -54
  62. dodal/devices/aperturescatterguard.py +26 -27
  63. dodal/devices/areadetector/plugins/cam.py +1 -3
  64. dodal/devices/areadetector/plugins/mjpg.py +6 -5
  65. dodal/devices/attenuator/attenuator.py +12 -11
  66. dodal/devices/beamlines/b07/__init__.py +3 -0
  67. dodal/devices/{b07_1 → beamlines/b07_1}/__init__.py +2 -2
  68. dodal/devices/{b07_1 → beamlines/b07_1}/ccmc.py +5 -10
  69. dodal/devices/{b16 → beamlines/b16}/detector.py +2 -3
  70. dodal/devices/{i02_1 → beamlines/i02_1}/fast_grid_scan.py +2 -3
  71. dodal/devices/{i02_1 → beamlines/i02_1}/sample_motors.py +1 -1
  72. dodal/devices/{i03 → beamlines/i03}/beamsize.py +11 -7
  73. dodal/devices/{i03 → beamlines/i03}/dcm.py +1 -2
  74. dodal/devices/{i03 → beamlines/i03}/undulator_dcm.py +4 -5
  75. dodal/devices/beamlines/i04/beam_centre.py +151 -0
  76. dodal/devices/{i04 → beamlines/i04}/beamsize.py +11 -7
  77. dodal/devices/{i04 → beamlines/i04}/murko_results.py +5 -5
  78. dodal/devices/{i04 → beamlines/i04}/transfocator.py +10 -15
  79. dodal/devices/beamlines/i05/__init__.py +3 -0
  80. dodal/devices/beamlines/i06_shared/__init__.py +3 -0
  81. dodal/devices/beamlines/i06_shared/i06_enum.py +7 -0
  82. dodal/devices/{i07 → beamlines/i07}/dcm.py +2 -3
  83. dodal/devices/{i07 → beamlines/i07}/id.py +8 -9
  84. dodal/devices/beamlines/i09/__init__.py +3 -0
  85. dodal/devices/{i09_1_shared → beamlines/i09_1_shared}/hard_energy.py +5 -6
  86. dodal/devices/{i09_1_shared → beamlines/i09_1_shared}/hard_undulator_functions.py +19 -16
  87. dodal/devices/{i10 → beamlines/i10}/diagnostics.py +4 -3
  88. dodal/devices/{i10 → beamlines/i10}/i10_apple2.py +31 -45
  89. dodal/devices/{i10 → beamlines/i10}/rasor/rasor_current_amp.py +1 -24
  90. dodal/devices/{i10 → beamlines/i10}/rasor/rasor_motors.py +2 -2
  91. dodal/devices/{i10 → beamlines/i10}/slits.py +5 -3
  92. dodal/devices/beamlines/i10_1/__init__.py +9 -0
  93. dodal/devices/beamlines/i10_1/electromagnet/magnet.py +16 -0
  94. dodal/devices/beamlines/i10_1/electromagnet/stages.py +14 -0
  95. dodal/devices/beamlines/i10_1/scaler_cards.py +13 -0
  96. dodal/devices/{i11 → beamlines/i11}/cyberstar_blower.py +1 -1
  97. dodal/devices/{i11 → beamlines/i11}/diff_stages.py +4 -6
  98. dodal/devices/{i11 → beamlines/i11}/mythen.py +3 -4
  99. dodal/devices/{i11 → beamlines/i11}/nx100robot.py +6 -6
  100. dodal/devices/{i11 → beamlines/i11}/spinner.py +1 -1
  101. dodal/devices/{i13_1 → beamlines/i13_1}/merlin.py +1 -1
  102. dodal/devices/{i15 → beamlines/i15}/dcm.py +1 -2
  103. dodal/devices/{i15 → beamlines/i15}/focussing_mirror.py +5 -5
  104. dodal/devices/{i15 → beamlines/i15}/jack.py +2 -2
  105. dodal/devices/{i15 → beamlines/i15}/multilayer_mirror.py +1 -1
  106. dodal/devices/{i17 → beamlines/i17}/i17_apple2.py +10 -16
  107. dodal/devices/{i18 → beamlines/i18}/diode.py +1 -1
  108. dodal/devices/{i19 → beamlines/i19}/access_controlled/attenuator_motor_squad.py +12 -8
  109. dodal/devices/{i19 → beamlines/i19}/access_controlled/blueapi_device.py +16 -15
  110. dodal/devices/beamlines/i19/access_controlled/piezo_control.py +72 -0
  111. dodal/devices/{i19 → beamlines/i19}/access_controlled/shutter.py +11 -9
  112. dodal/devices/{i19 → beamlines/i19}/backlight.py +3 -1
  113. dodal/devices/{i19 → beamlines/i19}/mapt_configuration.py +2 -1
  114. dodal/devices/{i19 → beamlines/i19}/pin_col_stages.py +11 -8
  115. dodal/devices/beamlines/i19/pin_tip.py +32 -0
  116. dodal/devices/beamlines/i21/__init__.py +3 -0
  117. dodal/devices/{i22 → beamlines/i22}/dcm.py +1 -2
  118. dodal/devices/{i22 → beamlines/i22}/fswitch.py +1 -3
  119. dodal/devices/{i22 → beamlines/i22}/nxsas.py +5 -4
  120. dodal/devices/{i24 → beamlines/i24}/beam_center.py +1 -1
  121. dodal/devices/{i24 → beamlines/i24}/beamstop.py +2 -2
  122. dodal/devices/{i24 → beamlines/i24}/commissioning_jungfrau.py +3 -2
  123. dodal/devices/{i24 → beamlines/i24}/dcm.py +1 -3
  124. dodal/devices/{i24 → beamlines/i24}/dual_backlight.py +3 -3
  125. dodal/devices/{i24 → beamlines/i24}/pmac.py +9 -7
  126. dodal/devices/{p60 → beamlines/p60}/lab_xray_source.py +1 -1
  127. dodal/devices/beamlines/p99/__init__.py +0 -0
  128. dodal/devices/{p99 → beamlines/p99}/andor2_point.py +11 -15
  129. dodal/devices/bimorph_mirror.py +22 -20
  130. dodal/devices/collimation_table.py +3 -2
  131. dodal/devices/common_dcm.py +30 -20
  132. dodal/devices/controllers.py +2 -2
  133. dodal/devices/cryostream.py +8 -0
  134. dodal/devices/current_amplifiers/current_amplifier.py +16 -18
  135. dodal/devices/current_amplifiers/current_amplifier_detector.py +9 -10
  136. dodal/devices/current_amplifiers/femto.py +8 -9
  137. dodal/devices/current_amplifiers/sr570.py +16 -16
  138. dodal/devices/current_amplifiers/struck_scaler_counter.py +5 -5
  139. dodal/devices/detector/det_resolution.py +9 -8
  140. dodal/devices/detector/detector.py +4 -2
  141. dodal/devices/diamond_filter.py +3 -4
  142. dodal/devices/eiger.py +3 -3
  143. dodal/devices/eiger_odin.py +1 -1
  144. dodal/devices/electron_analyser/base/base_controller.py +13 -13
  145. dodal/devices/electron_analyser/base/base_detector.py +15 -20
  146. dodal/devices/electron_analyser/base/base_driver_io.py +39 -46
  147. dodal/devices/electron_analyser/base/base_region.py +27 -30
  148. dodal/devices/electron_analyser/base/base_util.py +18 -16
  149. dodal/devices/electron_analyser/base/energy_sources.py +13 -19
  150. dodal/devices/eurotherm.py +3 -2
  151. dodal/devices/fast_grid_scan.py +31 -34
  152. dodal/devices/fast_shutter.py +24 -21
  153. dodal/devices/flux.py +1 -1
  154. dodal/devices/focusing_mirror.py +29 -11
  155. dodal/devices/hutch_shutter.py +6 -6
  156. dodal/devices/insertion_device/__init__.py +8 -0
  157. dodal/devices/insertion_device/apple2_controller.py +51 -60
  158. dodal/devices/insertion_device/apple2_undulator.py +40 -64
  159. dodal/devices/insertion_device/apple_knot_controller.py +222 -0
  160. dodal/devices/insertion_device/energy.py +100 -27
  161. dodal/devices/insertion_device/energy_motor_lookup.py +20 -27
  162. dodal/devices/insertion_device/lookup_table_models.py +45 -50
  163. dodal/devices/insertion_device/polarisation.py +1 -1
  164. dodal/devices/ipin.py +1 -1
  165. dodal/devices/linkam3.py +7 -5
  166. dodal/devices/motors.py +107 -19
  167. dodal/devices/mx_phase1/beamstop.py +2 -4
  168. dodal/devices/oav/oav_calculations.py +20 -13
  169. dodal/devices/oav/oav_detector.py +28 -23
  170. dodal/devices/oav/oav_parameters.py +4 -9
  171. dodal/devices/oav/oav_to_redis_forwarder.py +22 -18
  172. dodal/devices/oav/pin_image_recognition/__init__.py +4 -6
  173. dodal/devices/oav/pin_image_recognition/manual_test.py +1 -2
  174. dodal/devices/oav/pin_image_recognition/utils.py +30 -32
  175. dodal/devices/oav/snapshots/grid_overlay.py +10 -9
  176. dodal/devices/oav/snapshots/snapshot_image_processing.py +15 -13
  177. dodal/devices/oav/utils.py +9 -12
  178. dodal/devices/p45.py +3 -9
  179. dodal/devices/pgm.py +8 -14
  180. dodal/devices/pressure_jump_cell.py +93 -32
  181. dodal/devices/qbpm.py +1 -3
  182. dodal/devices/robot.py +12 -4
  183. dodal/devices/s4_slit_gaps.py +1 -1
  184. dodal/devices/selectable_source.py +5 -2
  185. dodal/devices/slits.py +2 -5
  186. dodal/devices/smargon.py +2 -3
  187. dodal/devices/temperture_controller/lakeshore/lakeshore.py +38 -64
  188. dodal/devices/temperture_controller/lakeshore/lakeshore_io.py +21 -35
  189. dodal/devices/tetramm.py +7 -7
  190. dodal/devices/turbo_slit.py +8 -7
  191. dodal/devices/undulator.py +42 -56
  192. dodal/devices/util/adjuster_plans.py +2 -3
  193. dodal/devices/util/epics_util.py +10 -10
  194. dodal/devices/util/lookup_tables.py +17 -18
  195. dodal/devices/v2f.py +2 -3
  196. dodal/devices/watsonmarlow323_pump.py +1 -1
  197. dodal/devices/xbpm_feedback.py +3 -2
  198. dodal/devices/xspress3/xspress3.py +8 -11
  199. dodal/devices/xspress3/xspress3_channel.py +3 -6
  200. dodal/devices/zebra/zebra.py +6 -7
  201. dodal/devices/zebra/zebra_constants_mapping.py +11 -7
  202. dodal/devices/zebra/zebra_controlled_shutter.py +2 -1
  203. dodal/devices/zocalo/zocalo_interaction.py +14 -14
  204. dodal/devices/zocalo/zocalo_results.py +33 -33
  205. dodal/log.py +23 -20
  206. dodal/plan_stubs/check_topup.py +15 -15
  207. dodal/plan_stubs/data_session.py +6 -6
  208. dodal/plan_stubs/motor_utils.py +22 -18
  209. dodal/plan_stubs/pressure_jump_cell.py +18 -0
  210. dodal/plan_stubs/wrapped.py +40 -55
  211. dodal/plans/bimorph.py +63 -52
  212. dodal/plans/device_setup_plans/__init__.py +5 -0
  213. dodal/plans/device_setup_plans/setup_pin_tip_params.py +63 -0
  214. dodal/plans/preprocessors/verify_undulator_gap.py +10 -8
  215. dodal/plans/spec_path.py +3 -5
  216. dodal/plans/verify_undulator_gap.py +1 -2
  217. dodal/plans/wrapped.py +4 -3
  218. dodal/testing/electron_analyser/device_factory.py +5 -7
  219. dodal/testing/fixtures/devices/apple2.py +38 -0
  220. dodal/testing/fixtures/run_engine.py +3 -7
  221. dodal/testing/fixtures/utils.py +1 -2
  222. dodal/utils.py +60 -58
  223. dls_dodal-1.69.0.dist-info/RECORD +0 -338
  224. dodal/beamline_specific_utils/i05_shared.py +0 -14
  225. dodal/devices/b07/__init__.py +0 -3
  226. dodal/devices/i04/beam_centre.py +0 -84
  227. dodal/devices/i05/__init__.py +0 -3
  228. dodal/devices/i09/__init__.py +0 -3
  229. dodal/devices/i21/__init__.py +0 -5
  230. {dls_dodal-1.69.0.dist-info → dls_dodal-2.0.0.dist-info}/entry_points.txt +0 -0
  231. {dls_dodal-1.69.0.dist-info → dls_dodal-2.0.0.dist-info}/licenses/LICENSE +0 -0
  232. {dls_dodal-1.69.0.dist-info → dls_dodal-2.0.0.dist-info}/top_level.txt +0 -0
  233. /dodal/{beamline_specific_utils → devices/beamlines}/__init__.py +0 -0
  234. /dodal/devices/{b07 → beamlines/b07}/enums.py +0 -0
  235. /dodal/devices/{b07_1 → beamlines/b07_1}/enums.py +0 -0
  236. /dodal/devices/{b16 → beamlines/b16}/__init__.py +0 -0
  237. /dodal/devices/{i02_1 → beamlines/i02_1}/__init__.py +0 -0
  238. /dodal/devices/{i02_2 → beamlines/i02_2}/__init__.py +0 -0
  239. /dodal/devices/{i03 → beamlines/i03}/__init__.py +0 -0
  240. /dodal/devices/{i03 → beamlines/i03}/constants.py +0 -0
  241. /dodal/devices/{i04 → beamlines/i04}/__init__.py +0 -0
  242. /dodal/devices/{i04 → beamlines/i04}/constants.py +0 -0
  243. /dodal/devices/{i04 → beamlines/i04}/max_pixel.py +0 -0
  244. /dodal/devices/{i05 → beamlines/i05}/enums.py +0 -0
  245. /dodal/devices/{i07 → beamlines/i07}/__init__.py +0 -0
  246. /dodal/devices/{i09 → beamlines/i09}/enums.py +0 -0
  247. /dodal/devices/{i09_1 → beamlines/i09_1}/__init__.py +0 -0
  248. /dodal/devices/{i09_1 → beamlines/i09_1}/enums.py +0 -0
  249. /dodal/devices/{i09_1_shared → beamlines/i09_1_shared}/__init__.py +0 -0
  250. /dodal/devices/{i09_2_shared → beamlines/i09_2_shared}/__init__.py +0 -0
  251. /dodal/devices/{i09_2_shared → beamlines/i09_2_shared}/i09_apple2.py +0 -0
  252. /dodal/devices/{i10 → beamlines/i10}/__init__.py +0 -0
  253. /dodal/devices/{i10 → beamlines/i10}/i10_setting_data.py +0 -0
  254. /dodal/devices/{i10 → beamlines/i10}/mirrors.py +0 -0
  255. /dodal/devices/{i10 → beamlines/i10}/rasor/__init__.py +0 -0
  256. /dodal/devices/{i10 → beamlines/i10}/rasor/rasor_scaler_cards.py +0 -0
  257. /dodal/devices/{i11 → beamlines/i10_1/electromagnet}/__init__.py +0 -0
  258. /dodal/devices/{i13_1 → beamlines/i11}/__init__.py +0 -0
  259. /dodal/devices/{i15 → beamlines/i13_1}/__init__.py +0 -0
  260. /dodal/devices/{i13_1 → beamlines/i13_1}/merlin_controller.py +0 -0
  261. /dodal/devices/{i17 → beamlines/i15}/__init__.py +0 -0
  262. /dodal/devices/{i15 → beamlines/i15}/laue.py +0 -0
  263. /dodal/devices/{i15 → beamlines/i15}/motors.py +0 -0
  264. /dodal/devices/{i15 → beamlines/i15}/rail.py +0 -0
  265. /dodal/devices/{i18 → beamlines/i17}/__init__.py +0 -0
  266. /dodal/devices/{i19 → beamlines/i18}/__init__.py +0 -0
  267. /dodal/devices/{i18 → beamlines/i18}/kb_mirror.py +0 -0
  268. /dodal/devices/{i19/access_controlled → beamlines/i19}/__init__.py +0 -0
  269. /dodal/devices/{i20_1 → beamlines/i19/access_controlled}/__init__.py +0 -0
  270. /dodal/devices/{i19 → beamlines/i19}/access_controlled/hutch_access.py +0 -0
  271. /dodal/devices/{i19 → beamlines/i19}/beamstop.py +0 -0
  272. /dodal/devices/{i19 → beamlines/i19}/diffractometer.py +0 -0
  273. /dodal/devices/{i22 → beamlines/i20_1}/__init__.py +0 -0
  274. /dodal/devices/{i21 → beamlines/i21}/enums.py +0 -0
  275. /dodal/devices/{i24 → beamlines/i22}/__init__.py +0 -0
  276. /dodal/devices/{p99 → beamlines/i24}/__init__.py +0 -0
  277. /dodal/devices/{i24 → beamlines/i24}/aperture.py +0 -0
  278. /dodal/devices/{i24 → beamlines/i24}/focus_mirrors.py +0 -0
  279. /dodal/devices/{i24 → beamlines/i24}/vgonio.py +0 -0
  280. /dodal/devices/{p60 → beamlines/p60}/__init__.py +0 -0
  281. /dodal/devices/{p60 → beamlines/p60}/enums.py +0 -0
  282. /dodal/devices/{p99 → beamlines/p99}/sample_stage.py +0 -0
dodal/utils.py CHANGED
@@ -129,8 +129,8 @@ class DeviceInitializationController(Generic[T]):
129
129
 
130
130
  def cache_clear(self) -> None:
131
131
  """Clears the controller's internal cached instance of the device, if present.
132
- Noop if not."""
133
-
132
+ Noop if not.
133
+ """
134
134
  # Functools adds the cache_clear function via setattr so the type checker
135
135
  # does not pick it up.
136
136
  self._factory.cache_clear() # type: ignore
@@ -149,34 +149,36 @@ class DeviceInitializationController(Generic[T]):
149
149
  Once the device is connected, the value of mock must be consistent, or connect
150
150
  must be False.
151
151
 
152
- Additional keyword arguments will be passed through to the wrapped factory function.
152
+ Additional keyword arguments will be passed through to the wrapped factory
153
+ function.
153
154
 
154
155
  Args:
155
- connect_immediately (bool, default False): whether to call connect on the
156
- device before returning it- connect is idempotent for ophyd-async devices.
157
- Not connecting to the device allows for the instance to be created prior
158
- to the RunEngine event loop being configured or for connect to be called
159
- lazily e.g. by the `ensure_connected` stub.
160
- name (str | None, optional): an override name to give the device, which is
161
- also used to name its children. Defaults to None, which does not name the
162
- device unless the device has no name and this Controller is configured to
163
- use_factory_name, which propagates the name of the wrapped factory
164
- function to the device instance.
165
- connection_timeout (float | None, optional): an override timeout length in
166
- seconds for the connect method, if it is called. Defaults to None, which
167
- defers to the timeout configured for this Controller: the default uses
168
- ophyd_async's DEFAULT_TIMEOUT.
169
- mock (bool | None, optional): overrides whether to connect to Mock signal
170
- backends, if connect is called. Defaults to None, which uses the mock
171
- parameter of this Controller. This value must be used consistently when
172
- connect is called on the Device.
156
+ connect_immediately (bool, default False): Whether to call connect on the
157
+ device before returning it- connect is idempotent for ophyd-async
158
+ devices. Not connecting to the device allows for the instance to be
159
+ created prior to the RunEngine event loop being configured or for
160
+ connect to be called lazily e.g. by the `ensure_connected` stub.
161
+ name (str, optional): An override name to give the device, which is
162
+ also used to name its children. Defaults to None, which does not name
163
+ the device unless the device has no name and this Controller is
164
+ configured to use_factory_name, which propagates the name of the wrapped
165
+ factory function to the device instance.
166
+ connection_timeout (float, optional): An override timeout length in
167
+ seconds for the connect method, if it is called. Defaults to None, which
168
+ defers to the timeout configured for this Controller: the default uses
169
+ ophyd_async's DEFAULT_TIMEOUT.
170
+ mock (bool, optional): Overrides whether to connect to Mock signal
171
+ backends, if connect is called. Defaults to None, which uses the mock
172
+ parameter of this Controller. This value must be used consistently when
173
+ connect is called on the Device.
174
+ **kwargs: Arguments passed on to every factory.
173
175
 
174
176
  Returns:
175
- T: a singleton instance of the Device class returned by the wrapped factory.
177
+ T: A singleton instance of the Device class returned by the wrapped factory.
176
178
 
177
179
  Raises:
178
- RuntimeError: If the device factory was invoked again with different
179
- keyword arguments, without previously invoking cache_clear()
180
+ RuntimeError: If the device factory was invoked again with different
181
+ keyword arguments, without previously invoking cache_clear().
180
182
  """
181
183
  is_v2_device = is_v2_device_factory(self._factory)
182
184
  is_mock = mock if mock is not None else self._mock
@@ -220,11 +222,11 @@ def make_device(
220
222
 
221
223
  Args:
222
224
  module (str | ModuleType): The module to make devices from.
223
- device_name: Name of the device to construct
224
- **kwargs: Arguments passed on to every device factory
225
+ device_name: Name of the device to construct.
226
+ **kwargs: Arguments passed on to every device factory.
225
227
 
226
228
  Returns:
227
- dict[str, AnyDevice]: A dict mapping device names to the constructed devices
229
+ dict[str, AnyDevice]: A dict mapping device names to the constructed devices.
228
230
  """
229
231
  if isinstance(module, str):
230
232
  module = import_module(module)
@@ -240,21 +242,23 @@ def make_device(
240
242
  def make_all_devices(
241
243
  module: str | ModuleType | None = None, include_skipped: bool = False, **kwargs
242
244
  ) -> tuple[dict[str, AnyDevice], dict[str, Exception]]:
243
- """Makes all devices in the given beamline module, for those modules using device factories
244
- as opposed to the DeviceManager.
245
+ """Makes all devices in the given beamline module, for those modules using device
246
+ factories as opposed to the DeviceManager.
245
247
 
246
248
  In cases of device interdependencies it ensures a device is created before any which
247
249
  depend on it.
248
250
 
249
251
  Args:
250
252
  module (str | ModuleType | None, optional): The module to make devices from.
253
+ include_skipped (bool, optional): If True, also load factories with the
254
+ @skip_device annotation. Defaults to False.
251
255
  **kwargs: Arguments passed on to every device.
252
256
 
253
257
  Returns:
254
- Tuple[Dict[str, AnyDevice], Dict[str, Exception]]: This represents a tuple containing two dictionaries:
255
-
256
- A dictionary where the keys are device names and the values are devices.
257
- A dictionary where the keys are device names and the values are exceptions.
258
+ Tuple[Dict[str, AnyDevice], Dict[str, Exception]]: This represents a tuple
259
+ containing two dictionaries:
260
+ -A dictionary where the keys are device names and the values are devices.
261
+ -A dictionary where the keys are device names and the values are exceptions.
258
262
  """
259
263
  if isinstance(module, str) or module is None:
260
264
  module = import_module(module or __name__)
@@ -278,14 +282,14 @@ def invoke_factories(
278
282
  this will detect a dependency and create and cache the non-dependant device first.
279
283
 
280
284
  Args:
281
- factories: Mapping of function name -> function
285
+ factories (Mapping[str, AnyDeviceFactory]): Mapping of function name -> function.
286
+ **kwargs: Optional key word arguments: `mock` and `connect_immediately`.
282
287
 
283
288
  Returns:
284
- Tuple[Dict[str, AnyDevice], Dict[str, Exception]]: Tuple of two dictionaries.
285
- One mapping device name to device, one mapping device name to exception for
286
- any failed devices
289
+ Tuple[Dict[str, AnyDevice], Dict[str, Exception]]: Tuple of two dictionaries:
290
+ - One mapping device name to device.
291
+ - One mapping device name to exception for any failed devices.
287
292
  """
288
-
289
293
  devices: dict[str, AnyDevice] = {}
290
294
  exceptions: dict[str, Exception] = {}
291
295
 
@@ -344,13 +348,14 @@ def extract_dependencies(
344
348
  ) -> Iterable[str]:
345
349
  """Compute dependencies for a device factory. Dependencies are named in the
346
350
  factory function signature, similar to pytest fixtures. For example given
347
- def device_one(): and def device_two(device_one: Readable):, indicate taht
351
+ def device_one(): and def device_two(device_one: Readable):, indicate that
348
352
  device_one is a dependency of device_two.
349
353
 
350
354
  Args:
351
- factories: All factories, mapping of function name -> function
352
- factory_name: The name of the factory in factories whose dependencies need
353
- computing
355
+ factories (Mapping[str, AnyDeviceFactory]): All factories, mapping of
356
+ function name -> function
357
+ factory_name (str): The name of the factory in factories whose dependencies need
358
+ computing
354
359
 
355
360
  Returns:
356
361
  Iterable[str]: Generator of factory names
@@ -358,7 +363,6 @@ def extract_dependencies(
358
363
  Yields:
359
364
  Iterator[Iterable[str]]: Factory names
360
365
  """
361
-
362
366
  for name, param in inspect.signature(factories[factory_name]).parameters.items():
363
367
  if param.default is inspect.Parameter.empty and name in factories:
364
368
  yield name
@@ -371,14 +375,13 @@ def collect_factories(
371
375
  via the return type signature e.g. def my_device() -> ADeviceType:
372
376
 
373
377
  Args:
374
- module: The module to inspect
375
- include_skipped: If True, also load factories with the @skip_device annotation.
376
- Defaults to False.
378
+ module (ModuleType): The module to inspect
379
+ include_skipped (bool, optional): If True, also load factories with the
380
+ @skip_device annotation. Defaults to False.
377
381
 
378
382
  Returns:
379
383
  dict[str, AnyDeviceFactory]: Mapping of factory name -> factory.
380
- """
381
-
384
+ """ # noqa D415
382
385
  factories: dict[str, AnyDeviceFactory] = {}
383
386
 
384
387
  for var in module.__dict__.values():
@@ -445,22 +448,21 @@ def is_v1_device_type(obj: type[Any]) -> bool:
445
448
  def filter_ophyd_devices(
446
449
  devices: Mapping[str, AnyDevice],
447
450
  ) -> tuple[Mapping[str, OphydV1Device], Mapping[str, OphydV2Device]]:
448
- """
449
- Split a dictionary of ophyd and ophyd-async devices
450
- (i.e. the output of make_all_devices) into 2 separate dictionaries of the
451
- different types. Useful when special handling is needed for each type of device.
451
+ """Split a dictionary of ophyd and ophyd-async devices (i.e. the output of
452
+ make_all_devices) into 2 separate dictionaries of the different types. Useful when
453
+ special handling is needed for each type of device.
452
454
 
453
455
  Args:
454
- devices: Dictionary of device name to ophyd or ophyd-async device.
456
+ devices (Mapping[str, AnyDevice]): Dictionary of device name to ophyd or
457
+ ophyd-async device.
455
458
 
456
459
  Raises:
457
460
  ValueError: If anything in the dictionary doesn't come from either library.
458
461
 
459
462
  Returns:
460
463
  Tuple of two dictionaries, one mapping names to ophyd devices and one mapping
461
- names to ophyd-async devices.
464
+ names to ophyd-async devices.
462
465
  """
463
-
464
466
  ophyd_devices = {}
465
467
  ophyd_async_devices = {}
466
468
  for name, device in devices.items():
@@ -474,8 +476,7 @@ def filter_ophyd_devices(
474
476
 
475
477
 
476
478
  def get_beamline_based_on_environment_variable() -> ModuleType:
477
- """
478
- Gets the dodal module for the current beamline, as specified by the
479
+ """Gets the dodal module for the current beamline, as specified by the
479
480
  BEAMLINE environment variable.
480
481
  """
481
482
  beamline = get_beamline_name("")
@@ -525,7 +526,8 @@ def _find_next_run_number_from_files(file_names: list[str]) -> int:
525
526
  def get_run_number(directory: str, prefix: str = "") -> int:
526
527
  """Looks at the numbers coming from all nexus files with the format
527
528
  "{prefix}_(any number}.nxs", and returns the highest number + 1, or 1 if there are
528
- no matching numbers found. If no prefix is given, considers all files in the dir."""
529
+ no matching numbers found. If no prefix is given, considers all files in the dir.
530
+ """
529
531
  nexus_file_names = [
530
532
  file
531
533
  for file in os.listdir(directory)
@@ -1,338 +0,0 @@
1
- dls_dodal-1.69.0.dist-info/licenses/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
2
- dodal/__init__.py,sha256=Ksms_WJF8LTkbm38gEpm1jBpGqcQ8NGvmb2ZJlOE1j8,198
3
- dodal/__main__.py,sha256=kP2S2RPitnOWpNGokjZ1Yq-1umOtp5sNOZk2B3tBPLM,111
4
- dodal/_version.py,sha256=UFXClfIoG_GVAx86W6RvFANz85U9g5mM9teyoGU1_GU,706
5
- dodal/cli.py,sha256=fPFs0ACCf2jEnACCIzEd5xR5ormxRwDKOZjzFlaBC88,4728
6
- dodal/device_manager.py,sha256=rTW-uaOiMPxkvYg7-yDy5MwhhfTCbbY5XkJXV_kcvj0,21029
7
- dodal/log.py,sha256=UckmmyY_SdZePyi5lHnjh-DVw6qvnat3ANa_5-y80Og,9877
8
- dodal/utils.py,sha256=32yIQHW7CQecxClTazqbb0ixbLoGxB0TxZcBGlqSTI8,19481
9
- dodal/beamline_specific_utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
- dodal/beamline_specific_utils/i05_shared.py,sha256=NmXzoJSJ6daReigaONpxxlNTYGGCSkFvgGYQUpjgteM,425
11
- dodal/beamlines/README.md,sha256=K9MkL_GomxlsoTB7Mz-_dJA5NNSbmCfMiutchGg3C8o,404
12
- dodal/beamlines/__init__.py,sha256=kVmxHMi9W1MkrOsVxBK7N1DBFGDrWv4FH1m8_nRxwzo,3242
13
- dodal/beamlines/adsim.py,sha256=KDhAsdhdYlr4CLruJd01UmRRxqO7TRCwBma2rWldWJc,2379
14
- dodal/beamlines/aithre.py,sha256=RRNmzJz4Fu5eHRXKoIJpv1D1fNR5e7wmT34d52QwM9Y,1399
15
- dodal/beamlines/b01_1.py,sha256=H24kiQtF0XnpWBtpsdC_k4w2WU4ibvovU3YPAop_zdg,2830
16
- dodal/beamlines/b07.py,sha256=BfJJso_h2YX1LU0sRNxGeKJzCNRWngV9Kv2Hc3M6zLM,1430
17
- dodal/beamlines/b07_1.py,sha256=Lph4PT0JOoOk_PnRBFZxg1R6N6TqNCrmNL7ybCF2Evc,1637
18
- dodal/beamlines/b16.py,sha256=rK00hEj8KLGNkLZr9omAuoMz_DyLN9rK4eUQssETR9E,1703
19
- dodal/beamlines/b18.py,sha256=ryxrGtcCdwoFgZ8ljWYgr1g9gKvoA7nxkARVxl1IE78,1189
20
- dodal/beamlines/b21.py,sha256=KGPoUogtu5XutVSGZ8LiQgIHOyWbW_9KAt23TetKTHc,3873
21
- dodal/beamlines/i02_1.py,sha256=c4-_XHrrQyPLygn61WvarM6-XRChh0NC3AUrWu5X8XM,2584
22
- dodal/beamlines/i02_2.py,sha256=Xa4bfEibPDRL-17ycirZWrlcdxokm81a9pRfucrhYMg,802
23
- dodal/beamlines/i03.py,sha256=9FlLJnSjopLqz_AxqFxZWAPobard5YDEp0LCYQiIWmw,10491
24
- dodal/beamlines/i03_supervisor.py,sha256=O-v8M-WLR1rN4GugDDC1CHCpunnX2QEk5PPBm0cEMus,517
25
- dodal/beamlines/i04.py,sha256=Odse2lgjATQ-8hGfyDvVoGwTnz68ns1n9EYnbG1-FzQ,8967
26
- dodal/beamlines/i05.py,sha256=ZkSZLJrcZBF_x_dticRq0KM12GVveLBLiCplUus5J9c,1497
27
- dodal/beamlines/i05_1.py,sha256=bzaDqR2doZnoN-dk_oPwWqSGJaVZTDnNtx0wMzGSTp8,714
28
- dodal/beamlines/i06.py,sha256=V0kjC2NPX4fn9et3T8KLbTgNXsyYki4S5swrC61YwAI,1571
29
- dodal/beamlines/i06_1.py,sha256=Rm0es2EnnAypdRQNaOj9uirK5SwktmA-YHM27RAFi9w,763
30
- dodal/beamlines/i07.py,sha256=mnwJPscsXFZnRQ2fKd-FwYiL_VjQu5zbYGQcgg7lplE,1270
31
- dodal/beamlines/i09.py,sha256=M_aZ1QlPYysIJIvZunkmHENdizIhqK13hI-AjC2p3Iw,3056
32
- dodal/beamlines/i09_1.py,sha256=JZLsEL1ybPFlsXYyELEFWY6IgpdgJEa_O9m5Wu6HzNE,2739
33
- dodal/beamlines/i09_2.py,sha256=EKy-2140rKHT3NCDT5XH-fx01Rzala1r6lisgMm-Da4,3475
34
- dodal/beamlines/i10.py,sha256=LC0ii13rVyZj1ziatBAyRoyuutdyyTCkpSvICGv4IGY,4059
35
- dodal/beamlines/i10_1.py,sha256=FxnWjr1u55XgIvnuyTfknnj-xPMNJOAtxObq1y9k518,1062
36
- dodal/beamlines/i10_optics.py,sha256=C8dftjZw1TmdswUMpGoKOF70TsAQ1WAffdQH-1BJ74I,7142
37
- dodal/beamlines/i11.py,sha256=hzW5Lh74zDzUD0vqXQzekoFVWDp8qEIc0OPRm0Qepqs,3643
38
- dodal/beamlines/i13_1.py,sha256=VYVqMN8-njy7YSI08gskRccT-K2paRC9edAx0ah-Cwo,1602
39
- dodal/beamlines/i15.py,sha256=lmUhh1jt5CtD4P_BzkwNufu814aT3uaQlLyDMY_B5AE,5725
40
- dodal/beamlines/i15_1.py,sha256=EKg6BCr3wpHxdmG23kSTZYcNnGQxZbkzzulBLwz_Kew,3903
41
- dodal/beamlines/i16.py,sha256=OQB7jez37jEVQvMCNFZNd6R30TWBcZrJPxpTumsY8go,983
42
- dodal/beamlines/i17.py,sha256=nlebjLsEruFcrpVGXclNHBsnIMtasQKvsBimwIf2-vI,2788
43
- dodal/beamlines/i18.py,sha256=vPGfrbh1CY2W2BXIfCA5PIeVyixS5nEJSxHpla1RM4I,3756
44
- dodal/beamlines/i19_1.py,sha256=aC-R9CEjRZEdSutfYhK9r2rT6J__IOZy4zG95B_fJC8,3466
45
- dodal/beamlines/i19_2.py,sha256=gNRRRimY69zl_e9FRaEFs-fQxWu6oqFwjHjjVs-AJrk,4514
46
- dodal/beamlines/i19_optics.py,sha256=fNdAFRJYFA045l4giGI3V68qijDFE1C8gdvD6fncAio,1181
47
- dodal/beamlines/i20_1.py,sha256=ZLVemp8OJT6csSbTJ5zu9uEoJD4-ZOLFAuOP6s1re_8,2956
48
- dodal/beamlines/i21.py,sha256=ElxLtTga2eeg3s-4IoYb3iAhPR-wcNSqhN9vzol0-9E,3653
49
- dodal/beamlines/i22.py,sha256=XVGYyx6QEhbXJ5DRm-YWnUZKdagv_X8YJNYjmhXT7II,8097
50
- dodal/beamlines/i23.py,sha256=_aByHf88l_GR5VxL8bJtPdCWSKZkbO5vVBJtlOf1BqE,2908
51
- dodal/beamlines/i24.py,sha256=CHrpZK-R3zZ6TQal7acPYunQIFnmHt-nzJ-mzdG4sCQ,4850
52
- dodal/beamlines/k07.py,sha256=jELF4ENfSsPumbFieZDQKP-fDKFeGfox7guhdxJqmD8,1005
53
- dodal/beamlines/k11.py,sha256=sBOl-MLk7FMo10KFykuK5aLqH1zyW4FnI0XXmtQhUfg,978
54
- dodal/beamlines/p38.py,sha256=ohFCTkyqR2MWGK20PrJqAIokiEjDPNTAfMRzrn3T0Mg,5778
55
- dodal/beamlines/p45.py,sha256=tQ7EkWfr7o2okK7Prw1C7DNGYdKPU2ofqjm98wu_-G0,2158
56
- dodal/beamlines/p60.py,sha256=oTLABOZIF7CUMMxipE0GO1Awij52OOiD4LJSS632sDA,1699
57
- dodal/beamlines/p99.py,sha256=Rbi9OvmrGIblctOnZxFG_tqqhALLZ9O3ht4mBcb5vU8,2754
58
- dodal/beamlines/training_rig.py,sha256=VfMMNLdqej50CX17GluuwBbdXaurc5dnWjmoCT20bT4,1593
59
- dodal/common/__init__.py,sha256=y-R5BgS0ms1UKryzkK8eHn8E3NiMVU3VG8upgWC7DcQ,418
60
- dodal/common/coordination.py,sha256=zvY3n8r-eDU2K3O7RlMzS6eoKI_XWHCWS9mcLwHVZXc,1252
61
- dodal/common/crystal_metadata.py,sha256=XGr-X81G9SZvPx5b4nBCH4FOnywyX_zYVy6zwDxIMVM,1926
62
- dodal/common/data_util.py,sha256=Z2DgxQl3AzTB940e_qYVDIHuu_9vWzpbycjKb62SFus,555
63
- dodal/common/device_utils.py,sha256=3hWgLmESiF88fho9bCweZpZH6b5fbbuSZGuSEYXxl4E,1345
64
- dodal/common/enums.py,sha256=Q8RSQBIHTCbhngVUKoznzvwazQ7INsT5NE0BcAgT1U0,404
65
- dodal/common/maths.py,sha256=_nf7Duz7oVnyAdGAKbaoZ_-u_5o-8ApFzghu2A8IWfc,4241
66
- dodal/common/types.py,sha256=fkL7UOwDbe3v2_VJ5f1W5RxR98Wx-Ra-LxUZWkNDtls,486
67
- dodal/common/udc_directory_provider.py,sha256=v5OBaCUwjtQZAsRQUw6LlVL58UvwwDO1l2MKlilXjdk,2403
68
- dodal/common/visit.py,sha256=0KxiIYJolSewuTn9Av-B4NxU2WpQo2l1-WmAO741Du8,5826
69
- dodal/common/watcher_utils.py,sha256=nfBaYh9DPsT0x2JS5x8_e4rVl9bjdPmMqwIQUXuoYac,3168
70
- dodal/common/beamlines/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
71
- dodal/common/beamlines/beamline_parameters.py,sha256=nYTy5TDYegvon6iNCxf7Uez3hbdu9GCoLUmJhRO1qhE,2665
72
- dodal/common/beamlines/beamline_utils.py,sha256=UnDJlRs7p8srjv-peX05jHZBb8J2d2lPSyG9118x560,5286
73
- dodal/common/beamlines/commissioning_mode.py,sha256=KL24Ia4IOkSxi7M4CKRRQQW0T3HUDpj7K3Y5_DtALRA,1314
74
- dodal/common/beamlines/device_helpers.py,sha256=8sasAIFRDwo6ElHqLrXnpj_v7xcEg-29Zhey_e4r9u8,84
75
- dodal/devices/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
76
- dodal/devices/aperture.py,sha256=S7AoIoQg_kFxaQk7HUMijbm1kYkOEi2csbdj76kp1ys,427
77
- dodal/devices/aperturescatterguard.py,sha256=-9XhNGjmO3vl0O-v0N-2LJPkI2ELdR26AyZAdMkThXE,14013
78
- dodal/devices/backlight.py,sha256=y40kR6N3qSFVLRaGU8CjJJpwv_hq2QALf_85fLQqras,1415
79
- dodal/devices/baton.py,sha256=315I_0V73_DYYVT0PBs0luVy4CMqdPo0kLvHBi12MIU,606
80
- dodal/devices/bimorph_mirror.py,sha256=OGe6aCczG0gVco4OvIRLJVxn2kw5F2QG1e06uqhFLTw,4609
81
- dodal/devices/collimation_table.py,sha256=64HunSPJH-L2gZdfIj_RYdOlOuwRFEfMHfLHzu4BAKI,1681
82
- dodal/devices/common_dcm.py,sha256=BmvwnT5mbCmSQI8aGl3GKEfpe7N1axUANEyG-NYgC98,5288
83
- dodal/devices/controllers.py,sha256=W_Ras1c6xLjcOMKPSHN8Z1eCUCH-ktaah2hzQXyuFLk,652
84
- dodal/devices/cryostream.py,sha256=F8-JVl9LvvR0jvFUwhowazwT7q38HnDuVZxRS-1BOnk,4522
85
- dodal/devices/diamond_filter.py,sha256=hySd7HnLdplpPNvBrLddLjO_3LqgD8-99Zr__Sy_GbI,689
86
- dodal/devices/eiger.py,sha256=ssxCeHbZLWIZ36Zv_ghSnMpNq58eTKrEX61B-kr62M0,18138
87
- dodal/devices/eiger_odin.py,sha256=1JoqPppTp99IZCiFOXJZB3h62xXRYKZINxTYXdLnT8c,7480
88
- dodal/devices/eurotherm.py,sha256=rdLldmWYP1PZBckoya6svPy1mDxHYaa1IfMleMPGzD4,3832
89
- dodal/devices/fast_grid_scan.py,sha256=xm2PEPrbqHOQfVrNcXt60S1UT5RtWir6MkdnVlhZNPw,17592
90
- dodal/devices/fast_shutter.py,sha256=FEFDXpRyJIxwasYxCX47Dh2m8BGTP5v1KcU7OeSXF3k,5442
91
- dodal/devices/fluorescence_detector_motion.py,sha256=hJ1M9Zs6Dlw8DDL9APh7yVePlS4tU2hnlySd16hqfwE,346
92
- dodal/devices/flux.py,sha256=1CDsq9yU2-ho8MfYBl50Tl9ABZwpUBHnV486PQXKNoQ,462
93
- dodal/devices/focusing_mirror.py,sha256=2UWVrY6bs6_0i-h6JJ_LAUZPX_FgMzIx04JqZafdtYU,7464
94
- dodal/devices/hutch_shutter.py,sha256=iY3qWxDr8mDlAvN_BYe2gqpXRM1hlfV3ewdwkwh0_v0,3889
95
- dodal/devices/ipin.py,sha256=lDXEnCLXa0XLQUpwzq6X5FUkt08zHXnuD_bIqaTepVI,1215
96
- dodal/devices/linkam3.py,sha256=Lkw7c05XyHEEA83djfVFqz_8HN4kROCRqZwLwvHwRdA,2054
97
- dodal/devices/motors.py,sha256=eag9Z8hGhDbQR9PJGRd4yOVWuMEUqGQ3UcjqtYCn27A,8482
98
- dodal/devices/p45.py,sha256=CImflt7ifaOkV20Uip3S8_fde_GlIIhD16y-54ODfHE,1390
99
- dodal/devices/pgm.py,sha256=grNtQHWP6oSbhmEd12loe9cAFnOn2A7rBlgjwnvH8z8,1182
100
- dodal/devices/positioner.py,sha256=qf_1uYOI1whS0U5sPA3O3mlZYKrPuW3i0gEKI_q-up0,1289
101
- dodal/devices/pressure_jump_cell.py,sha256=YGmllfBya7MryLg3EXS0pzBJDRs_TlgDFxt8TzAwKJQ,8734
102
- dodal/devices/qbpm.py,sha256=FfrWWAHHtYv3fGRT1qljyPpAwoHJYfbooT9CfKg-oXI,465
103
- dodal/devices/robot.py,sha256=hsCCXSOorVZUzQ4opkZtfDOZbhwIyanqNzc00KWzEcI,8225
104
- dodal/devices/s4_slit_gaps.py,sha256=4KdarIQoRqX4ry3LUS1Km7fkjUFahA0VuTd2DvYEqQ8,446
105
- dodal/devices/scintillator.py,sha256=w6YSf1mY_xJKU00TXS_wfzJVKFvXNX9U7Vs8as-33wM,4249
106
- dodal/devices/selectable_source.py,sha256=dyfF1RkUpbM_d6ntqBv9EP70Mp0dxAZqEwHIfUNsyZs,1256
107
- dodal/devices/slits.py,sha256=IJtipn1N5B7pH64frWcF2TFK8mTFwSYXpGt_FMGl68w,1537
108
- dodal/devices/smargon.py,sha256=JlaNPCRWh0dHbslmjuDtlZhVbIz_clmw4eUIgoSj9tM,4986
109
- dodal/devices/status.py,sha256=hVrJS1yooQo6PRumRACoIEh-SKBUKxvBlQl-MtLFUMQ,327
110
- dodal/devices/synchrotron.py,sha256=OHBrTrm4K39XE8BrE9b_Jn_ZfMRyDp9CHCwvmiV-KOc,1989
111
- dodal/devices/tetramm.py,sha256=QrS7gXB5BVkHHSqCJxYnAg2bbqnHTg0e4UZNpF9g0gE,10461
112
- dodal/devices/thawer.py,sha256=RGd9vjLyD4IDTDiP2V0giMZIduk_BJiFy1XRkrCSKY4,611
113
- dodal/devices/turbo_slit.py,sha256=xhcnhfbdcTYSYozogw6Li4fF4ofoPsc350rEyrRdaNE,1460
114
- dodal/devices/undulator.py,sha256=Ohy-5sxSKeb8p8jCORj7VILklkJ6WNYrbVLMFxTMBzs,9223
115
- dodal/devices/v2f.py,sha256=d9f4w5tLxK0S8vrgD85_9W52oEE0uPf912UvLhEWxDM,1248
116
- dodal/devices/watsonmarlow323_pump.py,sha256=xNwjoxW3NJIDkeDWHfb0A8Yj95_KKRXMD9AghvX-WLk,1337
117
- dodal/devices/webcam.py,sha256=UAx2KF0mKi6I-mJJUb5z56MHY-Wd89-tqyPcFbouQFg,2491
118
- dodal/devices/xbpm_feedback.py,sha256=HKLY3k52FPe2G-EAg8ir2LSdeUuGvhRD73ibDZ4mjH8,1418
119
- dodal/devices/aithre_lasershaping/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
120
- dodal/devices/aithre_lasershaping/goniometer.py,sha256=ljdGf7f_fCtgT62e_7HohNoE5CMGxvJkKqPDKkJ1akI,1447
121
- dodal/devices/aithre_lasershaping/laser_robot.py,sha256=vy-I1ASYflFYIUYePhT2l3l7g2iekrIFzLxA0GLmKY8,717
122
- dodal/devices/areadetector/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
123
- dodal/devices/areadetector/plugins/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
124
- dodal/devices/areadetector/plugins/cam.py,sha256=sZzJm5Ez3eWfXZi_EB67wluhZmMQm1UyOc2bJFfzd1U,964
125
- dodal/devices/areadetector/plugins/mjpg.py,sha256=tyJ6azC8eCaM_vhQQMB79E03VA9kljUA_7mBycGMsmw,3205
126
- dodal/devices/attenuator/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
127
- dodal/devices/attenuator/attenuator.py,sha256=-rJYY_bHCDl8NVn3yYPytYIANiOPsz0f-3U1zBsT5pE,6246
128
- dodal/devices/attenuator/filter.py,sha256=xb_8S62ktJdqdNE03PqhsfsTsQyTsRbR9CF1ksfX06M,542
129
- dodal/devices/attenuator/filter_selections.py,sha256=r0TsT3Cylx0wQiBoCsU0Kk8eOupj2wItX9xPUgpm6Lc,1954
130
- dodal/devices/b07/__init__.py,sha256=Zw4VkH-68MLoDveswDpR-lTlzK1-IeNz2W4qtkCO3Hs,109
131
- dodal/devices/b07/enums.py,sha256=GmS6YZEbFH2wEwS1Ni4VNG-2wT98v7NnCzbHqFKo5Pg,1415
132
- dodal/devices/b07_1/__init__.py,sha256=yInDRarid492g7unaL8zIrWSNpRXhgsj8z7TRTRJfjI,281
133
- dodal/devices/b07_1/ccmc.py,sha256=SyxfR8Sd8C7Bx2q0cvItdxP2DOP-ZhbMuAfSvBrbSio,2554
134
- dodal/devices/b07_1/enums.py,sha256=TREiXDSAGFRXR3iUkKADYfm-CmhLmlpGHKZUOQ2Z1as,723
135
- dodal/devices/b16/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
136
- dodal/devices/b16/detector.py,sha256=saI2aFBhT0oTisam5b1mlaMJTRwGT7bHbqPGBP7SDnk,840
137
- dodal/devices/beamsize/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
138
- dodal/devices/beamsize/beamsize.py,sha256=J0xtG9NCPUvlJ0leewWzFpEYY-Oz1GFSOTkSlZ835ms,145
139
- dodal/devices/current_amplifiers/__init__.py,sha256=-MhT-t-GJ83rrvTDBCoWub_NKYkRtu4sEj8-y5XZBP0,782
140
- dodal/devices/current_amplifiers/current_amplifier.py,sha256=erDVtstLNFVb4wdSqWwRCQX_ifPxOc07x_2Ba_8Y1Wg,2660
141
- dodal/devices/current_amplifiers/current_amplifier_detector.py,sha256=YKA769KpU1V4GyYF3ckMgE8sXnaJyzRPUbBqIo7UruM,3968
142
- dodal/devices/current_amplifiers/femto.py,sha256=cnAs-NOHr8ShWBsuJk1b8ysL4EKyym-EK6rkJraWxpc,4488
143
- dodal/devices/current_amplifiers/sr570.py,sha256=tYXFnl9IEUOpPmzJID9auJJrSn1SQvJTuz-uZS_7FK4,7575
144
- dodal/devices/current_amplifiers/struck_scaler_counter.py,sha256=3xTsqOCnLwb8o_YsFGbm0PilOe8HsR4Bz_rRZMDKy-Y,2575
145
- dodal/devices/detector/__init__.py,sha256=-RdACL3tzc3lLArWOoGNje48UUlv2fElOmGOz9yOuO0,317
146
- dodal/devices/detector/det_dim_constants.py,sha256=arBWvzMwybatdSiCMAiwB4Bq1dX-wkLi54xPPfTfQhY,2772
147
- dodal/devices/detector/det_dist_to_beam_converter.py,sha256=nSkhiEESyuzdrWoPu6h3C05DnOhCXa6DZd-9vU5JYc0,1625
148
- dodal/devices/detector/det_resolution.py,sha256=8OW40MhRg56GlLstM1MOkIxa4DY8eg4q0RBUX7k6PHs,3298
149
- dodal/devices/detector/detector.py,sha256=DqQvlgdjIdKErrZqgM9IH7drc-r6N8nhkFk7KwlgYAk,4815
150
- dodal/devices/detector/detector_motion.py,sha256=Ly4nz_AsB-_EDOADMC2u2J0dunpkOMbafVN_dgh3T-E,1389
151
- dodal/devices/electron_analyser/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
152
- dodal/devices/electron_analyser/base/__init__.py,sha256=FVjJ6o4Gy7eXvw-IhF23iUBh4Ux7EiXpB0Pl2DUxjsg,1616
153
- dodal/devices/electron_analyser/base/base_controller.py,sha256=i3AZM6JjO1v_5QA8rjDo86Sp6t2aPlELnEn_woqXe5Y,3372
154
- dodal/devices/electron_analyser/base/base_detector.py,sha256=qNZnf-PS82z250ir9UxGYsGF5ToxvL-y-9gCJWrrWnE,7092
155
- dodal/devices/electron_analyser/base/base_driver_io.py,sha256=Y1uXIbxZS4wrxzAxv8bIJ5eZHyG3rGTTauLNjptjR-A,8985
156
- dodal/devices/electron_analyser/base/base_enums.py,sha256=2QObyZln7pvWyLgixabGGWvfs3aIF98gVSz2B4NS1OM,120
157
- dodal/devices/electron_analyser/base/base_region.py,sha256=e3gFUppmM5zB7YhwY-XwjRoRI7-mlqfgKccGMwfMQOs,7475
158
- dodal/devices/electron_analyser/base/base_util.py,sha256=nGx3vF7eF4SxjzNysoxWbzqmxdSWvcPPHmghw74UuEc,1245
159
- dodal/devices/electron_analyser/base/energy_sources.py,sha256=_JUOQDoqnqyp5Xw_dEo45vKxzFUgWS8gSS2Kqm7CjFk,3246
160
- dodal/devices/electron_analyser/specs/__init__.py,sha256=PiId7pXfFqG0UznwzTROAp3iORuU6UEwn_0ohKBxKNk,315
161
- dodal/devices/electron_analyser/specs/specs_detector.py,sha256=QZFltj9-4e42BWmwT0O3vTCcx6Y6gMAKO5FZmH7yIMk,1740
162
- dodal/devices/electron_analyser/specs/specs_driver_io.py,sha256=SVb0tQGbb6m9DbjmNxfWKCwDVqMSh5a8Ad5RsMb6rZs,4449
163
- dodal/devices/electron_analyser/specs/specs_enums.py,sha256=cXPcbIGEN5ZJJt1KeiNJEtZkkcjQ-fz7dBfsU283zYQ,235
164
- dodal/devices/electron_analyser/specs/specs_region.py,sha256=uF12HNzh1I9csYVS3j-CAGuCHCblVzYFBp_4G7JCnvI,1165
165
- dodal/devices/electron_analyser/vgscienta/__init__.py,sha256=s8acayQN8E0j1H9YEr6Q47Kxu3OtrPuZHk3ARuuot_A,397
166
- dodal/devices/electron_analyser/vgscienta/vgscienta_detector.py,sha256=BGHxIo0vojY140Ed2LBg3fheCR9Uqfb3iKqwR_cCao4,2048
167
- dodal/devices/electron_analyser/vgscienta/vgscienta_driver_io.py,sha256=QADd2CU52BrRwPquHmHO77gX4EY7x-yWmbOfGZhe_k8,3471
168
- dodal/devices/electron_analyser/vgscienta/vgscienta_enums.py,sha256=3vmX67ExATU8clueVp_mCzw3OUQx799oZMc8gyHtMJE,205
169
- dodal/devices/electron_analyser/vgscienta/vgscienta_region.py,sha256=SvQmB_NsdzKhuKkuzvkirsYMaqR-1bOjppVsBP4bBqo,2219
170
- dodal/devices/i02_1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
171
- dodal/devices/i02_1/fast_grid_scan.py,sha256=bfiumNayrISFGYqdcd3Bh6lEZvkOxrqyX_B24LYW1nU,2429
172
- dodal/devices/i02_1/sample_motors.py,sha256=fAHAyeuP4hjOnYsp2x5VQNrTh8Di35ezJV1si2YmKPY,607
173
- dodal/devices/i02_2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
174
- dodal/devices/i03/__init__.py,sha256=Kvukapy4a5lUQ20qaCqYCJzKNaqJn2DfXP5nKZ_Pec8,118
175
- dodal/devices/i03/beamsize.py,sha256=xLbB_PJevGRTYSarILE6ImEmK7tgKQ1xa6D9tl6JjYA,1235
176
- dodal/devices/i03/constants.py,sha256=Y-4tsbmAMEcjV5FBjeRmnA2tl5-LPt5x_icG2xu7XkI,136
177
- dodal/devices/i03/dcm.py,sha256=qK9qcPCedjOVMvKZ0TZaWNeyt7CJRsC-Wpjy44OQf4E,2336
178
- dodal/devices/i03/undulator_dcm.py,sha256=gtlN-t-L9bLeC5E1tN_aibJhpYiSnwt-TNm5ZsPm88M,2867
179
- dodal/devices/i04/__init__.py,sha256=Kvukapy4a5lUQ20qaCqYCJzKNaqJn2DfXP5nKZ_Pec8,118
180
- dodal/devices/i04/beam_centre.py,sha256=joZ2oCabG2caPZDqtj46Hbit5N_TrXy6N3OMpHQIiwA,3004
181
- dodal/devices/i04/beamsize.py,sha256=0Y8Adz_nSSe86uD95BgcZTyZUfisMMX01aoPi8jQx-I,1582
182
- dodal/devices/i04/constants.py,sha256=_Dw28NeXldwRYH-h6YP6OHnyj7h0z4NQs_-RysNby5Q,281
183
- dodal/devices/i04/max_pixel.py,sha256=Ng-P6LN-EkCEJnBbhP2SuBbEKqKrTjzGwOH82f8JrrA,935
184
- dodal/devices/i04/murko_results.py,sha256=nEyeMThecri-cmv0ASBfVyG4AU3_nilrzNAaHQ5i-aQ,10631
185
- dodal/devices/i04/transfocator.py,sha256=gI3UpQ6N0edo3_2aSvW5aWAS3Y1yJcFnZowRNwBvGDI,3250
186
- dodal/devices/i05/__init__.py,sha256=v0Axsf-vMyLyxcbqS8lljJc0BQ5Tw8yVBTWcO3tG_4g,67
187
- dodal/devices/i05/enums.py,sha256=9FHBIexkSfZSTHxUnGupravfG9sVriHcrB15jemkQOQ,191
188
- dodal/devices/i07/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
189
- dodal/devices/i07/dcm.py,sha256=AJpBiLX6t_mAjGKw9LmjXIFG5IIe5Ploe5LxS-ZckT8,1250
190
- dodal/devices/i07/id.py,sha256=CMYY_SOr7wS1KYXPIIRcsKBNgg9vSnopovRV4Y61DZU,1489
191
- dodal/devices/i09/__init__.py,sha256=5AGY_SKtqrU7NeEbzu9ROazPD_C1fEci1LJfdcuz2VY,135
192
- dodal/devices/i09/enums.py,sha256=Rfs6OgEHSSxcH2UiVmlR_5wLwxDmcHonXds0UDVRfCc,551
193
- dodal/devices/i09_1/__init__.py,sha256=dTazun87AkMDXh7J8gIZYJxJth0XUs72qahJ-VvhRBI,72
194
- dodal/devices/i09_1/enums.py,sha256=FwhsvKnEcm9M22U4gcAJi6FE2RaUBZH0jRjNgJUKRqc,1319
195
- dodal/devices/i09_1_shared/__init__.py,sha256=jbSL26A4boUJZKUCoA7JNjVfjZ3ehERlDsw1kPj1OUw,335
196
- dodal/devices/i09_1_shared/hard_energy.py,sha256=77TbYZGidZAlwP9zDE-h0mTMW4Iuf9b30mfnbUV0qJc,3965
197
- dodal/devices/i09_1_shared/hard_undulator_functions.py,sha256=e0kpReW1q4lK4pQYVbg-h9JZxDN-M8a-yaPo1cNuY-0,6205
198
- dodal/devices/i09_2_shared/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
199
- dodal/devices/i09_2_shared/i09_apple2.py,sha256=6WliOiSdTjuO6N5YrvJK4AKAUgT7sSVHoLnpH1ntTU0,245
200
- dodal/devices/i10/__init__.py,sha256=Pa7gI_ulcPO3dN2xpw6tBN1E3CpV3Lj82kmGwIVU7TA,575
201
- dodal/devices/i10/diagnostics.py,sha256=ULSHpaRPVWcP-HgKAJW2rsdPoYZs_MgF6HJoPj39MwU,6339
202
- dodal/devices/i10/i10_apple2.py,sha256=aTmnrrzpW9B2yEO1Lj_mfmTOQqryRo_72rLkaQ9mpJk,6846
203
- dodal/devices/i10/i10_setting_data.py,sha256=69XWgE-YNTiW7C3t67MNcTL5JDDhOo7h-X7DCTpFE5g,164
204
- dodal/devices/i10/mirrors.py,sha256=Zofd0g2f3YvFi_KIHQE_w4dFZNglhmh--65tRnWLuyY,504
205
- dodal/devices/i10/slits.py,sha256=pBstXJnA6j3ftDqei0EZyAPU--M_heqo6hm2DEOqPdc,5040
206
- dodal/devices/i10/rasor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
207
- dodal/devices/i10/rasor/rasor_current_amp.py,sha256=hImaPI3veKiS5YVfYwv-qrQ1AYNBjFVxG_MwTQqtkcc,2368
208
- dodal/devices/i10/rasor/rasor_motors.py,sha256=yWBxsiVhbdkQzhaK1S-nUq_wVntwHgdf6T8c8f7wHUE,1327
209
- dodal/devices/i10/rasor/rasor_scaler_cards.py,sha256=sfWJKNx6pq342PEAlmg_Yt_Tijq7mO1XFjcCDtToQiU,467
210
- dodal/devices/i11/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
211
- dodal/devices/i11/cyberstar_blower.py,sha256=YngbNzNkWVj_LUGEIqo9JRxRQ0PT7zjouj2VljdDlOk,1033
212
- dodal/devices/i11/diff_stages.py,sha256=3kcBRUvIwaqmoVf9MxY0CvU8LBbX_qaGhqbbYEmOri4,1713
213
- dodal/devices/i11/mythen.py,sha256=_fi7SAoWfJ34RyfSNXEyG0gwP0ox6_l9RUN9BF6OBUI,5221
214
- dodal/devices/i11/nx100robot.py,sha256=utycJTnCGV2_miUF00jEJyFcdYqSC4pcvE2fpyg-7Mo,6157
215
- dodal/devices/i11/spinner.py,sha256=PjumM7QRB7iFUtN4b6xCvxKItYUNX2XLLWDupy5LI_M,932
216
- dodal/devices/i13_1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
217
- dodal/devices/i13_1/merlin.py,sha256=mgTFSMJftRzLL-HXAUuJkOYxtyA3Rp8YX0L46JCb30Y,1019
218
- dodal/devices/i13_1/merlin_controller.py,sha256=myfmByOEXyMrlJZfsjOxDHeGQVwZGfsRtzrfSy2001o,1495
219
- dodal/devices/i15/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
220
- dodal/devices/i15/dcm.py,sha256=S9kZaImMUUYDDycP_a7qJWE6UzU1JUq2kcbH_-jmuZU,1337
221
- dodal/devices/i15/focussing_mirror.py,sha256=E6T_c7M2osgHLa7u8eUfQJlXlJbZHtOp95FhP3qZ4gY,1739
222
- dodal/devices/i15/jack.py,sha256=VafCNx-uqkIy0LxbBAhSm_tuC8_SbGCrnTbvQCExAzA,962
223
- dodal/devices/i15/laue.py,sha256=H0nLPH8gqJejBZtZeY0lv84EaE2lqdL3CmXvT9iHhpk,496
224
- dodal/devices/i15/motors.py,sha256=-kGHisSWc_zuV9m2L0mGgmiSiIZ7puLsimddk28h_7s,831
225
- dodal/devices/i15/multilayer_mirror.py,sha256=qdxnn6PBAxK0MgeVUpM8Ukkq4tdX3jhjlmyU-AzzH4M,741
226
- dodal/devices/i15/rail.py,sha256=9cRTRKy6uZBASMhK1wC8K_k_5FfLgHnoh9VblSOTkpQ,428
227
- dodal/devices/i17/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
228
- dodal/devices/i17/i17_apple2.py,sha256=VEGNdPQVIXdvjPn5vhem5KmmKuR-jLl9O6X7AdftuME,2188
229
- dodal/devices/i18/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
230
- dodal/devices/i18/diode.py,sha256=nk5kvn4LsbhczRpCwHOO0_jJTYOz7MP9qm_uvBWuv7c,1468
231
- dodal/devices/i18/kb_mirror.py,sha256=W4R3TeulSjosUqAFIIznyWzje_Y2AoEf9f8N-NkisYM,710
232
- dodal/devices/i19/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
233
- dodal/devices/i19/backlight.py,sha256=c3F8RTessUJmJHlCWATSj-W25qlkAttb-c95eS28lKs,662
234
- dodal/devices/i19/beamstop.py,sha256=JkcvkEmcC3eY3GHrvYNGqv2yDwrfgdpWKVZJWSadWW8,715
235
- dodal/devices/i19/diffractometer.py,sha256=QCEi0Gko6Ja9_ec2vfdazwMspknvX63jcz8hQ2XW1xo,1182
236
- dodal/devices/i19/mapt_configuration.py,sha256=0zUzCSDofQORdaqbgD5NU-Vuf-EljgTKfvFDRDA9IjQ,1717
237
- dodal/devices/i19/pin_col_stages.py,sha256=SAdokjoTmlRcCQQSVTz4jCkBibSsKCye7s5aYtfhsfg,6691
238
- dodal/devices/i19/access_controlled/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
239
- dodal/devices/i19/access_controlled/attenuator_motor_squad.py,sha256=KsU6c-Jb3cwy_iOu1KxQD7gRfswkfCUaI6Ann9TTvkQ,2565
240
- dodal/devices/i19/access_controlled/blueapi_device.py,sha256=ZUt1Am5H4Tm74joLz7dan2_iZk5YZQTWb_h5OFZZSks,4210
241
- dodal/devices/i19/access_controlled/hutch_access.py,sha256=hnClUWCL1qTYzuBMmhXX85jiNak7mbYfyHEh54tZ27U,377
242
- dodal/devices/i19/access_controlled/shutter.py,sha256=D0vNXkIa6IoSoBMyGdw_RQHPlTgJdgzRsKkany0Jv-I,2154
243
- dodal/devices/i20_1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
244
- dodal/devices/i21/__init__.py,sha256=GQB4jkhrWvD1i6LTqIBf_2CDLLL3M9cdwHxjkAHyUdU,74
245
- dodal/devices/i21/enums.py,sha256=asy90S84fBBydYwz89jNeocz04JXpbHn8ynaPzW353c,141
246
- dodal/devices/i22/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
247
- dodal/devices/i22/dcm.py,sha256=abs6U6DOUO8_g2adpynfoc9lQYbLC3tgObSwI9AhKZg,4551
248
- dodal/devices/i22/fswitch.py,sha256=kpgegs4Wv_weBSzbrlXLXqXOOZdzTn3X9k5PlEN5F6c,2881
249
- dodal/devices/i22/nxsas.py,sha256=rQsNZOkgw3P3mHA4NNeGz-ikjhN6WTvlWOaLLPKPfFM,5481
250
- dodal/devices/i24/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
251
- dodal/devices/i24/aperture.py,sha256=dlH_g7OPTBc5QRMd-ADU3_GDTKh668kkMHo4k_JxUcY,770
252
- dodal/devices/i24/beam_center.py,sha256=nQyOif6JtlU_qP7kZP-8wN1ldW81MIbFUykPC1bEm70,446
253
- dodal/devices/i24/beamstop.py,sha256=6tbiQLlcTlp4PCPhHJ_mlHtkv0kz5ArQ99zg9rwTnrw,1133
254
- dodal/devices/i24/commissioning_jungfrau.py,sha256=EpU00AkpsYBwZN33N1pju9x5ZeSGq1kK3ofXp_LnKYU,4376
255
- dodal/devices/i24/dcm.py,sha256=2stTmR-Hx7azjVmMPVRu0gRDrJ-1jjKaWxFrF9IKsJc,1268
256
- dodal/devices/i24/dual_backlight.py,sha256=N0R7M1mHPRmQ4fks5lGU1wrXjOvcW_ZKIXaRoC8aLDE,2084
257
- dodal/devices/i24/focus_mirrors.py,sha256=DYiYLpDw8FJ1LYHxLOxE_om5qGfUo2itzskgqhmQZlg,1763
258
- dodal/devices/i24/pmac.py,sha256=-HYf2HPzaqWvszp4T8TXohdp40-xmKqQq4V0mLvVri8,7028
259
- dodal/devices/i24/vgonio.py,sha256=sxSmcYZayVJPJz_D_91j9PmNor7Tbl1RGQFRrdtESlw,533
260
- dodal/devices/insertion_device/__init__.py,sha256=xFELKzqlyk_cdkQmElyH4eg-5hD_HuyCWNu06Mne7zI,1543
261
- dodal/devices/insertion_device/apple2_controller.py,sha256=Mx-r2M0Yze6zyOyoJhqpJ8iu__ZZTMRA-9j5dVreBOc,15179
262
- dodal/devices/insertion_device/apple2_undulator.py,sha256=mizSUajWUKeOeXT4rO10KwuzIHf_QlOcpu807uUTF9Y,15165
263
- dodal/devices/insertion_device/energy.py,sha256=VhxftXZFe_AgAcRSxCKKZ6lwjVEb9KWecTCa4oBGHOQ,2657
264
- dodal/devices/insertion_device/energy_motor_lookup.py,sha256=ILhcSW13vK7GF3W9j2OVmVApDTRWft3OjwIIAfmRBDM,2705
265
- dodal/devices/insertion_device/enum.py,sha256=IQgVUiY23hcOk3G073OAspeRJ9V4YEx2MntKlUt0Nqk,265
266
- dodal/devices/insertion_device/lookup_table_models.py,sha256=g9c4j1V31I8jj-IxM1PX8QXeIdB0pH_EKZJOh3PmvGc,9873
267
- dodal/devices/insertion_device/polarisation.py,sha256=F6oSoApZp0ygcFYt4RxCGzbjhCUyxYWDSH0cSSdcbYw,1332
268
- dodal/devices/mx_phase1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
269
- dodal/devices/mx_phase1/beamstop.py,sha256=zWdZp0j9lCg4YzsZ7GSR3xEcvMfMTJoMO6XdgiC53p4,3765
270
- dodal/devices/oav/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
271
- dodal/devices/oav/oav_calculations.py,sha256=pgQmqot9avffVRjY-NkboKnGxPEtwSovWSDMQD1icvg,2746
272
- dodal/devices/oav/oav_detector.py,sha256=7Bup2mx09--W7IZFJN-sNl93KzIeErNzRS8CWgOG92Q,11011
273
- dodal/devices/oav/oav_parameters.py,sha256=gBFJwJbPGXyyXWxxhJIRhM5lAF_JxqSGOFOUW8oKL-Q,7017
274
- dodal/devices/oav/oav_to_redis_forwarder.py,sha256=4F9FuAM0d5vWEUCeLmyNLQl6IUK89Vttw2rX1Kw-mGQ,6400
275
- dodal/devices/oav/utils.py,sha256=6mRmA5s3QzTX97pJWhxnkQF1h7blelPLGEDc61KzMAE,4211
276
- dodal/devices/oav/pin_image_recognition/__init__.py,sha256=s5cdeJ6EuKAA-e5n4laaWNlYHza87frPYVC809N3TOw,6573
277
- dodal/devices/oav/pin_image_recognition/manual_test.py,sha256=h1Rto6ZDCB3jWhjSy9N8ECxRN583iYDJr9LxrTJ8kfE,903
278
- dodal/devices/oav/pin_image_recognition/utils.py,sha256=HPPMh4dTXvS4Jr9DqAXkanWQfFi7sA5kOcqLRpT2kjE,9448
279
- dodal/devices/oav/snapshots/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
280
- dodal/devices/oav/snapshots/grid_overlay.py,sha256=CdvCdTKMCiwMwxm2lV28KpcIUSXlscZmWxb73_KKmiI,3694
281
- dodal/devices/oav/snapshots/snapshot.py,sha256=Ksjy6B2wyxFdMyHAPSPcTVhx_UTEd_T9JDnTDMG4VJ0,499
282
- dodal/devices/oav/snapshots/snapshot_image_processing.py,sha256=nNBOKX0JwBh4AJWflYueEbKEJ_tvIDa4Y5mNgS8RFv0,2318
283
- dodal/devices/oav/snapshots/snapshot_with_grid.py,sha256=04MgMrclfB3cJuv2AmYE8oqQscUAr1JVmQIb5DIa-rU,2448
284
- dodal/devices/p60/__init__.py,sha256=cLrjUaHNJRtRBb1ic_LTlxIi_nH6_hZN8-5gWCt0Q6w,229
285
- dodal/devices/p60/enums.py,sha256=S0dFIG4k1aI995q-SSZYfKYiXRog_SnTTOVHOtP-qug,521
286
- dodal/devices/p60/lab_xray_source.py,sha256=CrvJYNspp4xgmad_VSUwaMG39L5S8sDRiD2wNrmXjEg,603
287
- dodal/devices/p99/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
288
- dodal/devices/p99/andor2_point.py,sha256=zBoIou7VVzs-tAq3M29XL2xYV8aYZRKPYCGKRLk7MA0,1417
289
- dodal/devices/p99/sample_stage.py,sha256=DvHU556Gp0wFiufZiwY3o2W4xmsCL5uSwNnhd8HPAnc,528
290
- dodal/devices/temperture_controller/__init__.py,sha256=AV5Bxci_4xPwwv0zg3fp6N8Zx7Z7XKt4fzMQzQt-Fbo,128
291
- dodal/devices/temperture_controller/lakeshore/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
292
- dodal/devices/temperture_controller/lakeshore/lakeshore.py,sha256=AK3-iRMLUx7dBQHc7pYzfY1sulVfzMJZ0Cuk-FNCi9Y,6407
293
- dodal/devices/temperture_controller/lakeshore/lakeshore_io.py,sha256=OSvJv-vtWIoDuvqGAbg9_3QvSfIA2iBEleJJ7M2-gO4,3914
294
- dodal/devices/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
295
- dodal/devices/util/adjuster_plans.py,sha256=c40PFZpXFw0YmJLh9jU4VIb8vRxHyafZlmvprTKAOhM,824
296
- dodal/devices/util/epics_util.py,sha256=4useFL8ngsVF08fhOn48BlnO4oh0T4sEKqjdS6mjvG0,4687
297
- dodal/devices/util/lookup_tables.py,sha256=8rip4fQI3YaYNcnUPiWF5Bhq9UXJSxFFfqJaFU4a_LU,3706
298
- dodal/devices/xspress3/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
299
- dodal/devices/xspress3/xspress3.py,sha256=OerapEy-IuK7EFz13B5z0BzBmESVl6pYUlqAWHIwJck,4555
300
- dodal/devices/xspress3/xspress3_channel.py,sha256=w8tAx2lz5kJ_LeJ_eb_4o--Dtt8MRijsYNgDG6oEIVg,1626
301
- dodal/devices/zebra/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
302
- dodal/devices/zebra/zebra.py,sha256=yaY26Vdl-j-HAKR162rx5h-UUqyMANiHoF7NI91Ee8Q,10072
303
- dodal/devices/zebra/zebra_constants_mapping.py,sha256=QtBDW8Xtsm1aDZYoAN5RbRuacB3pspBAp5BnVHk9AGc,4212
304
- dodal/devices/zebra/zebra_controlled_shutter.py,sha256=hrSD1oRW8BY67ub_oggjp6cvhqlRQWlXYsGtn9HBGhk,1876
305
- dodal/devices/zocalo/__init__.py,sha256=76YCA9dS0MF4AqSa-r5ss6oOgKVVjmVcbQYGtuOyeFA,498
306
- dodal/devices/zocalo/zocalo_constants.py,sha256=vu7Xjz7UNEpBUWEEBxDvP4bVFkZIN6NLGfQDpWbCjH8,98
307
- dodal/devices/zocalo/zocalo_interaction.py,sha256=GFukU9xqagQtVSDg5BrL23jxl1w8wjs4b4NLLqdFfpk,3584
308
- dodal/devices/zocalo/zocalo_results.py,sha256=czYNpOurzBJBfl4OS0Uxpjpp09QFDtJprXyBctqPu2c,12659
309
- dodal/parameters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
310
- dodal/parameters/experiment_parameter_base.py,sha256=vONep-llSqhM0OpVj3zFUxdnzRQpu9y9mPhh2HauEJE,226
311
- dodal/plan_stubs/__init__.py,sha256=HbaQ9K1pSznrmDecSRIhClLWercMRuO9G7GoFvtZ6lY,168
312
- dodal/plan_stubs/check_topup.py,sha256=3gyLHfHNQBCgEWuAg4QE-ONx7y2Do1vVv5HP8ss0Z1I,5371
313
- dodal/plan_stubs/data_session.py,sha256=Syc6XKaN1usf7bNWOez8_vAH3byrcROqskmBrSUWa4Y,2132
314
- dodal/plan_stubs/motor_utils.py,sha256=smYhhkSfDHQrq_UPa7Szhhyx_HlwnP_1srG0JkiDwnY,4478
315
- dodal/plan_stubs/wrapped.py,sha256=kC8HH7bx3-sLYu2oieY_502tAdT2OECF8n-fqoL5Bfc,4266
316
- dodal/plans/__init__.py,sha256=Hi-PVPyOMWcnbggtrORhhOCsH9TXTCW_mgxYVr5EKEU,94
317
- dodal/plans/bimorph.py,sha256=JxDmZDiEvZnz5f22tlaoyivpnaNGiX8kSL82qz5uvMM,11738
318
- dodal/plans/configure_arm_trigger_and_disarm_detector.py,sha256=YHpuiGoyblFi0quYTrIAa1oAtIb-eQk7K7Hjg4o434Q,6095
319
- dodal/plans/load_panda_yaml.py,sha256=OF-ZygZyAyQEUdrAWiIxWZ6QhAsVx4Mm9ngRYB1mzKI,433
320
- dodal/plans/save_panda.py,sha256=X-zR5GysBPp3M7ZpEYEqCUSc4nJYzHJBA44e52uQ6F4,3099
321
- dodal/plans/spec_path.py,sha256=Q0AcvTKRT401iGMRDSqK-D523UX5_ofiVMZ_rNXKOx8,2074
322
- dodal/plans/verify_undulator_gap.py,sha256=8FirCLRuDreqIRYTJfFuaefrgInoztKKajD6T-t07yw,638
323
- dodal/plans/wrapped.py,sha256=BPMw__RcWvk9v5XnhMsi9_k4KsDEbmXogzD2n1ecbUg,2098
324
- dodal/plans/preprocessors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
325
- dodal/plans/preprocessors/verify_undulator_gap.py,sha256=cBZEGq8TW1jrXFXB00iClQVXSEaE_jP_rHMY9WTgYyY,1813
326
- dodal/testing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
327
- dodal/testing/electron_analyser/__init__.py,sha256=-lc1opD2dCv0x678-J-ApOhHtvEvcslfOQ7E613U8-Y,118
328
- dodal/testing/electron_analyser/device_factory.py,sha256=mLeWQems_xBmmxPjyUEBhcp8VIsasY4TsUnVOe10ZaE,2252
329
- dodal/testing/fixtures/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
330
- dodal/testing/fixtures/run_engine.py,sha256=_DQivl-pAAoSVpX60XT4jLLmPBJHahCkaVAI3gnl3q8,4208
331
- dodal/testing/fixtures/utils.py,sha256=jy3mfAAn_TFQ7gqCec-OiOlZkaNLUH3TESW2oohvNgo,1861
332
- dodal/testing/fixtures/devices/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
333
- dodal/testing/fixtures/devices/apple2.py,sha256=5FbO1YACBF8aM82X9_36gPqk6rjdy1xRu8OdfdPrxAM,2727
334
- dls_dodal-1.69.0.dist-info/METADATA,sha256=wghMAET73Z9p5xNIrVKnWuVXHszZSNkbSrG38fwtbSk,15601
335
- dls_dodal-1.69.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
336
- dls_dodal-1.69.0.dist-info/entry_points.txt,sha256=0IO1Bjlnv0vJSSFdGEZ-S_pqQNkE2FnPTA6f0-aTBs8,87
337
- dls_dodal-1.69.0.dist-info/top_level.txt,sha256=xIozdmZk_wmMV4wugpq9-6eZs0vgADNUKz3j2UAwlhc,6
338
- dls_dodal-1.69.0.dist-info/RECORD,,
@@ -1,14 +0,0 @@
1
- from dodal.common.beamlines.beamline_utils import device_factory
2
- from dodal.devices.i05.enums import Grating
3
- from dodal.devices.pgm import PlaneGratingMonochromator
4
- from dodal.utils import BeamlinePrefix
5
-
6
- PREFIX = BeamlinePrefix("i05", "I")
7
-
8
-
9
- @device_factory()
10
- def pgm() -> PlaneGratingMonochromator:
11
- return PlaneGratingMonochromator(
12
- prefix=f"{PREFIX.beamline_prefix}-OP-PGM-01:",
13
- grating=Grating,
14
- )
@@ -1,3 +0,0 @@
1
- from dodal.devices.b07.enums import Grating, LensMode, PsuMode
2
-
3
- __all__ = ["Grating", "LensMode", "PsuMode"]