dls-dodal 1.36.0__py3-none-any.whl → 1.36.2__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 (44) hide show
  1. {dls_dodal-1.36.0.dist-info → dls_dodal-1.36.2.dist-info}/METADATA +33 -33
  2. {dls_dodal-1.36.0.dist-info → dls_dodal-1.36.2.dist-info}/RECORD +39 -39
  3. {dls_dodal-1.36.0.dist-info → dls_dodal-1.36.2.dist-info}/WHEEL +1 -1
  4. dodal/_version.py +2 -2
  5. dodal/beamlines/__init__.py +1 -0
  6. dodal/beamlines/adsim.py +75 -0
  7. dodal/beamlines/b01_1.py +16 -31
  8. dodal/beamlines/i22.py +124 -265
  9. dodal/beamlines/i24.py +72 -7
  10. dodal/beamlines/p38.py +16 -1
  11. dodal/beamlines/p99.py +22 -53
  12. dodal/beamlines/training_rig.py +16 -26
  13. dodal/cli.py +54 -8
  14. dodal/common/beamlines/beamline_utils.py +32 -2
  15. dodal/common/beamlines/device_helpers.py +2 -0
  16. dodal/devices/adsim.py +10 -10
  17. dodal/devices/attenuator.py +15 -5
  18. dodal/devices/dcm.py +5 -4
  19. dodal/devices/fast_grid_scan.py +21 -46
  20. dodal/devices/focusing_mirror.py +20 -6
  21. dodal/devices/i24/beam_center.py +12 -0
  22. dodal/devices/i24/focus_mirrors.py +60 -0
  23. dodal/devices/i24/pilatus_metadata.py +44 -0
  24. dodal/devices/linkam3.py +1 -1
  25. dodal/devices/motors.py +14 -10
  26. dodal/devices/oav/oav_detector.py +2 -2
  27. dodal/devices/oav/pin_image_recognition/__init__.py +4 -7
  28. dodal/devices/oav/utils.py +1 -0
  29. dodal/devices/p99/sample_stage.py +12 -16
  30. dodal/devices/pressure_jump_cell.py +299 -0
  31. dodal/devices/robot.py +1 -1
  32. dodal/devices/tetramm.py +1 -1
  33. dodal/devices/undulator.py +4 -1
  34. dodal/devices/undulator_dcm.py +7 -19
  35. dodal/devices/zocalo/zocalo_results.py +7 -7
  36. dodal/utils.py +151 -2
  37. dodal/adsim.py +0 -17
  38. dodal/devices/areadetector/__init__.py +0 -10
  39. dodal/devices/areadetector/adaravis.py +0 -101
  40. dodal/devices/areadetector/adsim.py +0 -47
  41. dodal/devices/areadetector/adutils.py +0 -81
  42. {dls_dodal-1.36.0.dist-info → dls_dodal-1.36.2.dist-info}/LICENSE +0 -0
  43. {dls_dodal-1.36.0.dist-info → dls_dodal-1.36.2.dist-info}/entry_points.txt +0 -0
  44. {dls_dodal-1.36.0.dist-info → dls_dodal-1.36.2.dist-info}/top_level.txt +0 -0
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dls-dodal
3
- Version: 1.36.0
3
+ Version: 1.36.2
4
4
  Summary: Ophyd devices and other utils that could be used across DLS beamlines
5
5
  Author-email: Dominic Oram <dominic.oram@diamond.ac.uk>
6
- License: Apache License
6
+ License: Apache License
7
7
  Version 2.0, January 2004
8
8
  http://www.apache.org/licenses/
9
9
 
@@ -216,51 +216,51 @@ Description-Content-Type: text/markdown
216
216
  License-File: LICENSE
217
217
  Requires-Dist: click
218
218
  Requires-Dist: ophyd
219
- Requires-Dist: ophyd-async ==0.8.0a4
219
+ Requires-Dist: ophyd-async>=0.8.0a5
220
220
  Requires-Dist: bluesky
221
221
  Requires-Dist: pyepics
222
222
  Requires-Dist: dataclasses-json
223
223
  Requires-Dist: pillow
224
- Requires-Dist: zocalo >=1.0.0
224
+ Requires-Dist: zocalo>=1.0.0
225
225
  Requires-Dist: requests
226
226
  Requires-Dist: graypy
227
- Requires-Dist: pydantic >=2.0
227
+ Requires-Dist: pydantic>=2.0
228
228
  Requires-Dist: opencv-python-headless
229
229
  Requires-Dist: aioca
230
230
  Requires-Dist: p4p
231
- Requires-Dist: numpy <2.0
231
+ Requires-Dist: numpy<2.0
232
232
  Requires-Dist: aiofiles
233
233
  Requires-Dist: aiohttp
234
234
  Requires-Dist: redis
235
235
  Requires-Dist: deepdiff
236
- Requires-Dist: scanspec >=0.7.3
236
+ Requires-Dist: scanspec>=0.7.3
237
237
  Provides-Extra: dev
238
- Requires-Dist: black ; extra == 'dev'
239
- Requires-Dist: diff-cover ; extra == 'dev'
240
- Requires-Dist: mypy ; extra == 'dev'
241
- Requires-Dist: myst-parser ; extra == 'dev'
242
- Requires-Dist: ophyd-async[sim] ; extra == 'dev'
243
- Requires-Dist: pipdeptree ; extra == 'dev'
244
- Requires-Dist: pre-commit ; extra == 'dev'
245
- Requires-Dist: psutil ; extra == 'dev'
246
- Requires-Dist: pydata-sphinx-theme >=0.12 ; extra == 'dev'
247
- Requires-Dist: pyright ; extra == 'dev'
248
- Requires-Dist: pytest ; extra == 'dev'
249
- Requires-Dist: pytest-asyncio ; extra == 'dev'
250
- Requires-Dist: pytest-cov ; extra == 'dev'
251
- Requires-Dist: pytest-random-order ; extra == 'dev'
252
- Requires-Dist: ruff ; extra == 'dev'
253
- Requires-Dist: sphinx <7.4.6 ; extra == 'dev'
254
- Requires-Dist: sphinx-autobuild ; extra == 'dev'
255
- Requires-Dist: sphinx-copybutton ; extra == 'dev'
256
- Requires-Dist: sphinxcontrib-mermaid ; extra == 'dev'
257
- Requires-Dist: sphinx-design ; extra == 'dev'
258
- Requires-Dist: sphinx-autodoc-typehints ; extra == 'dev'
259
- Requires-Dist: tox-direct ; extra == 'dev'
260
- Requires-Dist: types-requests ; extra == 'dev'
261
- Requires-Dist: types-mock ; extra == 'dev'
262
- Requires-Dist: types-PyYAML ; extra == 'dev'
263
- Requires-Dist: types-aiofiles ; extra == 'dev'
238
+ Requires-Dist: black; extra == "dev"
239
+ Requires-Dist: diff-cover; extra == "dev"
240
+ Requires-Dist: mypy; extra == "dev"
241
+ Requires-Dist: myst-parser; extra == "dev"
242
+ Requires-Dist: ophyd_async[sim]; extra == "dev"
243
+ Requires-Dist: pipdeptree; extra == "dev"
244
+ Requires-Dist: pre-commit; extra == "dev"
245
+ Requires-Dist: psutil; extra == "dev"
246
+ Requires-Dist: pydata-sphinx-theme>=0.12; extra == "dev"
247
+ Requires-Dist: pyright; extra == "dev"
248
+ Requires-Dist: pytest; extra == "dev"
249
+ Requires-Dist: pytest-asyncio; extra == "dev"
250
+ Requires-Dist: pytest-cov; extra == "dev"
251
+ Requires-Dist: pytest-random-order; extra == "dev"
252
+ Requires-Dist: ruff; extra == "dev"
253
+ Requires-Dist: sphinx<7.4.6; extra == "dev"
254
+ Requires-Dist: sphinx-autobuild; extra == "dev"
255
+ Requires-Dist: sphinx-copybutton; extra == "dev"
256
+ Requires-Dist: sphinxcontrib-mermaid; extra == "dev"
257
+ Requires-Dist: sphinx-design; extra == "dev"
258
+ Requires-Dist: sphinx-autodoc-typehints; extra == "dev"
259
+ Requires-Dist: tox-direct; extra == "dev"
260
+ Requires-Dist: types-requests; extra == "dev"
261
+ Requires-Dist: types-mock; extra == "dev"
262
+ Requires-Dist: types-PyYAML; extra == "dev"
263
+ Requires-Dist: types-aiofiles; extra == "dev"
264
264
 
265
265
  [![CI](https://github.com/DiamondLightSource/dodal/actions/workflows/ci.yml/badge.svg)](https://github.com/DiamondLightSource/dodal/actions/workflows/ci.yml)
266
266
  [![Coverage](https://codecov.io/gh/DiamondLightSource/dodal/branch/main/graph/badge.svg)](https://codecov.io/gh/DiamondLightSource/dodal)
@@ -1,27 +1,27 @@
1
1
  dodal/__init__.py,sha256=Ksms_WJF8LTkbm38gEpm1jBpGqcQ8NGvmb2ZJlOE1j8,198
2
2
  dodal/__main__.py,sha256=kP2S2RPitnOWpNGokjZ1Yq-1umOtp5sNOZk2B3tBPLM,111
3
- dodal/_version.py,sha256=x0utt4SxT0Rvm84NfrkoVlob-vmxNptNpw0IPhaGKKU,413
4
- dodal/adsim.py,sha256=OW2dcS7ciD4Yq9WFw4PN_c5Bwccrmu7R-zr-u6ZCbQM,497
5
- dodal/cli.py,sha256=_crmaHchxphSW8eEJB58_XZIeK82aiUv9bV7tpz-LpA,2122
3
+ dodal/_version.py,sha256=eqat9FvXyrftwP2dajRS3LWZiDD9Pay4_MD5eY1_jxU,413
4
+ dodal/cli.py,sha256=NieWNUgLUxyck1rHoFAPJjX1xXLzHNdQ-s4wvxYFfps,3757
6
5
  dodal/log.py,sha256=0to7CRsbzbgVfAAfKRAMhsaUuKqF2-7CGdQc-z8Uhno,9499
7
- dodal/utils.py,sha256=DIlAnz5gqaqqTB9NvAwl9Mk-em6idE7Rd29mBkAmvXc,12048
6
+ dodal/utils.py,sha256=h2sNmTlsaznfxusV1Xj_mXtNjzsWjWAgmps6I0YNA3U,18097
8
7
  dodal/beamline_specific_utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
8
  dodal/beamline_specific_utils/i03.py,sha256=P6Ls4FoVtcacH0RJM3v6ZwwGx27oMppcBdW0la-ohTY,377
10
9
  dodal/beamlines/README.md,sha256=K9MkL_GomxlsoTB7Mz-_dJA5NNSbmCfMiutchGg3C8o,404
11
- dodal/beamlines/__init__.py,sha256=WWXqkXkufRUNFSC_b0PoHSkyKo7Tn8wNmnQCr9klh2o,3054
12
- dodal/beamlines/b01_1.py,sha256=nH1CzeGXc9kAZBxISsuQF33On9FuWkwFriGKfU8Qs5g,2176
10
+ dodal/beamlines/__init__.py,sha256=FsS1hMz9nqwTP12UtCJsfVn712mFElcBq2kKKpscp9k,3074
11
+ dodal/beamlines/adsim.py,sha256=DUAFS1ueoZ6DK2cmZkiEm3NElnaro1mUvyodv14pSmU,1839
12
+ dodal/beamlines/b01_1.py,sha256=0gLjg0O9ttMjHzszSyJ_GT3fnoAB6u4aJ4MdAfjJbHA,1788
13
13
  dodal/beamlines/i03.py,sha256=WOMkGTcrrKqoBNeRObumMA8Nlo404uIr2ccfn8gK-zs,18063
14
14
  dodal/beamlines/i04.py,sha256=z8LUbhyfUDU08oSp85hg7hFE8FJkAyLsqPUQScs5SUA,14567
15
15
  dodal/beamlines/i10.py,sha256=0ZoFe1vuwNiP2AvNACxuN0OMXJ4DcQ3Oqa0L-w5Ch_M,7744
16
16
  dodal/beamlines/i13_1.py,sha256=csXHrdwUh4sXTmb4X6ZiiSS_XxRkNShsVoBMxYI6rG0,1833
17
17
  dodal/beamlines/i20_1.py,sha256=MaPgONHqpoZuBtkiKEzYtViJnKBM2_ekeP4OdbmuXHE,1158
18
- dodal/beamlines/i22.py,sha256=0_-Q1teOnty76-fHLI_ZudziRAq3DIkH8KeK7Db1KZ4,10246
18
+ dodal/beamlines/i22.py,sha256=tzx8w86uvJHo5TuwPoIUErB7C5mGhqTzlv45qrppld0,7228
19
19
  dodal/beamlines/i23.py,sha256=2j5qLoqE_hg9ETHqNkOVu7LLkVB8qalgXeORnVYKN_I,1075
20
- dodal/beamlines/i24.py,sha256=UBuxiql4JQRYddr1Mp017Edzz0HSMwi4ghJ9HdBNluk,6467
21
- dodal/beamlines/p38.py,sha256=EeJJxfw7uMy6jPA_D7ug0ubAhTBCndPwjvcvR1T1lfw,8238
20
+ dodal/beamlines/i24.py,sha256=w9xkufc7CluVj5nvQww1B7k8VN5RzNQ6AsX8bfyAi9k,8544
21
+ dodal/beamlines/p38.py,sha256=JJbclLYoRdIxcpzpW4oTj77YJ001CdEAM0bKRk7seYI,8735
22
22
  dodal/beamlines/p45.py,sha256=N4SDTIFok3uMqb37higZHMr3xRjxItsT4ib_KacKKAE,2935
23
- dodal/beamlines/p99.py,sha256=mHMYi1M_jgSB9SrOPadxvPuMrxG8LmJOYtU0Iw6fnIQ,1708
24
- dodal/beamlines/training_rig.py,sha256=yagMEQruA1iTOeQCNpux-6xOtkBuB-hhGvAJwQ5c9bg,1846
23
+ dodal/beamlines/p99.py,sha256=I6c_3NbvEPOpy2z1uwLRqwCkd83Sf15-OXEykLkn0-c,910
24
+ dodal/beamlines/training_rig.py,sha256=qAsUV4X1hxQFIjuQG92UMwYtE0nu1_hL4cP1zSiCe3Y,1698
25
25
  dodal/common/__init__.py,sha256=ZC4ICKUDB0BDxRaVy8nmqclVmDBne-dPtk6UJsoFq6I,258
26
26
  dodal/common/coordination.py,sha256=OxIjDiO1-9A9KESRPFtzwkvvQlavbgA5RHemlbubBPg,1168
27
27
  dodal/common/crystal_metadata.py,sha256=IKhe_nCbsuIV2W5OvPzIQ-FXfusQ2d7VJ-xH899dZIc,1924
@@ -32,34 +32,35 @@ dodal/common/udc_directory_provider.py,sha256=H-9f6uSVGuA8jyiErPi8ikCw1JDrhRAJv-
32
32
  dodal/common/visit.py,sha256=2UbbCmgOjZWSCxFzE9RYiTJhA_IoVOegma-Jv-PJqps,5787
33
33
  dodal/common/beamlines/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
34
34
  dodal/common/beamlines/beamline_parameters.py,sha256=oIPHooqu5vTAwfqZutsKbzwdi9nvFF8568Mz7jrK5rI,3618
35
- dodal/common/beamlines/beamline_utils.py,sha256=6RCOnjVcrocfOyKDb2gBlvu2EymS9tUgvQexKrUjUV4,4335
36
- dodal/common/beamlines/device_helpers.py,sha256=s79js7no9k8JMfG7NvdmFomSP5m5VDQ6th_Hsbx1znA,939
35
+ dodal/common/beamlines/beamline_utils.py,sha256=LCUt58Y2wRd15PdMIYSeHiKhWVYgt6UCT1BDgeFbyGk,5243
36
+ dodal/common/beamlines/device_helpers.py,sha256=aFzYa4YOPcbrvwoW1k3OrN6NVLYYmMPR8YkCpHHe-98,962
37
37
  dodal/devices/CTAB.py,sha256=5_261Ox6NG2cJIzzwnjWz289BG0nZoE0wKOaI5V5jqM,1998
38
38
  dodal/devices/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
39
- dodal/devices/adsim.py,sha256=dMU0TKIuiODHYFHQOH4_5UvB8iJtaJEtjqaEDGjcU-w,311
39
+ dodal/devices/adsim.py,sha256=vCexraF4zLssHdjfPod-XuQGJE_sWoCttFdx__HDS8w,488
40
40
  dodal/devices/aperture.py,sha256=yyw2ei3gM_lmZWDQ6VTbydB58RCDTen_nqBZyoTP2IM,583
41
41
  dodal/devices/aperturescatterguard.py,sha256=PRNnGbxYKFWoa1m70Mz-6Ta4NtFG0ShUprBvv2viUeI,8993
42
42
  dodal/devices/apple2_undulator.py,sha256=HtjHiDX80n_nzabuFcUioH-gWH1a6VjZzw_xStq7S4w,22470
43
- dodal/devices/attenuator.py,sha256=6IAPr8XmLxUOHC8g7Zt8MR1trMEDOxO5JkLphd6LbRg,2582
43
+ dodal/devices/attenuator.py,sha256=SEDnnNeUpwBArJbPcwHyr5BwkHO1Jvgsrw1bpFz5u-o,2894
44
44
  dodal/devices/backlight.py,sha256=nQIr3J-I-OXnOUoWmr3ruy3nhq_q2US1KXC4NrGG_2U,1634
45
45
  dodal/devices/cryostream.py,sha256=K-ldpredpeDTzNt4qtQMg99nKJNjBYoXBbK0WJGexzw,656
46
- dodal/devices/dcm.py,sha256=cc531sQbed1yX6pWhizUvszLhQczWatMYMZ3cEp3FHA,2559
46
+ dodal/devices/dcm.py,sha256=JbyxLnrS68nnnv39l9XEWgJgXUBqxX6aFo19MZnL36E,2574
47
47
  dodal/devices/diamond_filter.py,sha256=A--RHd7WuH-IBhvCyENcRCTP4K-mm_Kqpa0pojpHZow,1098
48
48
  dodal/devices/eiger.py,sha256=VGGgkSz8AzSOP3rpehs2GwPHnOGz0OKsRP6U_FYbBA4,15337
49
49
  dodal/devices/eiger_odin.py,sha256=oZl16K-Qb2yL6tK1fyDQvqbbhhvYMSVcf_e2CjlqMa4,7409
50
- dodal/devices/fast_grid_scan.py,sha256=DfO4w8ivQJACurYO_OEoXYTAMa2qUc5P-bxYCkjRKkQ,11967
50
+ dodal/devices/fast_grid_scan.py,sha256=dKF2-8CNmm-LaMXBkqkO31pTcAAwiAXznEeB6tg0f6E,11149
51
51
  dodal/devices/fluorescence_detector_motion.py,sha256=-1qCSvW0PdT0m6BcoLxrtc0OJ5UDIBsEe11EOLr-gFw,501
52
52
  dodal/devices/flux.py,sha256=RtPStHw7Mad0igVKntKWVZfuZn2clokVJqH14HLix6M,198
53
- dodal/devices/focusing_mirror.py,sha256=Jgw-06PyYkyRsue3K9yJmFwjLhdOgOHZX9yilUOG1oQ,6163
53
+ dodal/devices/focusing_mirror.py,sha256=vdUPkwyCAZBSR3LQ-EojDOoxVy1ZmOaD_nevETbj7BA,6592
54
54
  dodal/devices/hutch_shutter.py,sha256=WXY9JwqAa5prbf72IP7_MTKndPDtAltCpPJlNbq-F_0,3313
55
55
  dodal/devices/ipin.py,sha256=eq5jlKw7WGQi8VLrAWpaAIsZmfiVf-5Q0td_B22H6A4,473
56
- dodal/devices/linkam3.py,sha256=fRcTxXF772f6lZIB0L7vhy5i-YzDGth0rQEuC-GH64M,3864
56
+ dodal/devices/linkam3.py,sha256=O1ufCb5ce6nfGXVwiO3I1WEnZ_Jp0azWxBcrZ7PWQm4,3869
57
57
  dodal/devices/logging_ophyd_device.py,sha256=dUVE-XhWA56WUXez0mrc4sf322CXY3MVLreTycO5j_A,668
58
- dodal/devices/motors.py,sha256=dYa9T6FDMTbr8GvTb-lXtk3v4QEqAWRuGmHIO20fazQ,1039
58
+ dodal/devices/motors.py,sha256=mduFm9vTZfu9rhwL93AMZpDzGd2TASdqalWzRaMoqec,1114
59
59
  dodal/devices/p45.py,sha256=jzBW2fGRhIbGzSRs5Fgupxro6aqE611n1RTcrTTG-yY,1047
60
60
  dodal/devices/pgm.py,sha256=am-AST9iTqma1PkGOKLozqAokZWbJUbM3TNcqXzB-6A,1132
61
+ dodal/devices/pressure_jump_cell.py,sha256=ONvSHpnS-kA8hjOgyIks-J2n02pP6LhLm2SY1zC-i_8,9437
61
62
  dodal/devices/qbpm.py,sha256=FfrWWAHHtYv3fGRT1qljyPpAwoHJYfbooT9CfKg-oXI,465
62
- dodal/devices/robot.py,sha256=2f6PqqzcnWs2hFDUs08EUUoU-a4zJy6xaSwv1VQdEEw,5332
63
+ dodal/devices/robot.py,sha256=laLwekoO9RsZzfag_6UGf8NhcGZ5deP4JAutvHqo2KM,5336
63
64
  dodal/devices/s4_slit_gaps.py,sha256=j3kgF9WfGFaU9xdUuiAh-QqI5u_vhiAftaDVINt91SM,243
64
65
  dodal/devices/scatterguard.py,sha256=jx03in9QgaThWxD4t1S8_Llent2kWrn_hThJ9KkUWTk,330
65
66
  dodal/devices/scintillator.py,sha256=PlD6cnJ39PTB_e7QrRspPliLYE4kL_K7ziJURzuxgdA,365
@@ -67,20 +68,16 @@ dodal/devices/slits.py,sha256=uOyVmbgeygiP6e5Z9t5zMPXLuVEWFfYg9GB3ZU76Tug,600
67
68
  dodal/devices/smargon.py,sha256=tOHb9fjI8ZCIrboiC4OzS2j1QJDOKkAlQ2SORbBmaGo,4708
68
69
  dodal/devices/status.py,sha256=hVrJS1yooQo6PRumRACoIEh-SKBUKxvBlQl-MtLFUMQ,327
69
70
  dodal/devices/synchrotron.py,sha256=wLfClZ1lYQWA_D--UsM3NnKLG8bY8mvVsRYER6ob-Ew,2026
70
- dodal/devices/tetramm.py,sha256=E4cSTz8BCr80IiKwmqr3iNoGxMb3d7_kn9_Zxqq3P_U,8442
71
+ dodal/devices/tetramm.py,sha256=460luDYab-u1QB0CPe7lPihtm9nZxdCDGtLPnXI-XGo,8447
71
72
  dodal/devices/thawer.py,sha256=4t4yF4VDIrT_tQ8RwjmXe_hDMwVjR8A-4rDkPx19b28,1672
72
73
  dodal/devices/turbo_slit.py,sha256=B6SPXqviMnG-U4PnUF1BdTO0LBKmTuwAUKRbxMiNJXo,1125
73
- dodal/devices/undulator.py,sha256=BxYGDDvbdhA6yixL0fsS4bZMY2pmaMk-bvFpEGKA1pY,5210
74
- dodal/devices/undulator_dcm.py,sha256=5hn3UZeu4CYXmfUVSdIxjrcIpStgeA1S744p0iIFp4I,2725
74
+ dodal/devices/undulator.py,sha256=rQjDhrvgf4uXUEO17CiLopNDEagWOgkmpa02BarozDE,5295
75
+ dodal/devices/undulator_dcm.py,sha256=4Y1ZgKatBenQgg4DuZnMtKwLDOH2YvUMo1QkFE0aaXs,2432
75
76
  dodal/devices/watsonmarlow323_pump.py,sha256=rwU94YE6esgGLYdh-pe8nBo_3tvgp6brrrbPDrqp5_M,1406
76
77
  dodal/devices/webcam.py,sha256=mef075ynDbzZ4pNAjfxR_9tdTTqF_rM7hAOVEEOV-Do,2408
77
78
  dodal/devices/xbpm_feedback.py,sha256=j8MHhhE0feoe6R54zPKqS5EbQ0bEDR-nOpLHzHhnHHQ,1156
78
79
  dodal/devices/zebra.py,sha256=p191eIGfmwM2EE1YJn6rRgChim2kqXl2KIYbMPUSOvg,9474
79
80
  dodal/devices/zebra_controlled_shutter.py,sha256=5-SH5HoXp_6P-xAtfDFJKQq6mBDwreubuCULSz78fgw,1852
80
- dodal/devices/areadetector/__init__.py,sha256=8IwLxuZMW0MOJpJp_ZDdlaE20hrtsH_PXWGaKgMiYs4,240
81
- dodal/devices/areadetector/adaravis.py,sha256=Cqw_Mzrp_zODFxQ2LZBJzHp_DsZ6_dAITkZz8gYz_0w,3797
82
- dodal/devices/areadetector/adsim.py,sha256=cIc9PRbKnftBk7Ut8d8CU_TVrin8EwcKHObP2n9VxWM,1876
83
- dodal/devices/areadetector/adutils.py,sha256=4axFR3wtn-K-sjMVJyfTcu-8g35odf2cY8mTKv1gS-o,3093
84
81
  dodal/devices/areadetector/plugins/CAM.py,sha256=sZzJm5Ez3eWfXZi_EB67wluhZmMQm1UyOc2bJFfzd1U,964
85
82
  dodal/devices/areadetector/plugins/MJPG.py,sha256=QTsxCoWbofNpLMGPoOR2hWoM33KyntuLepbF0YmX0KE,3031
86
83
  dodal/devices/detector/__init__.py,sha256=-RdACL3tzc3lLArWOoGNje48UUlv2fElOmGOz9yOuO0,317
@@ -99,27 +96,30 @@ dodal/devices/i22/fswitch.py,sha256=LSMoo9aDkH0SLcojbUh2NxTWIpUXHZxauTqThc3XtSk,
99
96
  dodal/devices/i22/nxsas.py,sha256=a8oJXl5uhkh9zcb9rSZmVooU-SplzzO3EsAaHJZRfrQ,6086
100
97
  dodal/devices/i24/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
101
98
  dodal/devices/i24/aperture.py,sha256=XlnOyQsvdTom1dJHVUg8CUSthq3jlBlZFOUaa9b1eZ4,837
99
+ dodal/devices/i24/beam_center.py,sha256=c5NRCBjhg9hMjznNMDipIq0M8-T8yM78IzhcRdpNtGw,470
102
100
  dodal/devices/i24/beamstop.py,sha256=89ncXUisia1rn1Faf5iWg3k0QW6Rm99j1vq9A8l9Xv8,1221
103
101
  dodal/devices/i24/dcm.py,sha256=Q3qqlgsiLJga2cgI8L4jczjyUgQixJh6QWg7shrFpTQ,1988
104
102
  dodal/devices/i24/dual_backlight.py,sha256=mhbM4CzfjWQ883ebnG4oP1PLa1I4BlR30s-Ly5nXXb0,2023
103
+ dodal/devices/i24/focus_mirrors.py,sha256=Z5ZSJeKdHa8vGlUNxzZz9fe6pQ1uJUWX6JFHbfPO1JQ,1845
105
104
  dodal/devices/i24/i24_detector_motion.py,sha256=_HgdsZqFYY0tKqUgMzViHaPEUFXL3WlXXioGvDehRUw,364
105
+ dodal/devices/i24/pilatus_metadata.py,sha256=fV8AQSBYGx1Qc91Rqj8VhcFPqPLqLCePNpDdmhcrTYM,1827
106
106
  dodal/devices/i24/pmac.py,sha256=lz9FYU_8YN8cC51ddTzdxcUA7MCVTA_ho3P0CHJ9zCo,6837
107
107
  dodal/devices/i24/vgonio.py,sha256=sxSmcYZayVJPJz_D_91j9PmNor7Tbl1RGQFRrdtESlw,533
108
108
  dodal/devices/oav/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
109
109
  dodal/devices/oav/microns_for_zoom_levels.json,sha256=kJTkbu2v6_Ccc_cDy7FRTX-gRhXxfYskjVqwBCZIqCQ,1209
110
110
  dodal/devices/oav/oav_calculations.py,sha256=tr3Z2pFT7v_enAiNuSZV0esPsiHfRGrj7t0-g_Ix5Do,2363
111
- dodal/devices/oav/oav_detector.py,sha256=9IXSSdgvZZyPtnhICEw9cHtf55vIrz1T_oBCr_sT7e4,4831
111
+ dodal/devices/oav/oav_detector.py,sha256=lUzdkAgviBtiZkN92fA_kleQRmmpfx_wTA06rq-aghQ,4839
112
112
  dodal/devices/oav/oav_parameters.py,sha256=gGN73TQGUiRzlIO5YKiqCRkjpTKsV6LFGo7Eu4Vs82g,6074
113
113
  dodal/devices/oav/oav_to_redis_forwarder.py,sha256=pfhaW6Uo_1wDNfywyPkS5UTrY8yhkerhjgJfRMqrJRA,6259
114
- dodal/devices/oav/utils.py,sha256=iSsl-PZLLwjgQ1M5JqcP5YGDCpfKQZv_GoJksnL-T3I,3130
115
- dodal/devices/oav/pin_image_recognition/__init__.py,sha256=oFPGpRVokv7u6_JbERodtRzkU6wBF4F-HeQxbP96TWI,6597
114
+ dodal/devices/oav/utils.py,sha256=3IvSTw6Ygkaz4Hzoz0eU2l6mljpq0NO57M15e-K4jOE,3182
115
+ dodal/devices/oav/pin_image_recognition/__init__.py,sha256=_eCq-rEtGNXVfrpahfKMLu53lEr49q5rtVqg0GhiODQ,6534
116
116
  dodal/devices/oav/pin_image_recognition/manual_test.py,sha256=h1Rto6ZDCB3jWhjSy9N8ECxRN583iYDJr9LxrTJ8kfE,903
117
117
  dodal/devices/oav/pin_image_recognition/utils.py,sha256=L9ypluYqeOFoS7gQuws-vTNc8LqaKl2ZIDNeQ2JaNpg,8592
118
118
  dodal/devices/oav/snapshots/grid_overlay.py,sha256=CdvCdTKMCiwMwxm2lV28KpcIUSXlscZmWxb73_KKmiI,3694
119
119
  dodal/devices/oav/snapshots/snapshot_with_beam_centre.py,sha256=J77RfE3AGTLNdWc6hvsRn2DUdupzuk_FTDGvdP0jqbU,1962
120
120
  dodal/devices/oav/snapshots/snapshot_with_grid.py,sha256=EBoCtr1NmOKye2yQHqbTBxSg-DsEKFeyBtMFmOeGPRs,2269
121
121
  dodal/devices/p99/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
122
- dodal/devices/p99/sample_stage.py,sha256=dX6KlzZlwYViGiPSvdSrQQmgh_OLbHlnX1BJgcuu7j0,1128
122
+ dodal/devices/p99/sample_stage.py,sha256=B795PAcvrtHo3AZexPyke8R7t-g-0Vr3BhO0fQz_wF8,1189
123
123
  dodal/devices/training_rig/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
124
124
  dodal/devices/training_rig/sample_stage.py,sha256=jktTp837ij8wor5LidE3AajCk95L7DebJotMlO7QwTE,355
125
125
  dodal/devices/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -134,7 +134,7 @@ dodal/devices/xspress3/xspress3_channel.py,sha256=w8tAx2lz5kJ_LeJ_eb_4o--Dtt8MRi
134
134
  dodal/devices/zocalo/__init__.py,sha256=dRAZ9o7B9TACqyE7aanT3yzvqWtt019YgV5ZJY7Ylso,517
135
135
  dodal/devices/zocalo/zocalo_constants.py,sha256=vu7Xjz7UNEpBUWEEBxDvP4bVFkZIN6NLGfQDpWbCjH8,98
136
136
  dodal/devices/zocalo/zocalo_interaction.py,sha256=8V9rAHYgdrFlPURnsxl5pLheEZemsm8cqMpv0E2fOS8,3555
137
- dodal/devices/zocalo/zocalo_results.py,sha256=DJWCWKUhMXguUcjb2fU8a86OLp8SnJS9jqbe6EHau-8,15293
137
+ dodal/devices/zocalo/zocalo_results.py,sha256=Mpg8zUPdq5yL9dWODP3KT_pd7kTALM1HSEfhZ43FAp0,15273
138
138
  dodal/parameters/experiment_parameter_base.py,sha256=O7JamfuJ5cYHkPf9tsHJPqn-OMHTAGouigvM1cDFehE,313
139
139
  dodal/plan_stubs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
140
140
  dodal/plan_stubs/check_topup.py,sha256=3gyLHfHNQBCgEWuAg4QE-ONx7y2Do1vVv5HP8ss0Z1I,5371
@@ -144,9 +144,9 @@ dodal/plan_stubs/wrapped.py,sha256=nriHKX4BF010CmrhdoUhY3-txClW5W8TPLz64kE_AXU,4
144
144
  dodal/plans/__init__.py,sha256=nH1jNxw3DzDMg9O8Uda0kqKIalRVEWBrq07OLY6Ey38,93
145
145
  dodal/plans/scanspec.py,sha256=Q0AcvTKRT401iGMRDSqK-D523UX5_ofiVMZ_rNXKOx8,2074
146
146
  dodal/plans/wrapped.py,sha256=Cr2iOpQCuk2ORKo5CZOh-zbQXAjoTfaLrfm7r1--GhU,2098
147
- dls_dodal-1.36.0.dist-info/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
148
- dls_dodal-1.36.0.dist-info/METADATA,sha256=93qlfEkDtkITxpzgYXuicmGrR30ilk3Te0IcOalpaSs,16655
149
- dls_dodal-1.36.0.dist-info/WHEEL,sha256=R06PA3UVYHThwHvxuRWMqaGcr-PuniXahwjmQRFMEkY,91
150
- dls_dodal-1.36.0.dist-info/entry_points.txt,sha256=bycw_EKUzup_rxfCetOwcauXV4kLln_OPpPT8jEnr-I,94
151
- dls_dodal-1.36.0.dist-info/top_level.txt,sha256=xIozdmZk_wmMV4wugpq9-6eZs0vgADNUKz3j2UAwlhc,6
152
- dls_dodal-1.36.0.dist-info/RECORD,,
147
+ dls_dodal-1.36.2.dist-info/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
148
+ dls_dodal-1.36.2.dist-info/METADATA,sha256=CWBsjskEIuoboOXY_f3RJ4xuoDWdR5c9RhDjsuqNL3w,16655
149
+ dls_dodal-1.36.2.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
150
+ dls_dodal-1.36.2.dist-info/entry_points.txt,sha256=bycw_EKUzup_rxfCetOwcauXV4kLln_OPpPT8jEnr-I,94
151
+ dls_dodal-1.36.2.dist-info/top_level.txt,sha256=xIozdmZk_wmMV4wugpq9-6eZs0vgADNUKz3j2UAwlhc,6
152
+ dls_dodal-1.36.2.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.5.0)
2
+ Generator: setuptools (75.6.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
dodal/_version.py CHANGED
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '1.36.0'
16
- __version_tuple__ = version_tuple = (1, 36, 0)
15
+ __version__ = version = '1.36.2'
16
+ __version_tuple__ = version_tuple = (1, 36, 2)
@@ -16,6 +16,7 @@ _BEAMLINE_NAME_OVERRIDES = {
16
16
  "p47": "training_rig",
17
17
  "p48": "training_rig",
18
18
  "p49": "training_rig",
19
+ "t01": "adsim",
19
20
  }
20
21
 
21
22
 
@@ -0,0 +1,75 @@
1
+ from pathlib import Path
2
+
3
+ from ophyd_async.epics.adsimdetector import SimDetector
4
+
5
+ from dodal.common.beamlines.beamline_utils import (
6
+ device_factory,
7
+ get_path_provider,
8
+ set_path_provider,
9
+ )
10
+ from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
11
+ from dodal.common.visit import LocalDirectoryServiceClient, StaticVisitPathProvider
12
+ from dodal.devices.adsim import SimStage
13
+ from dodal.log import set_beamline as set_log_beamline
14
+ from dodal.utils import BeamlinePrefix
15
+
16
+ BL = "adsim"
17
+ PREFIX = BeamlinePrefix("t01")
18
+ set_log_beamline(BL)
19
+ set_utils_beamline(BL)
20
+
21
+ set_path_provider(
22
+ StaticVisitPathProvider(
23
+ BL,
24
+ Path("/tmp"),
25
+ client=LocalDirectoryServiceClient(),
26
+ )
27
+ )
28
+
29
+ """
30
+ Beamline module for use with the simulated AreaDetector and motors.
31
+ These devices are simulated at the EPICS level, enabling testing of
32
+ dodal and ophyd-async against what appear to be "real" signals.
33
+
34
+ Usage Example
35
+ -------------
36
+
37
+ Start the simulated beamline by following the epics-containers tutorial at
38
+ https://epics-containers.github.io/main/tutorials/launch_example.html
39
+ And ensure that the signals are visible:
40
+
41
+ ```sh
42
+ export EPICS_CA_ADDR_LIST=127.0.0.1
43
+ ```
44
+
45
+ How to use the devices in a plan:
46
+ In an ipython terminal run:
47
+
48
+ ```python
49
+ from bluesky.run_engine import RunEngine
50
+
51
+ from dodal.beamlines.adsim import det, stage
52
+ from dodal.plans import count
53
+
54
+ RE = RunEngine()
55
+ d = det(connect_immediately=True)
56
+ s = stage(connect_immediately=True)
57
+ RE(count([d], num=10))
58
+ ```
59
+
60
+ """
61
+
62
+
63
+ @device_factory()
64
+ def stage() -> SimStage:
65
+ return SimStage(f"{PREFIX.beamline_prefix}-MO-SIMC-01:")
66
+
67
+
68
+ @device_factory()
69
+ def det() -> SimDetector:
70
+ return SimDetector(
71
+ f"{PREFIX.beamline_prefix}-DI-CAM-01:",
72
+ path_provider=get_path_provider(),
73
+ drv_suffix="DET:",
74
+ hdf_suffix="HDF:",
75
+ )
dodal/beamlines/b01_1.py CHANGED
@@ -4,16 +4,19 @@ from ophyd_async.epics.adaravis import AravisDetector
4
4
  from ophyd_async.fastcs.panda import HDFPanda
5
5
 
6
6
  from dodal.common.beamlines.beamline_utils import (
7
- device_instantiation,
7
+ device_factory,
8
8
  get_path_provider,
9
9
  set_path_provider,
10
10
  )
11
11
  from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
12
+ from dodal.common.beamlines.device_helpers import HDF5_PREFIX
12
13
  from dodal.common.visit import LocalDirectoryServiceClient, StaticVisitPathProvider
13
14
  from dodal.devices.synchrotron import Synchrotron
14
15
  from dodal.log import set_beamline as set_log_beamline
16
+ from dodal.utils import BeamlinePrefix
15
17
 
16
18
  BL = "c01"
19
+ PREFIX = BeamlinePrefix(BL)
17
20
  set_log_beamline(BL)
18
21
  set_utils_beamline(BL)
19
22
 
@@ -36,42 +39,24 @@ https://argocd.diamond.ac.uk/applications?showFavorites=false&proj=&sync=&autoSy
36
39
  """
37
40
 
38
41
 
39
- def panda(
40
- wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
41
- ) -> HDFPanda:
42
- return device_instantiation(
43
- device_factory=HDFPanda,
44
- name="panda",
45
- prefix="-EA-PANDA-01:",
46
- wait=wait_for_connection,
47
- fake=fake_with_ophyd_sim,
42
+ @device_factory()
43
+ def panda() -> HDFPanda:
44
+ return HDFPanda(
45
+ f"{PREFIX.beamline_prefix}-EA-PANDA-01:",
48
46
  path_provider=get_path_provider(),
49
47
  )
50
48
 
51
49
 
52
- def synchrotron(
53
- wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
54
- ) -> Synchrotron:
55
- return device_instantiation(
56
- Synchrotron,
57
- "synchrotron",
58
- "",
59
- wait_for_connection,
60
- fake_with_ophyd_sim,
61
- bl_prefix=False,
62
- )
50
+ @device_factory()
51
+ def synchrotron() -> Synchrotron:
52
+ return Synchrotron()
63
53
 
64
54
 
65
- def manta(
66
- wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
67
- ) -> AravisDetector:
68
- return device_instantiation(
69
- AravisDetector,
70
- "manta",
71
- "-DI-DCAM-02:",
72
- wait_for_connection,
73
- fake_with_ophyd_sim,
55
+ @device_factory()
56
+ def manta() -> AravisDetector:
57
+ return AravisDetector(
58
+ f"{PREFIX.beamline_prefix}-DI-DCAM-02:",
74
59
  path_provider=get_path_provider(),
75
60
  drv_suffix="CAM:",
76
- hdf_suffix="HDF5:",
61
+ hdf_suffix=HDF5_PREFIX,
77
62
  )