dls-dodal 1.52.0__py3-none-any.whl → 1.54.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 (53) hide show
  1. {dls_dodal-1.52.0.dist-info → dls_dodal-1.54.0.dist-info}/METADATA +4 -6
  2. {dls_dodal-1.52.0.dist-info → dls_dodal-1.54.0.dist-info}/RECORD +53 -47
  3. dodal/_version.py +2 -2
  4. dodal/beamlines/__init__.py +1 -0
  5. dodal/beamlines/adsim.py +12 -11
  6. dodal/beamlines/b01_1.py +2 -2
  7. dodal/beamlines/b07.py +6 -3
  8. dodal/beamlines/b07_1.py +17 -6
  9. dodal/beamlines/b21.py +4 -4
  10. dodal/beamlines/i04.py +12 -7
  11. dodal/beamlines/i05.py +22 -0
  12. dodal/beamlines/i05_1.py +17 -0
  13. dodal/beamlines/i09.py +7 -3
  14. dodal/beamlines/i09_1.py +6 -3
  15. dodal/beamlines/i19_1.py +1 -1
  16. dodal/beamlines/i20_1.py +38 -9
  17. dodal/beamlines/p60.py +13 -3
  18. dodal/common/beamlines/beamline_parameters.py +1 -1
  19. dodal/devices/b07/__init__.py +2 -2
  20. dodal/devices/b07/enums.py +15 -0
  21. dodal/devices/b07_1/__init__.py +10 -1
  22. dodal/devices/b07_1/ccmc.py +79 -0
  23. dodal/devices/b07_1/enums.py +3 -0
  24. dodal/devices/electron_analyser/abstract/base_driver_io.py +25 -48
  25. dodal/devices/electron_analyser/abstract/base_region.py +9 -11
  26. dodal/devices/electron_analyser/abstract/types.py +12 -0
  27. dodal/devices/electron_analyser/specs/detector.py +9 -9
  28. dodal/devices/electron_analyser/specs/driver_io.py +54 -21
  29. dodal/devices/electron_analyser/specs/region.py +13 -8
  30. dodal/devices/electron_analyser/types.py +15 -6
  31. dodal/devices/electron_analyser/vgscienta/detector.py +18 -8
  32. dodal/devices/electron_analyser/vgscienta/driver_io.py +62 -24
  33. dodal/devices/electron_analyser/vgscienta/region.py +33 -16
  34. dodal/devices/i05/__init__.py +3 -0
  35. dodal/devices/i05/enums.py +8 -0
  36. dodal/devices/i09/__init__.py +2 -2
  37. dodal/devices/i09/enums.py +16 -0
  38. dodal/devices/i09_1/__init__.py +2 -2
  39. dodal/devices/i09_1/enums.py +13 -0
  40. dodal/devices/i13_1/merlin_controller.py +1 -1
  41. dodal/devices/i19/beamstop.py +2 -2
  42. dodal/devices/i24/aperture.py +1 -1
  43. dodal/devices/oav/oav_to_redis_forwarder.py +1 -1
  44. dodal/devices/oav/pin_image_recognition/__init__.py +1 -2
  45. dodal/devices/p60/__init__.py +8 -2
  46. dodal/devices/p60/enums.py +16 -0
  47. dodal/devices/robot.py +6 -3
  48. dodal/devices/tetramm.py +1 -2
  49. dodal/utils.py +3 -10
  50. {dls_dodal-1.52.0.dist-info → dls_dodal-1.54.0.dist-info}/WHEEL +0 -0
  51. {dls_dodal-1.52.0.dist-info → dls_dodal-1.54.0.dist-info}/entry_points.txt +0 -0
  52. {dls_dodal-1.52.0.dist-info → dls_dodal-1.54.0.dist-info}/licenses/LICENSE +0 -0
  53. {dls_dodal-1.52.0.dist-info → dls_dodal-1.54.0.dist-info}/top_level.txt +0 -0
@@ -1,8 +1,8 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dls-dodal
3
- Version: 1.52.0
3
+ Version: 1.54.0
4
4
  Summary: Ophyd devices and other utils that could be used across DLS beamlines
5
- Author-email: Dominic Oram <dominic.oram@diamond.ac.uk>
5
+ Author-email: Dominic Oram <dominic.oram@diamond.ac.uk>, Joseph Ware <joseph.ware@diamond.ac.uk>, Oliver Silvester <Oliver.Silvester@diamond.ac.uk>, Noemi Frisina <noemi.frisina@diamond.ac.uk>
6
6
  License: Apache License
7
7
  Version 2.0, January 2004
8
8
  http://www.apache.org/licenses/
@@ -215,8 +215,7 @@ Description-Content-Type: text/markdown
215
215
  License-File: LICENSE
216
216
  Requires-Dist: click
217
217
  Requires-Dist: ophyd
218
- Requires-Dist: ophyd-async>=0.11
219
- Requires-Dist: epicscorelibs<=7.0.7.99.1.2a1
218
+ Requires-Dist: ophyd-async[ca,pva]>=0.12.3
220
219
  Requires-Dist: bluesky
221
220
  Requires-Dist: pyepics
222
221
  Requires-Dist: dataclasses-json
@@ -226,8 +225,6 @@ Requires-Dist: requests
226
225
  Requires-Dist: graypy
227
226
  Requires-Dist: pydantic>=2.0
228
227
  Requires-Dist: opencv-python-headless
229
- Requires-Dist: aioca
230
- Requires-Dist: p4p
231
228
  Requires-Dist: numpy
232
229
  Requires-Dist: aiofiles
233
230
  Requires-Dist: aiohttp
@@ -235,6 +232,7 @@ Requires-Dist: redis
235
232
  Requires-Dist: scanspec>=0.7.3
236
233
  Requires-Dist: event-model>=1.23
237
234
  Requires-Dist: pyzmq==26.3.0
235
+ Requires-Dist: deepdiff
238
236
  Provides-Extra: dev
239
237
  Requires-Dist: black; extra == "dev"
240
238
  Requires-Dist: diff-cover; extra == "dev"
@@ -1,42 +1,44 @@
1
- dls_dodal-1.52.0.dist-info/licenses/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
1
+ dls_dodal-1.54.0.dist-info/licenses/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
2
2
  dodal/__init__.py,sha256=Ksms_WJF8LTkbm38gEpm1jBpGqcQ8NGvmb2ZJlOE1j8,198
3
3
  dodal/__main__.py,sha256=kP2S2RPitnOWpNGokjZ1Yq-1umOtp5sNOZk2B3tBPLM,111
4
- dodal/_version.py,sha256=k4ECe4x0D1aLuvOAsB7afSDtXyH_iU-6kRlLtdcNd8M,513
4
+ dodal/_version.py,sha256=s5vRCdA-AasTt0uBCvFaQ2gbkK0U3JOd3KpXoER6yQU,513
5
5
  dodal/cli.py,sha256=NieWNUgLUxyck1rHoFAPJjX1xXLzHNdQ-s4wvxYFfps,3757
6
6
  dodal/log.py,sha256=Rt5O3hFZfMnJvQueZvgagQuXnPqHrFxhponOvVkpfrk,9871
7
- dodal/utils.py,sha256=rqQNalufZPxUPSD2SYuUgWSCpefb8FnqvR6N0t-YcEY,19675
7
+ dodal/utils.py,sha256=abGitd4FLpLnmckF7lUqOKYUL88r5Ex_NGSVgO4gOf4,19305
8
8
  dodal/beamline_specific_utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
9
  dodal/beamline_specific_utils/i03.py,sha256=P6Ls4FoVtcacH0RJM3v6ZwwGx27oMppcBdW0la-ohTY,377
10
10
  dodal/beamlines/README.md,sha256=K9MkL_GomxlsoTB7Mz-_dJA5NNSbmCfMiutchGg3C8o,404
11
- dodal/beamlines/__init__.py,sha256=lueGFb7cW1kDB_LfFavhrgYdjqGErCwAOk5XoU3BY00,3176
12
- dodal/beamlines/adsim.py,sha256=1RfxzvLkMWCoRnpFQNxnlvoWWGthuJvfHu-IsXv3GeE,1986
11
+ dodal/beamlines/__init__.py,sha256=pYP4kWH7h3VYXmjXdgbt27T_q-EA5PIyiaMZc7C49UA,3198
12
+ dodal/beamlines/adsim.py,sha256=fxj_P-7PsywdWPjfBAsLoOPiSKtApOKmLWHdQ8xCa3s,2048
13
13
  dodal/beamlines/aithre.py,sha256=QpNIT9RVtlyamJoshAa87Cw5U0QfBNwMBcZVvMlD25s,1037
14
- dodal/beamlines/b01_1.py,sha256=ru5a2FJar2rUdA2PDEXpQ1fRZwyzEd5Uf76J5qZMVhY,2922
15
- dodal/beamlines/b07.py,sha256=YHqApRUu7yYZTWS9Y7YJpXRBLauMhhil_Rj4he7lLLI,1071
16
- dodal/beamlines/b07_1.py,sha256=j_ChSI8PhB0MInU5HfLyC8aXtZqij_4zDspszmTAn7k,1075
14
+ dodal/beamlines/b01_1.py,sha256=KNL8M750UBu0ziWIhGDvHfQgJKrUdeht6E9NjnI5B-E,2946
15
+ dodal/beamlines/b07.py,sha256=wtNPxoLCf6KG3XzoRIyWI3QnZDV1VP8XMNmmBUVwFmU,1226
16
+ dodal/beamlines/b07_1.py,sha256=ST8niY5nKJi-svIVPfHslY4rKWq8VDEVvlX8MpDhU2Q,1433
17
17
  dodal/beamlines/b16.py,sha256=36VibkYciQL-K2G4PsDPVp2r460GTQlQPbSJ5vzLUVo,1724
18
18
  dodal/beamlines/b18.py,sha256=ryxrGtcCdwoFgZ8ljWYgr1g9gKvoA7nxkARVxl1IE78,1189
19
- dodal/beamlines/b21.py,sha256=hpPDPrRlgI3AAsZ2voymGynLlI8G4Oj0r0MOfaoQceM,4244
19
+ dodal/beamlines/b21.py,sha256=Bawc0nteT2azEK8roo2pakgN_U8DpmsOnnUR_LifGiw,4106
20
20
  dodal/beamlines/i02_1.py,sha256=d2IyqFMgeaSEyZYm7GMSjTKr7_02SakyC_oARx-XwnY,1204
21
21
  dodal/beamlines/i03.py,sha256=Fvg2Ap1vfvHWK9TqsNvAWKoOvQl87NYskOu8i7794GU,15527
22
- dodal/beamlines/i04.py,sha256=Eyq--oompg2hgT5LSjFaYza9O4ccJY43PKPfpGA7fGU,13707
23
- dodal/beamlines/i09.py,sha256=Pc6LBZUdVqQROW1yX-J37ctXSzX4Xggb4iON2JwOctc,1317
24
- dodal/beamlines/i09_1.py,sha256=yd0X62PtWIuBriH5y2oURaC23ot_13hX3_kFLerVczU,1045
22
+ dodal/beamlines/i04.py,sha256=tVY_bie6htKD9Ld9YZmSokjzSyh9fGzEHMRqyKEF4y0,13798
23
+ dodal/beamlines/i05.py,sha256=jHw7W-HKAdAX5sn4qzzeIHlK7c3Rdn_fibYnwSHidSE,684
24
+ dodal/beamlines/i05_1.py,sha256=JniSUGiLRl_aiJCfQ9BvaYMK9xPDhh3XLPpvpEC2fmo,518
25
+ dodal/beamlines/i09.py,sha256=u9oICQAxhzCzKUJyN9Dm1fKrkpHcsv8UY9K6PIPyzz0,1544
26
+ dodal/beamlines/i09_1.py,sha256=61l-cSeCpMmjPVS7VFzpKG4RZUatpkczM2-Sl1tKwFI,1199
25
27
  dodal/beamlines/i09_2.py,sha256=lyYO1rOaIsXNuVOL39Psh-8jQjkhQBXEQMpbXa-Zcw0,713
26
28
  dodal/beamlines/i10.py,sha256=0rSWOlIihkDtq7ZZaJ5O2jkMBrteRYjl4Hhqe8EP1Yc,5697
27
29
  dodal/beamlines/i13_1.py,sha256=7GzkEM1wT5pKsAPNSVd6tSnCBEE-FSOEBQrP-pCpU10,1625
28
30
  dodal/beamlines/i18.py,sha256=FuU8G-q1piu6BRou-Shj3BQEbNtsF7CUsSIqqkvCKZc,3615
29
- dodal/beamlines/i19_1.py,sha256=RsHXje1S2OLwuPnaqkRva02aAIq5Ya1FvPbHEQKo0Uc,2925
31
+ dodal/beamlines/i19_1.py,sha256=ljUng0fyL47VzFWpWWjwtG034ZCgehJN7DBu4BnTGto,2916
30
32
  dodal/beamlines/i19_2.py,sha256=zairZIPj1mrs9-dG19CjdMEFeqztGmlyeBmIxj7Kl5I,2329
31
33
  dodal/beamlines/i19_optics.py,sha256=RztOdru0lvPXpaIXSUfzSsPVIuwAMKZsEA8vJFU4_Mk,1184
32
- dodal/beamlines/i20_1.py,sha256=Xp6XXofjXh3Yibrg5wSHet-pXikprJ9oprEhJg19OkI,1825
34
+ dodal/beamlines/i20_1.py,sha256=Zsr1lsH7ySbOgK7RhMVMWzNWZAV-fuYW0iAjSEJZicY,2625
33
35
  dodal/beamlines/i22.py,sha256=4dm6vOJtXlr_Cu7kldw9okhic-di28yO1H6ce9tzBmE,8114
34
36
  dodal/beamlines/i23.py,sha256=pf3KmzLZYDVqUB4LkLcNJk6z9H4qkFpTdVB8_0MYehs,3066
35
37
  dodal/beamlines/i24.py,sha256=dfzf2ofVg1nu6Efy5zggVgHeYaYBqSVwYqgkbgb1wOQ,7104
36
38
  dodal/beamlines/k11.py,sha256=sBOl-MLk7FMo10KFykuK5aLqH1zyW4FnI0XXmtQhUfg,978
37
39
  dodal/beamlines/p38.py,sha256=bka6zsZfFiBAD-rrLSmIIVAOAw0FvupSkhOHGEG77xo,5708
38
40
  dodal/beamlines/p45.py,sha256=tQ7EkWfr7o2okK7Prw1C7DNGYdKPU2ofqjm98wu_-G0,2158
39
- dodal/beamlines/p60.py,sha256=3M_ipMO4NzrNP89VjBc-nHfz-Eb5y45rohos1nHTrvI,1180
41
+ dodal/beamlines/p60.py,sha256=_sSwhPiUiRtM1s4ohoIvsSqANJqeaihFjT1iGsii18w,1431
40
42
  dodal/beamlines/p99.py,sha256=Rbi9OvmrGIblctOnZxFG_tqqhALLZ9O3ht4mBcb5vU8,2754
41
43
  dodal/beamlines/training_rig.py,sha256=0HeZYy4LkI1yU8joz40f241owLGB26CeCk7s8TW98zw,1902
42
44
  dodal/common/__init__.py,sha256=ZC4ICKUDB0BDxRaVy8nmqclVmDBne-dPtk6UJsoFq6I,258
@@ -49,7 +51,7 @@ dodal/common/types.py,sha256=fkL7UOwDbe3v2_VJ5f1W5RxR98Wx-Ra-LxUZWkNDtls,486
49
51
  dodal/common/udc_directory_provider.py,sha256=v5OBaCUwjtQZAsRQUw6LlVL58UvwwDO1l2MKlilXjdk,2403
50
52
  dodal/common/visit.py,sha256=BLpr3GrP7Ij95V135hRJLgg7gWtBKXVxyOibWtcO8RE,5782
51
53
  dodal/common/beamlines/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
52
- dodal/common/beamlines/beamline_parameters.py,sha256=H9d4fLwVist7G-KdKYcv9D28E0tkhPtGPfiJ4V_5iHI,2721
54
+ dodal/common/beamlines/beamline_parameters.py,sha256=1pDL5OwEGTl67LpYvcVAxpBAIiVnBU0H1MnLsfajZ9A,2721
53
55
  dodal/common/beamlines/beamline_utils.py,sha256=te1f4vOu3-E3U_Ynghn9qIS7R6Ob3NJq_AL_Bssg2KY,5162
54
56
  dodal/common/beamlines/device_helpers.py,sha256=V0hdBegQZ0ZILTT00tFFA8nNOOFta3tBMH3fsF1ZsBg,1024
55
57
  dodal/devices/CTAB.py,sha256=5_261Ox6NG2cJIzzwnjWz289BG0nZoE0wKOaI5V5jqM,1998
@@ -78,14 +80,14 @@ dodal/devices/pgm.py,sha256=92yfr3i4fC92g-HPbbUBrazGs4b9n6CjmJfKxmUrMUY,1157
78
80
  dodal/devices/positioner.py,sha256=qf_1uYOI1whS0U5sPA3O3mlZYKrPuW3i0gEKI_q-up0,1289
79
81
  dodal/devices/pressure_jump_cell.py,sha256=h5nMNtr2PMG_AKM6nOB7qNTYT70GRuiGBwC-Ol2Yby0,10548
80
82
  dodal/devices/qbpm.py,sha256=FfrWWAHHtYv3fGRT1qljyPpAwoHJYfbooT9CfKg-oXI,465
81
- dodal/devices/robot.py,sha256=qU_QWvtlVnV9kKbfmKPMpjKIODVy8eE-2tyJXPlBhcg,7023
83
+ dodal/devices/robot.py,sha256=NusjGnziQq5NjFOpvGPUvTn9xqqd-g_CINbc04u4y4g,6998
82
84
  dodal/devices/s4_slit_gaps.py,sha256=4KdarIQoRqX4ry3LUS1Km7fkjUFahA0VuTd2DvYEqQ8,446
83
85
  dodal/devices/scintillator.py,sha256=PlD6cnJ39PTB_e7QrRspPliLYE4kL_K7ziJURzuxgdA,365
84
86
  dodal/devices/slits.py,sha256=b_7ku2sHlzhMHTvWrwiRwee6ufrbxNX9JB_Z0lvk15o,1105
85
87
  dodal/devices/smargon.py,sha256=uTO01FNToL_4FL6XIcH9WxGZmQB-SP4ujkZU6ChS-3U,5823
86
88
  dodal/devices/status.py,sha256=hVrJS1yooQo6PRumRACoIEh-SKBUKxvBlQl-MtLFUMQ,327
87
89
  dodal/devices/synchrotron.py,sha256=wLfClZ1lYQWA_D--UsM3NnKLG8bY8mvVsRYER6ob-Ew,2026
88
- dodal/devices/tetramm.py,sha256=EDAEqGp7TT291_-kDUnJxucLJmSa5NpJLCa961zl9B8,8401
90
+ dodal/devices/tetramm.py,sha256=MSEoScDHWxGXqVQcq3DdG3_p7EOPsDgQme9K3TdgIOo,8397
89
91
  dodal/devices/thawer.py,sha256=mYrO9klUPYcSbpoUuJ4ZuZZEPcHWWaZ2px5jh8XNQ9Y,1675
90
92
  dodal/devices/turbo_slit.py,sha256=xhcnhfbdcTYSYozogw6Li4fF4ofoPsc350rEyrRdaNE,1460
91
93
  dodal/devices/undulator.py,sha256=ZCdMQ8PKnW7mFV1BmrprOt0aSBCZMSKAH-2yyVH5Ihk,5316
@@ -99,10 +101,11 @@ dodal/devices/areadetector/plugins/MJPG.py,sha256=QTsxCoWbofNpLMGPoOR2hWoM33Kynt
99
101
  dodal/devices/attenuator/attenuator.py,sha256=XHdRMvq9t0DKJVDxkz-oXMAS3Dt4mbfO_H-x8fGmk_4,4071
100
102
  dodal/devices/attenuator/filter.py,sha256=ZoPsTWXjllyMtKBdSIFLB7Cbc88rGof5k3ymL13VczE,422
101
103
  dodal/devices/attenuator/filter_selections.py,sha256=lcmTprCXgSggp2L6uQ6YU0xLMljXvbspAug-WWKCXks,1410
102
- dodal/devices/b07/__init__.py,sha256=guVqpxADiFcNmCwTVRu8MV0rXqpd1MMm5VY47G3DUNU,89
103
- dodal/devices/b07/enums.py,sha256=ieqwv3XBQknSZ9rCZHIU03-MDOb-zwSq1sGmVIzxkak,770
104
- dodal/devices/b07_1/__init__.py,sha256=VtOz6qLTEig66rC8L53vZf9V_TpcVAtoZUADqKskH88,91
105
- dodal/devices/b07_1/enums.py,sha256=ASdDLDZ1fHfO6-yTBhbQWeBKoyotI2o0g9BPWf6WDV8,480
104
+ dodal/devices/b07/__init__.py,sha256=Zw4VkH-68MLoDveswDpR-lTlzK1-IeNz2W4qtkCO3Hs,109
105
+ dodal/devices/b07/enums.py,sha256=GmS6YZEbFH2wEwS1Ni4VNG-2wT98v7NnCzbHqFKo5Pg,1415
106
+ dodal/devices/b07_1/__init__.py,sha256=yInDRarid492g7unaL8zIrWSNpRXhgsj8z7TRTRJfjI,281
107
+ dodal/devices/b07_1/ccmc.py,sha256=ZjbOjJN3Ckbkp4ZZLE48-j9CGXcfidujgdrSROr6TQM,2554
108
+ dodal/devices/b07_1/enums.py,sha256=TREiXDSAGFRXR3iUkKADYfm-CmhLmlpGHKZUOQ2Z1as,723
106
109
  dodal/devices/b16/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
107
110
  dodal/devices/b16/detector.py,sha256=nj0Xl8uleGtD_sk6tN-h7ipAtfz-e-c-DKWVwk_xXuY,1067
108
111
  dodal/devices/current_amplifiers/__init__.py,sha256=-MhT-t-GJ83rrvTDBCoWub_NKYkRtu4sEj8-y5XZBP0,782
@@ -120,22 +123,23 @@ dodal/devices/detector/detector_motion.py,sha256=Y14WORa6KaUHkm3u6Y7brH_WwH9Uout
120
123
  dodal/devices/electron_analyser/__init__.py,sha256=xbOqt6b0J89UkZx6PAqEjPchfY_CMb3xgX3NAMEPf6A,793
121
124
  dodal/devices/electron_analyser/detector.py,sha256=4pXBhhBnGSO-2Xb30f8NiqZ_6dQaJTbWZ1OgHH6ASQA,4213
122
125
  dodal/devices/electron_analyser/enums.py,sha256=2QObyZln7pvWyLgixabGGWvfs3aIF98gVSz2B4NS1OM,120
123
- dodal/devices/electron_analyser/types.py,sha256=48hJN994YmIC1y-8L4aCK22NbWsVbK7SNGbH3ffG2tE,1586
126
+ dodal/devices/electron_analyser/types.py,sha256=_kmdSp4E98fsusg5Wg-Hyo25zHYA_pMe_hFW8lKe3tE,1869
124
127
  dodal/devices/electron_analyser/util.py,sha256=iUFvnYm-Y-0mBHR8oBLofZMKKuDhYYgGkOmvX6y1s1o,437
125
128
  dodal/devices/electron_analyser/abstract/__init__.py,sha256=iwDxHN4yViS05679-aB6RwM2ZINgXrpebdfDgqoLxfI,650
126
129
  dodal/devices/electron_analyser/abstract/base_detector.py,sha256=Tcx-lrqHr7dkGmOPMSVibZypefddRauQU_1cZTIwaVU,2979
127
- dodal/devices/electron_analyser/abstract/base_driver_io.py,sha256=hOUyZxEzNhorCt03i2WJAkCdgHvSrjQJgO4AiFyXON8,9458
128
- dodal/devices/electron_analyser/abstract/base_region.py,sha256=TqCUJLtJGH3jvTMYmUJfwhRyCPJIfndIfrz2QQmP3Hs,3991
130
+ dodal/devices/electron_analyser/abstract/base_driver_io.py,sha256=tMZYRVIN0KK1QBfYKvt8jutoYBhiSOHMvh5Z0V7WW2Y,8990
131
+ dodal/devices/electron_analyser/abstract/base_region.py,sha256=r5NbeEqVZ4CK7Yxe7effpJMYKSYuQrax7sJDMj_Hdck,3772
132
+ dodal/devices/electron_analyser/abstract/types.py,sha256=eoeO7sqlv5RE7AEnyzsxHyuBXlUzOIYdRLWp0EnLyAU,596
129
133
  dodal/devices/electron_analyser/specs/__init__.py,sha256=qN57kY6ERUGdrAWhU5m8CBrc0KaqiOGwPL6h2BNm3i0,291
130
- dodal/devices/electron_analyser/specs/detector.py,sha256=1Pk_-hup-gtpK1SqvTh0y32_rOL_Wjl2zj6Ux7yjrB4,1007
131
- dodal/devices/electron_analyser/specs/driver_io.py,sha256=oZuVDMJnZx4ywFpx8-vv76TPDRNOWcgOVPkXjdfehvY,3836
134
+ dodal/devices/electron_analyser/specs/detector.py,sha256=Q9R7aJoWsuhL6wOo_V2J703a7JVDeekIFH1pSX77hwQ,1109
135
+ dodal/devices/electron_analyser/specs/driver_io.py,sha256=LRyy8Jh9j0_XE1K5Ze8U8kQdq4aL5YgPhcRPXxwES0c,5078
132
136
  dodal/devices/electron_analyser/specs/enums.py,sha256=cXPcbIGEN5ZJJt1KeiNJEtZkkcjQ-fz7dBfsU283zYQ,235
133
- dodal/devices/electron_analyser/specs/region.py,sha256=5zmSxnilFxlsfu165hhj84eqC2C7dwQ4x49OL6umVSw,1171
137
+ dodal/devices/electron_analyser/specs/region.py,sha256=yI69LhcsdgxcymghUA-4p3o2YU97BgOQnkQABRDumFo,1210
134
138
  dodal/devices/electron_analyser/vgscienta/__init__.py,sha256=Iq0d2BBp0TJh4uG9twiiL-gJiSVI8zNUEbkg1UF5k6U,395
135
- dodal/devices/electron_analyser/vgscienta/detector.py,sha256=k4qXrew9MMoDjSRYXEzqqoC_Ep2RU4xHPvJDD4c31Fw,1052
136
- dodal/devices/electron_analyser/vgscienta/driver_io.py,sha256=Qs0ccWkpa8xp7VbFXKEscWzi6z1ZCHhZ-oxu-Kemn9k,2974
139
+ dodal/devices/electron_analyser/vgscienta/detector.py,sha256=sCPxRMUkpDCJOnemz6ohsny8lGocyVhkc_0GTYcLlGU,1416
140
+ dodal/devices/electron_analyser/vgscienta/driver_io.py,sha256=EysNucdqZ11bo8pwZRcMMkKNpBRPesRr4SDWGwU28NA,4180
137
141
  dodal/devices/electron_analyser/vgscienta/enums.py,sha256=apJZgIaE1aMQPBwIL1tQvV0WJ5trbk3j6iFmc1OqLsw,353
138
- dodal/devices/electron_analyser/vgscienta/region.py,sha256=ES4fRVQnacsrbO0Yyt9Nm3mRXnZ1dEK4sYGgnVdM1M4,2372
142
+ dodal/devices/electron_analyser/vgscienta/region.py,sha256=4Se2K1QWXkB6gAvi3Alcm5LBsxiOcVxw4YS86K9mK34,3057
139
143
  dodal/devices/i03/__init__.py,sha256=Kvukapy4a5lUQ20qaCqYCJzKNaqJn2DfXP5nKZ_Pec8,118
140
144
  dodal/devices/i03/dcm.py,sha256=zDcgxOdMRVOQZBGDsLaIlr7o4UJIK2vehPWHxAxt6VA,2268
141
145
  dodal/devices/i03/undulator_dcm.py,sha256=c5H-17Dpt3pIMAlU9fHCnU59lYDnmgKk3qE2qR9gg44,2594
@@ -143,11 +147,13 @@ dodal/devices/i04/__init__.py,sha256=Kvukapy4a5lUQ20qaCqYCJzKNaqJn2DfXP5nKZ_Pec8
143
147
  dodal/devices/i04/constants.py,sha256=_Dw28NeXldwRYH-h6YP6OHnyj7h0z4NQs_-RysNby5Q,281
144
148
  dodal/devices/i04/murko_results.py,sha256=1vVQKQdBGYAwcX22oQzWYheelIppoTQk5_git563y10,7055
145
149
  dodal/devices/i04/transfocator.py,sha256=sVI4Bgv-2-DH4-F1nIXMp5Aktevrm3agZnCA-WgjmW8,3780
146
- dodal/devices/i09/__init__.py,sha256=hx3z7IQHPljjnVJaBkyaQgLnUjH3oGlDSFMYf_rImsw,134
150
+ dodal/devices/i05/__init__.py,sha256=v0Axsf-vMyLyxcbqS8lljJc0BQ5Tw8yVBTWcO3tG_4g,67
151
+ dodal/devices/i05/enums.py,sha256=9FHBIexkSfZSTHxUnGupravfG9sVriHcrB15jemkQOQ,191
152
+ dodal/devices/i09/__init__.py,sha256=J6l3njc1VGju6d90QR-awx4xRLirNnqiD86QKcq88Z4,180
147
153
  dodal/devices/i09/dcm.py,sha256=u0OgfZUE-eFQc-ix7iIfXERZhymAMXHP-Eifu2xWhYA,996
148
- dodal/devices/i09/enums.py,sha256=74X4ulgqGaEtX6qeftHXPk6E0jU_5FTbFYYZJHgFoK8,332
149
- dodal/devices/i09_1/__init__.py,sha256=dHSHXpFiPV499ndzxy-VSi7eTuYtwzfMThj_VxS0lYA,52
150
- dodal/devices/i09_1/enums.py,sha256=hxDclEbSgqWyqtIbvfFYHgDfTmkmdm4m6di7rjccPDk,708
154
+ dodal/devices/i09/enums.py,sha256=mh1C4A520rJ6uFqeJQxpY2-U6quPFYO6Cmb3bQLV99A,535
155
+ dodal/devices/i09_1/__init__.py,sha256=dTazun87AkMDXh7J8gIZYJxJth0XUs72qahJ-VvhRBI,72
156
+ dodal/devices/i09_1/enums.py,sha256=FwhsvKnEcm9M22U4gcAJi6FE2RaUBZH0jRjNgJUKRqc,1319
151
157
  dodal/devices/i10/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
152
158
  dodal/devices/i10/diagnostics.py,sha256=5nnf1oFKtUJZa9Pewh1VxXpFecLscqTR2VakHKr_PaQ,5432
153
159
  dodal/devices/i10/i10_apple2.py,sha256=RbavLeqwmmcqAkGJw9-0AmLrWSiP91tAxwJLnXXCY-4,15271
@@ -159,11 +165,11 @@ dodal/devices/i10/rasor/rasor_motors.py,sha256=yWBxsiVhbdkQzhaK1S-nUq_wVntwHgdf6
159
165
  dodal/devices/i10/rasor/rasor_scaler_cards.py,sha256=sfWJKNx6pq342PEAlmg_Yt_Tijq7mO1XFjcCDtToQiU,467
160
166
  dodal/devices/i13_1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
161
167
  dodal/devices/i13_1/merlin.py,sha256=mgTFSMJftRzLL-HXAUuJkOYxtyA3Rp8YX0L46JCb30Y,1019
162
- dodal/devices/i13_1/merlin_controller.py,sha256=XkY8E3UkSzZb9Pw_Ic4bv1DYJvBVADS_3okjHvY4nH4,1453
168
+ dodal/devices/i13_1/merlin_controller.py,sha256=UjYBWOqu1uLDvm2TGXTxtdW8ADvBk9gDx_1T1koGb1o,1483
163
169
  dodal/devices/i18/KBMirror.py,sha256=W4R3TeulSjosUqAFIIznyWzje_Y2AoEf9f8N-NkisYM,710
164
170
  dodal/devices/i18/diode.py,sha256=nk5kvn4LsbhczRpCwHOO0_jJTYOz7MP9qm_uvBWuv7c,1468
165
171
  dodal/devices/i19/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
166
- dodal/devices/i19/beamstop.py,sha256=htAp2ckioFoYCcYDUBX-xm-0cC-xAmpr6W5AgRZyCFI,707
172
+ dodal/devices/i19/beamstop.py,sha256=JkcvkEmcC3eY3GHrvYNGqv2yDwrfgdpWKVZJWSadWW8,715
167
173
  dodal/devices/i19/blueapi_device.py,sha256=Tsl4vsREz7FM2d-kKJK-9tGrYbyKq4SLxnMlEKIM-g8,3966
168
174
  dodal/devices/i19/hutch_access.py,sha256=hnClUWCL1qTYzuBMmhXX85jiNak7mbYfyHEh54tZ27U,377
169
175
  dodal/devices/i19/shutter.py,sha256=Z3_UO3TmSczJrB8AcU5ohk8WlDN04a00XhSyDLAHvbc,1815
@@ -172,7 +178,7 @@ dodal/devices/i22/dcm.py,sha256=IbK56lSvX3PZlYKVeH7mIbRK83-mhJEIoTn1zjQfScE,4494
172
178
  dodal/devices/i22/fswitch.py,sha256=LSMoo9aDkH0SLcojbUh2NxTWIpUXHZxauTqThc3XtSk,3073
173
179
  dodal/devices/i22/nxsas.py,sha256=093GCM2H2LESt28RF-JfxEljJ8QzRPkL1ByXI2XVhoA,6012
174
180
  dodal/devices/i24/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
175
- dodal/devices/i24/aperture.py,sha256=lSCdmGrcCF1EKSFaknbJVmHzvd1e3Az-5euC76e5C1c,735
181
+ dodal/devices/i24/aperture.py,sha256=xADARfvUD5SLkLxb-Lhlfy6hGJgDf4dWQ4Dhe-0xIjI,743
176
182
  dodal/devices/i24/beam_center.py,sha256=m6LWsG9e_lhtPfZ8pc_hoLNyTYQQGGdRNav8J_2scTo,483
177
183
  dodal/devices/i24/beamstop.py,sha256=6tbiQLlcTlp4PCPhHJ_mlHtkv0kz5ArQ99zg9rwTnrw,1133
178
184
  dodal/devices/i24/dcm.py,sha256=9eNCGq-lpyFAftLxLxlhG_enzVmrx1nbwMxGFP_UBvU,1354
@@ -186,17 +192,17 @@ dodal/devices/oav/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU
186
192
  dodal/devices/oav/oav_calculations.py,sha256=qoaNz4MAdbpu0XHAkWTQ3rebFwsWfa8JA1eerUgISjA,2367
187
193
  dodal/devices/oav/oav_detector.py,sha256=DzRm1d1jC52wl7JawvMWiFCaFYdnjO7HT690NzDQIXs,6730
188
194
  dodal/devices/oav/oav_parameters.py,sha256=nnlTwrX5F6eMVK6wUz_MU39aLfV_P-_EyklfTQFAjZ4,6856
189
- dodal/devices/oav/oav_to_redis_forwarder.py,sha256=Nz_fOBK9NIsFTVO-G67JB-0qzDybWb_HS7RCkqrHfd8,6265
195
+ dodal/devices/oav/oav_to_redis_forwarder.py,sha256=UAEBWPBiEXrn4AbDeDbjUsM2z0LHhq2coeeHIuom9kE,6265
190
196
  dodal/devices/oav/utils.py,sha256=T-xg7J38ritzXwRrKjsWZ7daC_qR7aNhlbkXx75nJ8Q,3188
191
- dodal/devices/oav/pin_image_recognition/__init__.py,sha256=fpUZYUHgp6pOSt0UzmQvGdUrSwxH0knA0mP8eAlYMCw,6398
197
+ dodal/devices/oav/pin_image_recognition/__init__.py,sha256=YSh8OF69O9nZGNTiy8-XrcrhtF77PlKt3KaNleXJU40,6364
192
198
  dodal/devices/oav/pin_image_recognition/manual_test.py,sha256=h1Rto6ZDCB3jWhjSy9N8ECxRN583iYDJr9LxrTJ8kfE,903
193
199
  dodal/devices/oav/pin_image_recognition/utils.py,sha256=L9ypluYqeOFoS7gQuws-vTNc8LqaKl2ZIDNeQ2JaNpg,8592
194
200
  dodal/devices/oav/snapshots/grid_overlay.py,sha256=CdvCdTKMCiwMwxm2lV28KpcIUSXlscZmWxb73_KKmiI,3694
195
201
  dodal/devices/oav/snapshots/snapshot.py,sha256=VDHYxko97sATMKvD5wClgvN7WQUtUAjcXXSyoQAL8q8,499
196
202
  dodal/devices/oav/snapshots/snapshot_image_processing.py,sha256=wDxH9WPmB0nsotr49PUpw2Ke4l4RFxirrbpPzOUF9s4,2318
197
203
  dodal/devices/oav/snapshots/snapshot_with_grid.py,sha256=KAM7KjF0BzhGxx-MXd4Zc16IBbi1BF8S_VT8T84_2OY,2309
198
- dodal/devices/p60/__init__.py,sha256=2d2CN4ssnsmjwQO_XjFFltq_q_ouFIpKMDM0xG2zmxE,160
199
- dodal/devices/p60/enums.py,sha256=wsgbBI7JamTQ29d_U_F4FR-nmqktdjsG1GjMl1p-7t8,286
204
+ dodal/devices/p60/__init__.py,sha256=cLrjUaHNJRtRBb1ic_LTlxIi_nH6_hZN8-5gWCt0Q6w,229
205
+ dodal/devices/p60/enums.py,sha256=XN-bRzATHaD5RtQ_DMdq29TpsHDxbRfhb-wFLhPo7x0,505
200
206
  dodal/devices/p60/lab_xray_source.py,sha256=4rruJ4yCT8c7QFDqkd6szsrJhLGOauAOh6Y25K-Vz-E,595
201
207
  dodal/devices/p99/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
202
208
  dodal/devices/p99/andor2_point.py,sha256=zBoIou7VVzs-tAq3M29XL2xYV8aYZRKPYCGKRLk7MA0,1417
@@ -231,8 +237,8 @@ dodal/plans/verify_undulator_gap.py,sha256=OcDN09-eCoMzsmhKGxvzsH5EapG2zYz0yGCqU
231
237
  dodal/plans/wrapped.py,sha256=BPMw__RcWvk9v5XnhMsi9_k4KsDEbmXogzD2n1ecbUg,2098
232
238
  dodal/plans/preprocessors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
233
239
  dodal/plans/preprocessors/verify_undulator_gap.py,sha256=cBZEGq8TW1jrXFXB00iClQVXSEaE_jP_rHMY9WTgYyY,1813
234
- dls_dodal-1.52.0.dist-info/METADATA,sha256=vs_ZKznKwlZf-Jqw5-D72xP7PWzHnUInwAiLTImGIQs,16834
235
- dls_dodal-1.52.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
236
- dls_dodal-1.52.0.dist-info/entry_points.txt,sha256=bycw_EKUzup_rxfCetOwcauXV4kLln_OPpPT8jEnr-I,94
237
- dls_dodal-1.52.0.dist-info/top_level.txt,sha256=xIozdmZk_wmMV4wugpq9-6eZs0vgADNUKz3j2UAwlhc,6
238
- dls_dodal-1.52.0.dist-info/RECORD,,
240
+ dls_dodal-1.54.0.dist-info/METADATA,sha256=JFgmTg2KvKy5c9J__jf5q1LDzpylrsGv8cLlN3ZJT-Y,16920
241
+ dls_dodal-1.54.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
242
+ dls_dodal-1.54.0.dist-info/entry_points.txt,sha256=bycw_EKUzup_rxfCetOwcauXV4kLln_OPpPT8jEnr-I,94
243
+ dls_dodal-1.54.0.dist-info/top_level.txt,sha256=xIozdmZk_wmMV4wugpq9-6eZs0vgADNUKz3j2UAwlhc,6
244
+ dls_dodal-1.54.0.dist-info/RECORD,,
dodal/_version.py CHANGED
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '1.52.0'
21
- __version_tuple__ = version_tuple = (1, 52, 0)
20
+ __version__ = version = '1.54.0'
21
+ __version_tuple__ = version_tuple = (1, 54, 0)
@@ -9,6 +9,7 @@ from pathlib import Path
9
9
  # module name. Add any new beamlines whose name differs from their module name to this
10
10
  # dictionary, which maps ${BEAMLINE} to dodal.beamlines.<MODULE NAME>
11
11
  _BEAMLINE_NAME_OVERRIDES = {
12
+ "i05-1": "i05_1",
12
13
  "b07-1": "b07_1",
13
14
  "i09-1": "i09_1",
14
15
  "i13-1": "i13_1",
dodal/beamlines/adsim.py CHANGED
@@ -1,15 +1,11 @@
1
- from pathlib import Path
2
-
3
1
  from ophyd_async.epics.adsimdetector import SimDetector
4
2
 
5
3
  from dodal.common.beamlines.beamline_utils import (
6
4
  device_factory,
7
5
  get_path_provider,
8
- set_path_provider,
9
6
  )
10
7
  from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
11
8
  from dodal.common.beamlines.device_helpers import DET_SUFFIX, HDF5_SUFFIX
12
- from dodal.common.visit import LocalDirectoryServiceClient, StaticVisitPathProvider
13
9
  from dodal.devices.motors import XThetaStage
14
10
  from dodal.log import set_beamline as set_log_beamline
15
11
  from dodal.utils import BeamlinePrefix
@@ -19,13 +15,6 @@ PREFIX = BeamlinePrefix("t01")
19
15
  set_log_beamline(BL)
20
16
  set_utils_beamline(BL)
21
17
 
22
- set_path_provider(
23
- StaticVisitPathProvider(
24
- BL,
25
- Path("/tmp"),
26
- client=LocalDirectoryServiceClient(),
27
- )
28
- )
29
18
 
30
19
  """
31
20
  Beamline module for use with the simulated AreaDetector and motors.
@@ -47,11 +36,23 @@ How to use the devices in a plan:
47
36
  In an ipython terminal run:
48
37
 
49
38
  ```python
39
+ from pathlib import Path
40
+
50
41
  from bluesky.run_engine import RunEngine
42
+ from ophyd_async.core import StaticPathProvider, UUIDFilenameProvider
51
43
 
52
44
  from dodal.beamlines.adsim import det, stage
45
+ from dodal.common.beamlines.beamline_utils import set_path_provider
53
46
  from dodal.plans import count
54
47
 
48
+
49
+ set_path_provider(
50
+ StaticPathProvider(
51
+ UUIDFilenameProvider(),
52
+ "/tmp", # The directory for `det` to write to- may be mounted as a volume
53
+ )
54
+ )
55
+
55
56
  RE = RunEngine()
56
57
  d = det(connect_immediately=True)
57
58
  s = stage(connect_immediately=True)
dodal/beamlines/b01_1.py CHANGED
@@ -59,7 +59,7 @@ def synchrotron() -> Synchrotron:
59
59
 
60
60
 
61
61
  @device_factory()
62
- def oav() -> AravisDetector:
62
+ def spectroscopy_detector() -> AravisDetector:
63
63
  """The Manta camera for the spectroscopy experiment.
64
64
 
65
65
  Looks at the spectroscopy screen and visualises light
@@ -78,7 +78,7 @@ def oav() -> AravisDetector:
78
78
 
79
79
 
80
80
  @device_factory()
81
- def sample_det() -> AravisDetector:
81
+ def imaging_detector() -> AravisDetector:
82
82
  """The Mako camera for the imaging experiment.
83
83
 
84
84
  Looks at the on-axis viewing screen.
dodal/beamlines/b07.py CHANGED
@@ -2,7 +2,7 @@ from dodal.common.beamlines.beamline_utils import (
2
2
  device_factory,
3
3
  )
4
4
  from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
5
- from dodal.devices.b07 import Grating, LensMode
5
+ from dodal.devices.b07 import Grating, LensMode, PsuMode
6
6
  from dodal.devices.electron_analyser.specs import SpecsAnalyserDriverIO
7
7
  from dodal.devices.pgm import PGM
8
8
  from dodal.devices.synchrotron import Synchrotron
@@ -25,10 +25,13 @@ def pgm() -> PGM:
25
25
  return PGM(prefix=f"{PREFIX.beamline_prefix}-OP-PGM-01:", grating=Grating)
26
26
 
27
27
 
28
+ # Connect will work again after this work completed
29
+ # https://jira.diamond.ac.uk/browse/B07-1104
28
30
  @device_factory()
29
- def analyser_driver() -> SpecsAnalyserDriverIO[LensMode]:
30
- return SpecsAnalyserDriverIO[LensMode](
31
+ def analyser_driver() -> SpecsAnalyserDriverIO[LensMode, PsuMode]:
32
+ return SpecsAnalyserDriverIO[LensMode, PsuMode](
31
33
  prefix=f"{PREFIX.beamline_prefix}-EA-DET-01:CAM:",
32
34
  lens_mode_type=LensMode,
35
+ psu_mode_type=PsuMode,
33
36
  energy_sources={"source1": pgm().energy.user_readback},
34
37
  )
dodal/beamlines/b07_1.py CHANGED
@@ -1,8 +1,11 @@
1
- from dodal.common.beamlines.beamline_utils import (
2
- device_factory,
3
- )
1
+ from dodal.common.beamlines.beamline_utils import device_factory
4
2
  from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
5
- from dodal.devices.b07_1 import Grating, LensMode
3
+ from dodal.devices.b07 import PsuMode
4
+ from dodal.devices.b07_1 import (
5
+ ChannelCutMonochromator,
6
+ Grating,
7
+ LensMode,
8
+ )
6
9
  from dodal.devices.electron_analyser.specs import SpecsAnalyserDriverIO
7
10
  from dodal.devices.pgm import PGM
8
11
  from dodal.devices.synchrotron import Synchrotron
@@ -25,10 +28,18 @@ def pgm() -> PGM:
25
28
  return PGM(prefix=f"{PREFIX.beamline_prefix}-OP-PGM-01:", grating=Grating)
26
29
 
27
30
 
31
+ # Connect will work again after this work completed
32
+ # https://jira.diamond.ac.uk/browse/B07-1104
33
+ @device_factory()
34
+ def ccmc() -> ChannelCutMonochromator:
35
+ return ChannelCutMonochromator(prefix=f"{PREFIX.beamline_prefix}-OP-CCM-01:")
36
+
37
+
28
38
  @device_factory()
29
- def analyser_driver() -> SpecsAnalyserDriverIO[LensMode]:
30
- return SpecsAnalyserDriverIO[LensMode](
39
+ def analyser_driver() -> SpecsAnalyserDriverIO[LensMode, PsuMode]:
40
+ return SpecsAnalyserDriverIO[LensMode, PsuMode](
31
41
  prefix=f"{PREFIX.beamline_prefix}-EA-DET-01:CAM:",
32
42
  lens_mode_type=LensMode,
43
+ psu_mode_type=PsuMode,
33
44
  energy_sources={"source1": pgm().energy.user_readback},
34
45
  )
dodal/beamlines/b21.py CHANGED
@@ -41,25 +41,25 @@ set_path_provider(
41
41
  )
42
42
 
43
43
 
44
- @device_factory(skip=True)
44
+ @device_factory()
45
45
  def saxs() -> EigerDetector:
46
46
  return EigerDetector(
47
47
  prefix=PREFIX.beamline_prefix,
48
48
  path_provider=get_path_provider(),
49
49
  drv_suffix="-EA-EIGER-01:",
50
50
  hdf_suffix="-EA-EIGER-01:OD:",
51
- # odin_nodes=1, # TODO: https://github.com/bluesky/ophyd-async/issues/923
51
+ odin_nodes=1,
52
52
  )
53
53
 
54
54
 
55
- @device_factory(skip=True)
55
+ @device_factory()
56
56
  def waxs() -> EigerDetector:
57
57
  return EigerDetector(
58
58
  prefix=PREFIX.beamline_prefix,
59
59
  path_provider=get_path_provider(),
60
60
  drv_suffix="-EA-EIGER-02:",
61
61
  hdf_suffix="-EA-EIGER-02:OD:",
62
- # odin_nodes=1, # TODO: https://github.com/bluesky/ophyd-async/issues/923
62
+ odin_nodes=1,
63
63
  )
64
64
 
65
65
 
dodal/beamlines/i04.py CHANGED
@@ -46,10 +46,9 @@ from dodal.devices.zocalo import ZocaloResults
46
46
  from dodal.log import set_beamline as set_log_beamline
47
47
  from dodal.utils import BeamlinePrefix, get_beamline_name
48
48
 
49
- ZOOM_PARAMS_FILE = (
50
- "/dls_sw/i04/software/gda/configurations/i04-config/xml/jCameraManZoomLevels.xml"
51
- )
52
- DISPLAY_CONFIG = "/dls_sw/i04/software/gda_versions/var/display.configuration"
49
+ # Use BlueAPI scratch until https://github.com/DiamondLightSource/mx-bluesky/issues/1097 is done
50
+ ZOOM_PARAMS_FILE = "/dls_sw/i04/software/bluesky/scratch/jCameraManZoomLevels.xml"
51
+ DISPLAY_CONFIG = "/dls_sw/i04/software/bluesky/scratch/display.configuration"
53
52
  DAQ_CONFIGURATION_PATH = "/dls_sw/i04/software/daq_configuration"
54
53
 
55
54
 
@@ -296,7 +295,9 @@ def zebra() -> Zebra:
296
295
  )
297
296
 
298
297
 
299
- @device_factory(skip=BL == "s04")
298
+ @device_factory(
299
+ skip=BL == "s04",
300
+ )
300
301
  def oav(params: OAVConfig | None = None) -> OAVBeamCentrePV:
301
302
  """Get the i04 OAV device, instantiate it if it hasn't already been.
302
303
  If this is called when already instantiated in i04, it will return the existing object.
@@ -307,7 +308,9 @@ def oav(params: OAVConfig | None = None) -> OAVBeamCentrePV:
307
308
  )
308
309
 
309
310
 
310
- @device_factory(skip=BL == "s04")
311
+ @device_factory(
312
+ skip=BL == "s04",
313
+ )
311
314
  def oav_full_screen(params: OAVConfig | None = None) -> OAVBeamCentrePV:
312
315
  """Get the i04 OAV device, instantiate it if it hasn't already been.
313
316
  If this is called when already instantiated in i04, it will return the existing object.
@@ -319,7 +322,9 @@ def oav_full_screen(params: OAVConfig | None = None) -> OAVBeamCentrePV:
319
322
  )
320
323
 
321
324
 
322
- @device_factory(skip=BL == "s04")
325
+ @device_factory(
326
+ skip=BL == "s04",
327
+ )
323
328
  def detector_motion() -> DetectorMotion:
324
329
  """Get the i04 detector motion device, instantiate it if it hasn't already been.
325
330
  If this is called when already instantiated in i04, it will return the existing object.
dodal/beamlines/i05.py ADDED
@@ -0,0 +1,22 @@
1
+ from dodal.common.beamlines.beamline_utils import device_factory
2
+ from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
3
+ from dodal.devices.i05 import Grating
4
+ from dodal.devices.pgm import PGM
5
+ from dodal.devices.synchrotron import Synchrotron
6
+ from dodal.log import set_beamline as set_log_beamline
7
+ from dodal.utils import BeamlinePrefix, get_beamline_name
8
+
9
+ BL = get_beamline_name("i05")
10
+ PREFIX = BeamlinePrefix(BL)
11
+ set_log_beamline(BL)
12
+ set_utils_beamline(BL)
13
+
14
+
15
+ @device_factory()
16
+ def synchrotron() -> Synchrotron:
17
+ return Synchrotron()
18
+
19
+
20
+ @device_factory()
21
+ def pgm() -> PGM:
22
+ return PGM(prefix=f"{PREFIX.beamline_prefix}-OP-PGM-01:", grating=Grating)
@@ -0,0 +1,17 @@
1
+ from dodal.common.beamlines.beamline_utils import (
2
+ device_factory,
3
+ )
4
+ from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
5
+ from dodal.devices.synchrotron import Synchrotron
6
+ from dodal.log import set_beamline as set_log_beamline
7
+ from dodal.utils import BeamlinePrefix, get_beamline_name
8
+
9
+ BL = get_beamline_name("i05-1")
10
+ PREFIX = BeamlinePrefix(BL, suffix="J")
11
+ set_log_beamline(BL)
12
+ set_utils_beamline(BL)
13
+
14
+
15
+ @device_factory()
16
+ def synchrotron() -> Synchrotron:
17
+ return Synchrotron()
dodal/beamlines/i09.py CHANGED
@@ -3,7 +3,7 @@ from dodal.common.beamlines.beamline_utils import (
3
3
  )
4
4
  from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
5
5
  from dodal.devices.electron_analyser.vgscienta import VGScientaAnalyserDriverIO
6
- from dodal.devices.i09 import DCM, Grating, LensMode
6
+ from dodal.devices.i09 import DCM, Grating, LensMode, PassEnergy, PsuMode
7
7
  from dodal.devices.pgm import PGM
8
8
  from dodal.devices.synchrotron import Synchrotron
9
9
  from dodal.log import set_beamline as set_log_beamline
@@ -33,14 +33,18 @@ def dcm() -> DCM:
33
33
  return DCM(prefix=f"{PREFIX.beamline_prefix}-MO-DCM-01:")
34
34
 
35
35
 
36
+ # Connect will work again after this work completed
37
+ # https://jira.diamond.ac.uk/browse/I09-651
36
38
  @device_factory()
37
- def analyser_driver() -> VGScientaAnalyserDriverIO[LensMode]:
39
+ def analyser_driver() -> VGScientaAnalyserDriverIO[LensMode, PsuMode, PassEnergy]:
38
40
  energy_sources = {
39
41
  "source1": pgm().energy.user_readback,
40
42
  "source2": dcm().energy_in_ev,
41
43
  }
42
- return VGScientaAnalyserDriverIO[LensMode](
44
+ return VGScientaAnalyserDriverIO[LensMode, PsuMode, PassEnergy](
43
45
  prefix=f"{PREFIX.beamline_prefix}-EA-DET-01:CAM:",
44
46
  lens_mode_type=LensMode,
47
+ psu_mode_type=PsuMode,
48
+ pass_energy_type=PassEnergy,
45
49
  energy_sources=energy_sources,
46
50
  )
dodal/beamlines/i09_1.py CHANGED
@@ -4,7 +4,7 @@ from dodal.common.beamlines.beamline_utils import (
4
4
  from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
5
5
  from dodal.devices.electron_analyser.specs import SpecsAnalyserDriverIO
6
6
  from dodal.devices.i09.dcm import DCM
7
- from dodal.devices.i09_1 import LensMode
7
+ from dodal.devices.i09_1 import LensMode, PsuMode
8
8
  from dodal.devices.synchrotron import Synchrotron
9
9
  from dodal.log import set_beamline as set_log_beamline
10
10
  from dodal.utils import BeamlinePrefix, get_beamline_name
@@ -25,10 +25,13 @@ def dcm() -> DCM:
25
25
  return DCM(prefix=f"{PREFIX.beamline_prefix}-MO-DCM-01:")
26
26
 
27
27
 
28
+ # Connect will work again after this work completed
29
+ # https://jira.diamond.ac.uk/browse/I09-651
28
30
  @device_factory()
29
- def analyser_driver() -> SpecsAnalyserDriverIO[LensMode]:
30
- return SpecsAnalyserDriverIO[LensMode](
31
+ def analyser_driver() -> SpecsAnalyserDriverIO[LensMode, PsuMode]:
32
+ return SpecsAnalyserDriverIO[LensMode, PsuMode](
31
33
  prefix=f"{PREFIX.beamline_prefix}-EA-DET-02:CAM:",
32
34
  lens_mode_type=LensMode,
35
+ psu_mode_type=PsuMode,
33
36
  energy_sources={"source1": dcm().energy_in_ev},
34
37
  )
dodal/beamlines/i19_1.py CHANGED
@@ -42,7 +42,7 @@ DISPLAY_CONFIG = "/dls_sw/i19-1/software/daq_configuration/domain/display.config
42
42
 
43
43
  # Needs to wait until enum is fixed on the beamline
44
44
  # See https://github.com/DiamondLightSource/dodal/issues/1150
45
- @device_factory(skip=True)
45
+ @device_factory()
46
46
  def beamstop() -> BeamStop:
47
47
  """Get the i19-1 beamstop device, instantiate it if it hasn't already been.
48
48
  If this is called when already instantiated in i19-1, it will return the existing object.