dls-dodal 1.44.0__py3-none-any.whl → 1.46.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 (61) hide show
  1. {dls_dodal-1.44.0.dist-info → dls_dodal-1.46.0.dist-info}/METADATA +2 -2
  2. {dls_dodal-1.44.0.dist-info → dls_dodal-1.46.0.dist-info}/RECORD +56 -46
  3. {dls_dodal-1.44.0.dist-info → dls_dodal-1.46.0.dist-info}/WHEEL +1 -1
  4. dodal/_version.py +2 -2
  5. dodal/beamlines/__init__.py +2 -0
  6. dodal/beamlines/b07.py +27 -0
  7. dodal/beamlines/b07_1.py +25 -0
  8. dodal/beamlines/i03.py +4 -4
  9. dodal/beamlines/i04.py +1 -1
  10. dodal/beamlines/i09.py +25 -0
  11. dodal/beamlines/i09_1.py +25 -0
  12. dodal/beamlines/i10.py +19 -35
  13. dodal/beamlines/i18.py +7 -4
  14. dodal/beamlines/i19_1.py +2 -1
  15. dodal/beamlines/i19_2.py +2 -1
  16. dodal/beamlines/i20_1.py +2 -1
  17. dodal/beamlines/i22.py +3 -3
  18. dodal/beamlines/i23.py +67 -2
  19. dodal/beamlines/p38.py +3 -3
  20. dodal/beamlines/p60.py +21 -0
  21. dodal/common/beamlines/beamline_utils.py +5 -0
  22. dodal/common/visit.py +1 -41
  23. dodal/devices/common_dcm.py +77 -0
  24. dodal/devices/detector/det_dist_to_beam_converter.py +16 -23
  25. dodal/devices/detector/detector.py +2 -1
  26. dodal/devices/electron_analyser/abstract_analyser_io.py +47 -0
  27. dodal/devices/electron_analyser/abstract_region.py +112 -0
  28. dodal/devices/electron_analyser/specs_analyser_io.py +19 -0
  29. dodal/devices/electron_analyser/specs_region.py +26 -0
  30. dodal/devices/electron_analyser/vgscienta_analyser_io.py +26 -0
  31. dodal/devices/electron_analyser/vgscienta_region.py +90 -0
  32. dodal/devices/{dcm.py → i03/dcm.py} +8 -12
  33. dodal/devices/{undulator_dcm.py → i03/undulator_dcm.py} +6 -4
  34. dodal/devices/i10/diagnostics.py +239 -0
  35. dodal/devices/i10/slits.py +93 -6
  36. dodal/devices/i13_1/merlin.py +3 -4
  37. dodal/devices/i13_1/merlin_controller.py +1 -1
  38. dodal/devices/i19/blueapi_device.py +102 -0
  39. dodal/devices/i19/shutter.py +5 -43
  40. dodal/devices/i22/dcm.py +10 -12
  41. dodal/devices/i24/dcm.py +8 -17
  42. dodal/devices/motors.py +21 -0
  43. dodal/devices/tetramm.py +3 -4
  44. dodal/devices/turbo_slit.py +10 -4
  45. dodal/devices/undulator.py +9 -7
  46. dodal/devices/util/adjuster_plans.py +1 -2
  47. dodal/devices/util/lookup_tables.py +38 -0
  48. dodal/devices/util/test_utils.py +1 -0
  49. dodal/devices/zebra/zebra.py +4 -0
  50. dodal/plan_stubs/data_session.py +10 -1
  51. dodal/plan_stubs/electron_analyser/configure_controller.py +80 -0
  52. dodal/plans/verify_undulator_gap.py +2 -2
  53. dodal/devices/electron_analyser/base_region.py +0 -64
  54. dodal/devices/electron_analyser/specs/specs_region.py +0 -24
  55. dodal/devices/electron_analyser/vgscienta/__init__.py +0 -0
  56. dodal/devices/electron_analyser/vgscienta/vgscienta_region.py +0 -77
  57. dodal/devices/util/motor_utils.py +0 -6
  58. {dls_dodal-1.44.0.dist-info → dls_dodal-1.46.0.dist-info}/entry_points.txt +0 -0
  59. {dls_dodal-1.44.0.dist-info → dls_dodal-1.46.0.dist-info}/licenses/LICENSE +0 -0
  60. {dls_dodal-1.44.0.dist-info → dls_dodal-1.46.0.dist-info}/top_level.txt +0 -0
  61. /dodal/{devices/electron_analyser/specs → plan_stubs/electron_analyser}/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dls-dodal
3
- Version: 1.44.0
3
+ Version: 1.46.0
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
6
  License: Apache License
@@ -216,7 +216,7 @@ 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.10.0a1
219
+ Requires-Dist: ophyd-async>=0.10.0a3
220
220
  Requires-Dist: bluesky
221
221
  Requires-Dist: pyepics
222
222
  Requires-Dist: dataclasses-json
@@ -1,32 +1,37 @@
1
- dls_dodal-1.44.0.dist-info/licenses/LICENSE,sha256=tAkwu8-AdEyGxGoSvJ2gVmQdcicWw3j1ZZueVV74M-E,11357
1
+ dls_dodal-1.46.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=lzdyl5oWyNXQa2wYjsrnkoqFidbsGyIRXKHeWRarZpw,513
4
+ dodal/_version.py,sha256=rx9X6grU4HKVMuiliyERGBbevIYUheRbfXNhHBtDkEw,513
5
5
  dodal/cli.py,sha256=NieWNUgLUxyck1rHoFAPJjX1xXLzHNdQ-s4wvxYFfps,3757
6
6
  dodal/log.py,sha256=ry8WMq1S4WMIAPqtqGeKuegMRN7Jy3qdVTJlkpKXkL8,9503
7
7
  dodal/utils.py,sha256=rqQNalufZPxUPSD2SYuUgWSCpefb8FnqvR6N0t-YcEY,19675
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=dTmVSfeEVUHgxOTQO94lbQQiJHfFcvK2RAwVeTpCqxo,3150
11
+ dodal/beamlines/__init__.py,sha256=Iih4-UAWUBR-SrNiNZPLpxQsn26DVngfgH9WhIGX9fQ,3194
12
12
  dodal/beamlines/adsim.py,sha256=uOmFYZIGyput93XHk9R5ydZdxnTrS_wA2zSEm62UCVU,1930
13
13
  dodal/beamlines/aithre.py,sha256=1q7zeMYunOBIWCm203NIkCl5tgVl_-jMWc0f5af-W_E,263
14
14
  dodal/beamlines/b01_1.py,sha256=hHv9YJtUVmxAQ0UqF00-9wUYC_OtNo9awd04RM8b_HI,1993
15
+ dodal/beamlines/b07.py,sha256=OM_zdHeFO49IITT9fFHB3aOW-gDtmZTm0zrSauphQbo,799
16
+ dodal/beamlines/b07_1.py,sha256=o82BW38oNH8TLTscMgQYBSNOnvAiW8B9Z9DybDbvJ_k,763
15
17
  dodal/beamlines/i02_1.py,sha256=d2IyqFMgeaSEyZYm7GMSjTKr7_02SakyC_oARx-XwnY,1204
16
- dodal/beamlines/i03.py,sha256=MS91uQArCsvg92eX_AR_DsUiRPQtnKkMgKV4ca1fosw,15259
17
- dodal/beamlines/i04.py,sha256=V0fgXfEJnkh0spDXelK6zwjFChN6VaV9_CtrxJLZx2E,12100
18
- dodal/beamlines/i10.py,sha256=lkn_xg0pt-vFuWkUGyl62A0xT-Rzs71JztJ1EeQkMi0,11487
18
+ dodal/beamlines/i03.py,sha256=Rm1F1bR2M1SBZhWpVkhJ5_wrn8XSvEp23mKgo_LDviA,15279
19
+ dodal/beamlines/i04.py,sha256=GHLjQWDt4zBweVd1viTz754RzMZFll8huagFmLeHeH0,12104
20
+ dodal/beamlines/i09.py,sha256=DTmgtjUbzFZT3vrFLnPJhFb5h6U1YEXuNewucAAGgZ8,765
21
+ dodal/beamlines/i09_1.py,sha256=pxgkcKBvetwVxXAm1KmlzBiK45GDdE30eO971w9zzoI,763
22
+ dodal/beamlines/i10.py,sha256=k8tnUwAb6jX2xY8hgST3ZP4jX3s4I4ispL5M6HF-M5k,11221
19
23
  dodal/beamlines/i13_1.py,sha256=RF8AXBqVKPY7rVf4j1gOxcURAToYVk-Yo9t4FWyaphU,1650
20
- dodal/beamlines/i18.py,sha256=Y5qLniqUkbYHcGGLPdBbiMILQHonPT2oz5M1hKMGqzs,3434
21
- dodal/beamlines/i19_1.py,sha256=mae50OVHBywNDL1dQ77GvcltWLNnvXSMlhgn48Xcld4,2794
22
- dodal/beamlines/i19_2.py,sha256=aDtb41JuS9WVFDcWK7MmN7lUFHE3d5J0AZg9nkcxZFQ,2285
24
+ dodal/beamlines/i18.py,sha256=1BL5QA744ZGuCc2IXdsy_ZD2UV9SVXlUYAiMtpy0YNk,3656
25
+ dodal/beamlines/i19_1.py,sha256=3mxRQzMQrg2ppMN19EKqEV0bMs5pNtorQYgkBBWRPks,2838
26
+ dodal/beamlines/i19_2.py,sha256=zairZIPj1mrs9-dG19CjdMEFeqztGmlyeBmIxj7Kl5I,2329
23
27
  dodal/beamlines/i19_optics.py,sha256=RztOdru0lvPXpaIXSUfzSsPVIuwAMKZsEA8vJFU4_Mk,1184
24
- dodal/beamlines/i20_1.py,sha256=7ZZhPfjjKAhGjdXOI6mu2FPbMbsSjFHJOPa1toZRa0U,1725
25
- dodal/beamlines/i22.py,sha256=XCAVBkZxN9cmxfpGoWaCvo77lu8hVIJ_e3BUc_qxdu0,7664
26
- dodal/beamlines/i23.py,sha256=Qnu3Rk9gb2BD3YolMqUXiupt0ehxw5rVnfPJXBWFoCU,973
28
+ dodal/beamlines/i20_1.py,sha256=Xp6XXofjXh3Yibrg5wSHet-pXikprJ9oprEhJg19OkI,1825
29
+ dodal/beamlines/i22.py,sha256=GAS1KgRrtpdXhYb7tIO3yHHMRcffxOqcSIaCZyexnDk,7595
30
+ dodal/beamlines/i23.py,sha256=7NSbJDKPcw3O2oRs5oCsy2PbV4XaJAeReJuLoUqgPsI,2648
27
31
  dodal/beamlines/i24.py,sha256=9rBQMCWGdKiRnFbcVvmjiBWiC9WJIJCtLh5m6LkHUtU,7096
28
- dodal/beamlines/p38.py,sha256=MwxBqYe_rUIj-MCRIFZpHJmR0JtA22bSFKfBpoDI9P0,5777
32
+ dodal/beamlines/p38.py,sha256=8rtf0a2UZJ0DKRXuSmQngae_iSIK_eJ4MhLGtatA_J0,5708
29
33
  dodal/beamlines/p45.py,sha256=2snO895TGwf4LbNIvg4BkvAGSfvZcevdpv_82MRpXKo,2129
34
+ dodal/beamlines/p60.py,sha256=ybZwKvtsUoQvRwkSZvlK9I2PfAUI72JL3syCpt79O0k,674
30
35
  dodal/beamlines/p99.py,sha256=k24QhYpoOHBd0188Fu3wvmpT6dsu8okiIVqVVckdBkw,1063
31
36
  dodal/beamlines/training_rig.py,sha256=TzJnKAfL8Nn5nxCyyt9D9-71YnrvmS8oyGavI_N-iv4,1954
32
37
  dodal/common/__init__.py,sha256=ZC4ICKUDB0BDxRaVy8nmqclVmDBne-dPtk6UJsoFq6I,258
@@ -37,10 +42,10 @@ dodal/common/maths.py,sha256=K9x7iL3xXLtWYTV-xlFHDNSTIL9a2UP3Ws7wr6Dm2rQ,1803
37
42
  dodal/common/signal_utils.py,sha256=o9jTKNgObrEQGJPJJO1h-lKUzqroXupGYpwhzP0nJR4,3206
38
43
  dodal/common/types.py,sha256=fkL7UOwDbe3v2_VJ5f1W5RxR98Wx-Ra-LxUZWkNDtls,486
39
44
  dodal/common/udc_directory_provider.py,sha256=v5OBaCUwjtQZAsRQUw6LlVL58UvwwDO1l2MKlilXjdk,2403
40
- dodal/common/visit.py,sha256=SfsjH-pf0KubwH1Kteke_OXJej_AW1as-t-ZnrfOtik,7435
45
+ dodal/common/visit.py,sha256=BLpr3GrP7Ij95V135hRJLgg7gWtBKXVxyOibWtcO8RE,5782
41
46
  dodal/common/beamlines/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
42
47
  dodal/common/beamlines/beamline_parameters.py,sha256=oIPHooqu5vTAwfqZutsKbzwdi9nvFF8568Mz7jrK5rI,3618
43
- dodal/common/beamlines/beamline_utils.py,sha256=s_9A0woipsS8wEsn4FdaKppKAKEYKbSfL6XGpfKosLI,4977
48
+ dodal/common/beamlines/beamline_utils.py,sha256=uy-HWchyUwoIqYYUWAd4BOPPoDzqvvtgkWQGzuKStTg,5061
44
49
  dodal/common/beamlines/device_helpers.py,sha256=lh7eih7KoFiqxo8PLQIDjbpBbhHuAXSeApt7K3KF9to,1002
45
50
  dodal/devices/CTAB.py,sha256=5_261Ox6NG2cJIzzwnjWz289BG0nZoE0wKOaI5V5jqM,1998
46
51
  dodal/devices/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -51,8 +56,8 @@ dodal/devices/apple2_undulator.py,sha256=R4KDgA4HcFj9zg1rPAEP9E0mKVzE06bhyxNRUrs
51
56
  dodal/devices/backlight.py,sha256=RcgeA1hE3Z_5jA-jH8S8uLMpBfZjenRLz1lx6HTYeAo,1653
52
57
  dodal/devices/baton.py,sha256=BnakfZxx3cIIX6Kxj8-abxn8Z9LaQODhcPbStbD0as4,485
53
58
  dodal/devices/bimorph_mirror.py,sha256=D5PkrOggJRVAnv38lTdy8rErKLu_O2juLEvSqwcotxY,4825
59
+ dodal/devices/common_dcm.py,sha256=8QSRE6Z10RQjfL3g4JZhyHRNI_aCKxWlzKSsDgiJHhE,3049
54
60
  dodal/devices/cryostream.py,sha256=K-ldpredpeDTzNt4qtQMg99nKJNjBYoXBbK0WJGexzw,656
55
- dodal/devices/dcm.py,sha256=JbyxLnrS68nnnv39l9XEWgJgXUBqxX6aFo19MZnL36E,2574
56
61
  dodal/devices/diamond_filter.py,sha256=A--RHd7WuH-IBhvCyENcRCTP4K-mm_Kqpa0pojpHZow,1098
57
62
  dodal/devices/eiger.py,sha256=RN3klVASvdTT_jer2HJHUCZWZBKoOUQQdTpsKdgTPfo,15836
58
63
  dodal/devices/eiger_odin.py,sha256=ytUH_18YuM1nJDhplS6OTdtADloYvHpO6ppENjVd4jU,7411
@@ -64,7 +69,7 @@ dodal/devices/hutch_shutter.py,sha256=UvGpsiIQcNW8IGd8ZA8Omus30bSNcVFE1poqO3yK9T
64
69
  dodal/devices/ipin.py,sha256=eq5jlKw7WGQi8VLrAWpaAIsZmfiVf-5Q0td_B22H6A4,473
65
70
  dodal/devices/linkam3.py,sha256=2sf-_heIsDg4qmqae-w9C2Py8pG8bPB3mT0TFPQIzd0,3869
66
71
  dodal/devices/logging_ophyd_device.py,sha256=dUVE-XhWA56WUXez0mrc4sf322CXY3MVLreTycO5j_A,668
67
- dodal/devices/motors.py,sha256=K1df9Pn1ThvsW-g7LrfKWOFaiaQXXUAf2BtbRehzUc4,1108
72
+ dodal/devices/motors.py,sha256=WSNPt9Pi7f-16yDtzAHApLOlUh1Y0aqnFICJIy2zOEs,1671
68
73
  dodal/devices/p45.py,sha256=hoBPpnj3b-njKqmhjAUFb79AyM4qFbWC9tuN6Aa47Rk,1703
69
74
  dodal/devices/pgm.py,sha256=am-AST9iTqma1PkGOKLozqAokZWbJUbM3TNcqXzB-6A,1132
70
75
  dodal/devices/pressure_jump_cell.py,sha256=h5nMNtr2PMG_AKM6nOB7qNTYT70GRuiGBwC-Ol2Yby0,10548
@@ -77,11 +82,10 @@ dodal/devices/slits.py,sha256=b_7ku2sHlzhMHTvWrwiRwee6ufrbxNX9JB_Z0lvk15o,1105
77
82
  dodal/devices/smargon.py,sha256=tOHb9fjI8ZCIrboiC4OzS2j1QJDOKkAlQ2SORbBmaGo,4708
78
83
  dodal/devices/status.py,sha256=hVrJS1yooQo6PRumRACoIEh-SKBUKxvBlQl-MtLFUMQ,327
79
84
  dodal/devices/synchrotron.py,sha256=wLfClZ1lYQWA_D--UsM3NnKLG8bY8mvVsRYER6ob-Ew,2026
80
- dodal/devices/tetramm.py,sha256=1lNXtWlmq0Pc_gVGD77XrV3ECe38TornDJUXkq3H1i0,8524
85
+ dodal/devices/tetramm.py,sha256=i2akuxU9olINFZfEnQALTZQX2uXq3w9JmdD6_rN4CJs,8528
81
86
  dodal/devices/thawer.py,sha256=mYrO9klUPYcSbpoUuJ4ZuZZEPcHWWaZ2px5jh8XNQ9Y,1675
82
- dodal/devices/turbo_slit.py,sha256=2k5ipQOFpDG-E_bYv4Mf7lOUJg0eIBJXEYNsFU6SV7g,1209
83
- dodal/devices/undulator.py,sha256=ZTjdD0bGp4gkfh0uZmA8FsATLCOsGt14gwPwqLezh1M,5302
84
- dodal/devices/undulator_dcm.py,sha256=olg8FrIKWqGmhJMuzuvJXH-LQTGhKytvXHPso3Br7C0,2398
87
+ dodal/devices/turbo_slit.py,sha256=xhcnhfbdcTYSYozogw6Li4fF4ofoPsc350rEyrRdaNE,1460
88
+ dodal/devices/undulator.py,sha256=ZCdMQ8PKnW7mFV1BmrprOt0aSBCZMSKAH-2yyVH5Ihk,5316
85
89
  dodal/devices/watsonmarlow323_pump.py,sha256=rwU94YE6esgGLYdh-pe8nBo_3tvgp6brrrbPDrqp5_M,1406
86
90
  dodal/devices/webcam.py,sha256=mef075ynDbzZ4pNAjfxR_9tdTTqF_rM7hAOVEEOV-Do,2408
87
91
  dodal/devices/xbpm_feedback.py,sha256=j8MHhhE0feoe6R54zPKqS5EbQ0bEDR-nOpLHzHhnHHQ,1156
@@ -99,46 +103,51 @@ dodal/devices/current_amplifiers/sr570.py,sha256=rYxMLmMKr3uQkz0l0bebTpLtJzCr3w4
99
103
  dodal/devices/current_amplifiers/struck_scaler_counter.py,sha256=lMKClJsxsWFX-dtdDN99N6IUHMKcoGlna54wUTYVVmE,2591
100
104
  dodal/devices/detector/__init__.py,sha256=-RdACL3tzc3lLArWOoGNje48UUlv2fElOmGOz9yOuO0,317
101
105
  dodal/devices/detector/det_dim_constants.py,sha256=arBWvzMwybatdSiCMAiwB4Bq1dX-wkLi54xPPfTfQhY,2772
102
- dodal/devices/detector/det_dist_to_beam_converter.py,sha256=7keoqZYfvgayePVx97lHYpcFRTJnQOfAk_PYP4EZTZQ,1951
106
+ dodal/devices/detector/det_dist_to_beam_converter.py,sha256=nSkhiEESyuzdrWoPu6h3C05DnOhCXa6DZd-9vU5JYc0,1625
103
107
  dodal/devices/detector/det_resolution.py,sha256=aQkKp24LpRGiwzPAQM3wLVa4ANw32HdrKc2kftHfKQA,3253
104
- dodal/devices/detector/detector.py,sha256=sIOGwkixbJTYPdNiwZjDiY7DfYuYzRomKltO2EztDZE,4770
108
+ dodal/devices/detector/detector.py,sha256=DqQvlgdjIdKErrZqgM9IH7drc-r6N8nhkFk7KwlgYAk,4815
105
109
  dodal/devices/detector/detector_motion.py,sha256=UGDQriDWRluDZOZh1mDX9w_fPjMD-_BGe11kA36Kezs,1616
106
110
  dodal/devices/electron_analyser/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
107
- dodal/devices/electron_analyser/base_region.py,sha256=aQXcShdYz63f0b8OoDF7hsguPU6fMyCuykkZbVuuz34,1907
108
- dodal/devices/electron_analyser/specs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
109
- dodal/devices/electron_analyser/specs/specs_region.py,sha256=RNLcBgrQ7Rs-bVW-4zTpMQuTiWUqGYUYxLFViOOznzU,821
110
- dodal/devices/electron_analyser/vgscienta/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
111
- dodal/devices/electron_analyser/vgscienta/vgscienta_region.py,sha256=E6smDEXbQIXb3Hc5rXsFNNuAW4RCIfECVaPj8nHy_RM,2139
111
+ dodal/devices/electron_analyser/abstract_analyser_io.py,sha256=jCcmc7wrU1cFm8g-6HjlhqL8Z8aRdGpe1EaBEYNwZR8,1821
112
+ dodal/devices/electron_analyser/abstract_region.py,sha256=eVQaip15iNO0G6MTcVxsvrWpIqQ1iuW-1veQTW_IAt4,3678
113
+ dodal/devices/electron_analyser/specs_analyser_io.py,sha256=dLBEzAvcbWnSwcHYG81QX0souhAyVuJS9ezBBJ2wiJ0,653
114
+ dodal/devices/electron_analyser/specs_region.py,sha256=-jbWtui8xmxEXygpinyjuwT-1e2YWbdzfdVKZxwfLsU,857
115
+ dodal/devices/electron_analyser/vgscienta_analyser_io.py,sha256=q1L8G_JTjjUxfW-rgBBtYg0NuIuD-6QRawMz7hblCOg,1053
116
+ dodal/devices/electron_analyser/vgscienta_region.py,sha256=GYGvsvpMulwpMc-EVQEh4ZW7M3c35oz1_waXvyZRln8,2543
112
117
  dodal/devices/i03/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
113
118
  dodal/devices/i03/beamstop.py,sha256=sJ2i9yEgaKPIbv23NNhUDTTIKIPN9MNfmwt2XqjBT1E,2806
119
+ dodal/devices/i03/dcm.py,sha256=zDcgxOdMRVOQZBGDsLaIlr7o4UJIK2vehPWHxAxt6VA,2268
120
+ dodal/devices/i03/undulator_dcm.py,sha256=c5H-17Dpt3pIMAlU9fHCnU59lYDnmgKk3qE2qR9gg44,2594
114
121
  dodal/devices/i04/transfocator.py,sha256=sVI4Bgv-2-DH4-F1nIXMp5Aktevrm3agZnCA-WgjmW8,3780
122
+ dodal/devices/i10/diagnostics.py,sha256=TYqVtrCtf-IG-1e02D2nfq1R8jcYnaX1npKxqieLRDc,7018
115
123
  dodal/devices/i10/i10_apple2.py,sha256=ErObNNE59NuYssde6ojWJb8wo3SVohkQsvK0Bjnf1T8,13192
116
124
  dodal/devices/i10/i10_setting_data.py,sha256=69XWgE-YNTiW7C3t67MNcTL5JDDhOo7h-X7DCTpFE5g,164
117
125
  dodal/devices/i10/mirrors.py,sha256=E0M5keGI3LGaDHyXQkCCyj6xmixNY1xTSkIaaYwtnP8,794
118
- dodal/devices/i10/slits.py,sha256=4X50bGiJhTIHxhsOrv-8DATBkQPwQgEaFMNa2OsPrFY,1201
126
+ dodal/devices/i10/slits.py,sha256=jI4wJPVT2vtl4bvabrU9u_v-SdGjOfDLBm0S9GMZC7w,4157
119
127
  dodal/devices/i10/rasor/rasor_current_amp.py,sha256=hImaPI3veKiS5YVfYwv-qrQ1AYNBjFVxG_MwTQqtkcc,2368
120
128
  dodal/devices/i10/rasor/rasor_motors.py,sha256=0w31rKDuzRL-9tGbLDj0JZljaDjfXvKHQyzMs6fc3sw,1653
121
129
  dodal/devices/i10/rasor/rasor_scaler_cards.py,sha256=sfWJKNx6pq342PEAlmg_Yt_Tijq7mO1XFjcCDtToQiU,467
122
130
  dodal/devices/i13_1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
123
- dodal/devices/i13_1/merlin.py,sha256=ML-AzjvvO0kgpVv1vaG2hyVwrkfXeysF-mTvj7h8AoI,1015
124
- dodal/devices/i13_1/merlin_controller.py,sha256=FwKVesrDostoKGRJYTxvcfR1Bo16KtEeFXQgMVLNwvA,1452
131
+ dodal/devices/i13_1/merlin.py,sha256=mgTFSMJftRzLL-HXAUuJkOYxtyA3Rp8YX0L46JCb30Y,1019
132
+ dodal/devices/i13_1/merlin_controller.py,sha256=XkY8E3UkSzZb9Pw_Ic4bv1DYJvBVADS_3okjHvY4nH4,1453
125
133
  dodal/devices/i18/KBMirror.py,sha256=W4R3TeulSjosUqAFIIznyWzje_Y2AoEf9f8N-NkisYM,710
126
134
  dodal/devices/i18/diode.py,sha256=q8ddVYT7yDXwURzxw5gfXlGT1tFirNfHBmiKnpvvXHk,406
127
135
  dodal/devices/i18/table.py,sha256=f6OtVSqCFIpXyoHX97CPLpaVDVXUNc2EvgSFP3qVFKo,446
128
136
  dodal/devices/i18/thor_labs_stage.py,sha256=I9JSKY-UqTjN-yBxQWL4CycTNNkUj3vknRrXjA6KZR8,364
129
137
  dodal/devices/i19/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
130
138
  dodal/devices/i19/beamstop.py,sha256=aV5gjTN-LEZxd3HnbotagJBB1GMdVB8VbvFPZvIw2U4,885
139
+ dodal/devices/i19/blueapi_device.py,sha256=Tsl4vsREz7FM2d-kKJK-9tGrYbyKq4SLxnMlEKIM-g8,3966
131
140
  dodal/devices/i19/hutch_access.py,sha256=hnClUWCL1qTYzuBMmhXX85jiNak7mbYfyHEh54tZ27U,377
132
- dodal/devices/i19/shutter.py,sha256=f4prmJGziHuRN0tRgPc-PkFMpQQkvxsRhlyX9cm3SvE,3236
141
+ dodal/devices/i19/shutter.py,sha256=Z3_UO3TmSczJrB8AcU5ohk8WlDN04a00XhSyDLAHvbc,1815
133
142
  dodal/devices/i20_1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
134
- dodal/devices/i22/dcm.py,sha256=SQDh-Sj1OvplHZ9yTWblJwv8PJrUqxseDPupZOWmcLo,4701
143
+ dodal/devices/i22/dcm.py,sha256=IbK56lSvX3PZlYKVeH7mIbRK83-mhJEIoTn1zjQfScE,4494
135
144
  dodal/devices/i22/fswitch.py,sha256=LSMoo9aDkH0SLcojbUh2NxTWIpUXHZxauTqThc3XtSk,3073
136
145
  dodal/devices/i22/nxsas.py,sha256=lFB_h6ns6yETPFZjDghOMZLg16nDnWveMOJV34TDSYk,5994
137
146
  dodal/devices/i24/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
138
147
  dodal/devices/i24/aperture.py,sha256=XlnOyQsvdTom1dJHVUg8CUSthq3jlBlZFOUaa9b1eZ4,837
139
148
  dodal/devices/i24/beam_center.py,sha256=m6LWsG9e_lhtPfZ8pc_hoLNyTYQQGGdRNav8J_2scTo,483
140
149
  dodal/devices/i24/beamstop.py,sha256=89ncXUisia1rn1Faf5iWg3k0QW6Rm99j1vq9A8l9Xv8,1221
141
- dodal/devices/i24/dcm.py,sha256=Q3qqlgsiLJga2cgI8L4jczjyUgQixJh6QWg7shrFpTQ,1988
150
+ dodal/devices/i24/dcm.py,sha256=9eNCGq-lpyFAftLxLxlhG_enzVmrx1nbwMxGFP_UBvU,1354
142
151
  dodal/devices/i24/dual_backlight.py,sha256=CbQ9mYUNhhozVdNXqR5ac73tEIAWT2RnEpRwXB3EFog,2049
143
152
  dodal/devices/i24/focus_mirrors.py,sha256=vkDUxnvGG3vqrsDR90YM84U8_fPUesmiD5XE1Fb4k2c,1863
144
153
  dodal/devices/i24/i24_detector_motion.py,sha256=_HgdsZqFYY0tKqUgMzViHaPEUFXL3WlXXioGvDehRUw,364
@@ -163,15 +172,14 @@ dodal/devices/p99/sample_stage.py,sha256=DvHU556Gp0wFiufZiwY3o2W4xmsCL5uSwNnhd8H
163
172
  dodal/devices/training_rig/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
164
173
  dodal/devices/training_rig/sample_stage.py,sha256=jktTp837ij8wor5LidE3AajCk95L7DebJotMlO7QwTE,355
165
174
  dodal/devices/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
166
- dodal/devices/util/adjuster_plans.py,sha256=XpJ1YJKoOCFzj2sonkZYJAdewi3jRaok_2gOmNsfeS0,956
175
+ dodal/devices/util/adjuster_plans.py,sha256=uwlBu-NxAOF83DLJKGk7sqHjEBhOz9wtPHMAD2VCwow,902
167
176
  dodal/devices/util/epics_util.py,sha256=3_d0m7BTvN19WIKvz2XSMvoPdTdccg9Z2gOAL-52q4s,4692
168
- dodal/devices/util/lookup_tables.py,sha256=3gU9cOBhHBu1S6XqXHWNjCNkV7F4Z-eDlDfesvKbMg4,2185
169
- dodal/devices/util/motor_utils.py,sha256=pNY-aUk9LxaIWeDr5rpMS6udiB9j19wcCXkNDLp1uA0,257
170
- dodal/devices/util/test_utils.py,sha256=x0QVKVeST4T-wpsVSSm-169MyNRXlmybVWnPTefv1as,565
177
+ dodal/devices/util/lookup_tables.py,sha256=jH9f_D8JbTSqzL-RKHUWOORLt8lEoNQL3o9HpXE98TY,3476
178
+ dodal/devices/util/test_utils.py,sha256=KEYkqyZrAyju438VCbtQ0Ujv-9GBuIuVGCgggDHUO9M,607
171
179
  dodal/devices/xspress3/xspress3.py,sha256=75RdPuHpES4Xi-Lcywz0XUhaN2G3vZSoc-dzgcxfNvs,4636
172
180
  dodal/devices/xspress3/xspress3_channel.py,sha256=w8tAx2lz5kJ_LeJ_eb_4o--Dtt8MRijsYNgDG6oEIVg,1626
173
181
  dodal/devices/zebra/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
174
- dodal/devices/zebra/zebra.py,sha256=UPryxnhvEb9Y2hefYWbTZShmVKULghftHyO1LVJRLpI,9248
182
+ dodal/devices/zebra/zebra.py,sha256=PpgGVrtb7t5QTNchEalSG3bPeOqf6tPzOUHoOyARWLY,9290
175
183
  dodal/devices/zebra/zebra_constants_mapping.py,sha256=DCWMvBFvmN90rBpZ4aOVF_hbKm4K6QWubsG811R-MK8,4170
176
184
  dodal/devices/zebra/zebra_controlled_shutter.py,sha256=tcBq2WQxST9g2VrjVWu-tOomFX-zGLHLNDhYhL0DtHc,1871
177
185
  dodal/devices/zocalo/__init__.py,sha256=dRAZ9o7B9TACqyE7aanT3yzvqWtt019YgV5ZJY7Ylso,517
@@ -181,18 +189,20 @@ dodal/devices/zocalo/zocalo_results.py,sha256=cmKlgu-42CAu2X2aIgjxmfdUXypF4RHRNR
181
189
  dodal/parameters/experiment_parameter_base.py,sha256=O7JamfuJ5cYHkPf9tsHJPqn-OMHTAGouigvM1cDFehE,313
182
190
  dodal/plan_stubs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
183
191
  dodal/plan_stubs/check_topup.py,sha256=3gyLHfHNQBCgEWuAg4QE-ONx7y2Do1vVv5HP8ss0Z1I,5371
184
- dodal/plan_stubs/data_session.py,sha256=PsRrGceZg7M5LkjQZ8DD2FlSX1fmoyhMPgLDXTEX3m4,1873
192
+ dodal/plan_stubs/data_session.py,sha256=Syc6XKaN1usf7bNWOez8_vAH3byrcROqskmBrSUWa4Y,2132
185
193
  dodal/plan_stubs/motor_utils.py,sha256=Mf8utOA_xmxUa2dLmQ1uRkdfyDTip7D8YcKeCBCQLUQ,4458
186
194
  dodal/plan_stubs/wrapped.py,sha256=kC8HH7bx3-sLYu2oieY_502tAdT2OECF8n-fqoL5Bfc,4266
195
+ dodal/plan_stubs/electron_analyser/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
196
+ dodal/plan_stubs/electron_analyser/configure_controller.py,sha256=wbQJc1Z0Vlzc5d0ektkaQGyyLM-PO6BOv4hjtfpqss0,2832
187
197
  dodal/plans/__init__.py,sha256=nH1jNxw3DzDMg9O8Uda0kqKIalRVEWBrq07OLY6Ey38,93
188
198
  dodal/plans/save_panda.py,sha256=1fumH7Ih8uDIv8ahAtgQ_vUuR3dz0sfUs4n9TEtEbSs,3053
189
199
  dodal/plans/scanspec.py,sha256=Q0AcvTKRT401iGMRDSqK-D523UX5_ofiVMZ_rNXKOx8,2074
190
- dodal/plans/verify_undulator_gap.py,sha256=mq2fHtc5o5rSgdTM2xhULOImfjwa6x29tPpeoLw4GcU,553
200
+ dodal/plans/verify_undulator_gap.py,sha256=OcDN09-eCoMzsmhKGxvzsH5EapG2zYz0yGCqUtQxLSc,568
191
201
  dodal/plans/wrapped.py,sha256=BPMw__RcWvk9v5XnhMsi9_k4KsDEbmXogzD2n1ecbUg,2098
192
202
  dodal/plans/preprocessors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
193
203
  dodal/plans/preprocessors/verify_undulator_gap.py,sha256=cBZEGq8TW1jrXFXB00iClQVXSEaE_jP_rHMY9WTgYyY,1813
194
- dls_dodal-1.44.0.dist-info/METADATA,sha256=oP4ZiLT1uNpP5A8RwfEk5WxBqWoPuONaUZeRZL2Ci6M,16806
195
- dls_dodal-1.44.0.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
196
- dls_dodal-1.44.0.dist-info/entry_points.txt,sha256=bycw_EKUzup_rxfCetOwcauXV4kLln_OPpPT8jEnr-I,94
197
- dls_dodal-1.44.0.dist-info/top_level.txt,sha256=xIozdmZk_wmMV4wugpq9-6eZs0vgADNUKz3j2UAwlhc,6
198
- dls_dodal-1.44.0.dist-info/RECORD,,
204
+ dls_dodal-1.46.0.dist-info/METADATA,sha256=pRapE3URGvj3ihEkVa3VeglDUl2kXjmyhIdDGeUlqb0,16806
205
+ dls_dodal-1.46.0.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
206
+ dls_dodal-1.46.0.dist-info/entry_points.txt,sha256=bycw_EKUzup_rxfCetOwcauXV4kLln_OPpPT8jEnr-I,94
207
+ dls_dodal-1.46.0.dist-info/top_level.txt,sha256=xIozdmZk_wmMV4wugpq9-6eZs0vgADNUKz3j2UAwlhc,6
208
+ dls_dodal-1.46.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (78.1.0)
2
+ Generator: setuptools (79.0.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
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.44.0'
21
- __version_tuple__ = version_tuple = (1, 44, 0)
20
+ __version__ = version = '1.46.0'
21
+ __version_tuple__ = version_tuple = (1, 46, 0)
@@ -9,6 +9,8 @@ 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
+ "b07-1": "b07_1",
13
+ "i09-1": "i09_1",
12
14
  "i13-1": "i13_1",
13
15
  "i20-1": "i20_1",
14
16
  "i19-1": "i19_1",
dodal/beamlines/b07.py ADDED
@@ -0,0 +1,27 @@
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.electron_analyser.specs_analyser_io import (
6
+ SpecsAnalyserDriverIO,
7
+ )
8
+ from dodal.devices.synchrotron import Synchrotron
9
+ from dodal.log import set_beamline as set_log_beamline
10
+ from dodal.utils import BeamlinePrefix, get_beamline_name
11
+
12
+ BL = get_beamline_name("b07")
13
+ PREFIX = BeamlinePrefix(BL, suffix="B")
14
+ set_log_beamline(BL)
15
+ set_utils_beamline(BL)
16
+
17
+
18
+ @device_factory()
19
+ def synchrotron() -> Synchrotron:
20
+ return Synchrotron()
21
+
22
+
23
+ @device_factory()
24
+ def analyser_driver() -> SpecsAnalyserDriverIO:
25
+ return SpecsAnalyserDriverIO(
26
+ name="analyser_driver", prefix=f"{PREFIX.beamline_prefix}-EA-DET-01:CAM:"
27
+ )
@@ -0,0 +1,25 @@
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.electron_analyser.specs_analyser_io import (
6
+ SpecsAnalyserDriverIO,
7
+ )
8
+ from dodal.devices.synchrotron import Synchrotron
9
+ from dodal.log import set_beamline as set_log_beamline
10
+ from dodal.utils import BeamlinePrefix, get_beamline_name
11
+
12
+ BL = get_beamline_name("b07-1")
13
+ PREFIX = BeamlinePrefix(BL, suffix="C")
14
+ set_log_beamline(BL)
15
+ set_utils_beamline(BL)
16
+
17
+
18
+ @device_factory()
19
+ def synchrotron() -> Synchrotron:
20
+ return Synchrotron()
21
+
22
+
23
+ @device_factory()
24
+ def analyser_driver() -> SpecsAnalyserDriverIO:
25
+ return SpecsAnalyserDriverIO(prefix=f"{PREFIX.beamline_prefix}-EA-DET-01:CAM:")
dodal/beamlines/i03.py CHANGED
@@ -18,7 +18,6 @@ from dodal.devices.attenuator.attenuator import BinaryFilterAttenuator
18
18
  from dodal.devices.backlight import Backlight
19
19
  from dodal.devices.baton import Baton
20
20
  from dodal.devices.cryostream import CryoStream
21
- from dodal.devices.dcm import DCM
22
21
  from dodal.devices.detector.detector_motion import DetectorMotion
23
22
  from dodal.devices.diamond_filter import DiamondFilter, I03Filters
24
23
  from dodal.devices.eiger import EigerDetector
@@ -26,6 +25,8 @@ from dodal.devices.fast_grid_scan import PandAFastGridScan, ZebraFastGridScan
26
25
  from dodal.devices.flux import Flux
27
26
  from dodal.devices.focusing_mirror import FocusingMirrorWithStripes, MirrorVoltages
28
27
  from dodal.devices.i03.beamstop import Beamstop
28
+ from dodal.devices.i03.dcm import DCM
29
+ from dodal.devices.i03.undulator_dcm import UndulatorDCM
29
30
  from dodal.devices.motors import XYZPositioner
30
31
  from dodal.devices.oav.oav_detector import OAV
31
32
  from dodal.devices.oav.oav_parameters import OAVConfig
@@ -37,7 +38,6 @@ from dodal.devices.smargon import Smargon
37
38
  from dodal.devices.synchrotron import Synchrotron
38
39
  from dodal.devices.thawer import Thawer
39
40
  from dodal.devices.undulator import Undulator
40
- from dodal.devices.undulator_dcm import UndulatorDCM
41
41
  from dodal.devices.webcam import Webcam
42
42
  from dodal.devices.xbpm_feedback import XBPMFeedback
43
43
  from dodal.devices.xspress3.xspress3 import Xspress3
@@ -113,8 +113,8 @@ def dcm() -> DCM:
113
113
  If this is called when already instantiated in i03, it will return the existing object.
114
114
  """
115
115
  return DCM(
116
- f"{PREFIX.beamline_prefix}-MO-DCM-01:",
117
- "dcm",
116
+ prefix=f"{PREFIX.beamline_prefix}-MO-DCM-01:",
117
+ name="dcm",
118
118
  )
119
119
 
120
120
 
dodal/beamlines/i04.py CHANGED
@@ -10,13 +10,13 @@ from dodal.devices.aperturescatterguard import (
10
10
  )
11
11
  from dodal.devices.attenuator.attenuator import BinaryFilterAttenuator
12
12
  from dodal.devices.backlight import Backlight
13
- from dodal.devices.dcm import DCM
14
13
  from dodal.devices.detector import DetectorParams
15
14
  from dodal.devices.detector.detector_motion import DetectorMotion
16
15
  from dodal.devices.diamond_filter import DiamondFilter, I04Filters
17
16
  from dodal.devices.eiger import EigerDetector
18
17
  from dodal.devices.fast_grid_scan import ZebraFastGridScan
19
18
  from dodal.devices.flux import Flux
19
+ from dodal.devices.i03.dcm import DCM
20
20
  from dodal.devices.i04.transfocator import Transfocator
21
21
  from dodal.devices.ipin import IPin
22
22
  from dodal.devices.motors import XYZPositioner
dodal/beamlines/i09.py ADDED
@@ -0,0 +1,25 @@
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.electron_analyser.vgscienta_analyser_io import (
6
+ VGScientaAnalyserDriverIO,
7
+ )
8
+ from dodal.devices.synchrotron import Synchrotron
9
+ from dodal.log import set_beamline as set_log_beamline
10
+ from dodal.utils import BeamlinePrefix, get_beamline_name
11
+
12
+ BL = get_beamline_name("i09")
13
+ PREFIX = BeamlinePrefix(BL)
14
+ set_log_beamline(BL)
15
+ set_utils_beamline(BL)
16
+
17
+
18
+ @device_factory()
19
+ def synchrotron() -> Synchrotron:
20
+ return Synchrotron()
21
+
22
+
23
+ @device_factory()
24
+ def analyser_driver() -> VGScientaAnalyserDriverIO:
25
+ return VGScientaAnalyserDriverIO(prefix=f"{PREFIX.beamline_prefix}-EA-DET-01:CAM:")
@@ -0,0 +1,25 @@
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.electron_analyser.specs_analyser_io import (
6
+ SpecsAnalyserDriverIO,
7
+ )
8
+ from dodal.devices.synchrotron import Synchrotron
9
+ from dodal.log import set_beamline as set_log_beamline
10
+ from dodal.utils import BeamlinePrefix, get_beamline_name
11
+
12
+ BL = get_beamline_name("i09-1")
13
+ PREFIX = BeamlinePrefix(BL, suffix="I")
14
+ set_log_beamline(BL)
15
+ set_utils_beamline(BL)
16
+
17
+
18
+ @device_factory()
19
+ def synchrotron() -> Synchrotron:
20
+ return Synchrotron()
21
+
22
+
23
+ @device_factory()
24
+ def analyser_driver() -> SpecsAnalyserDriverIO:
25
+ return SpecsAnalyserDriverIO(prefix=f"{PREFIX.beamline_prefix}-EA-DET-02:CAM:")
dodal/beamlines/i10.py CHANGED
@@ -8,6 +8,7 @@ from dodal.devices.apple2_undulator import (
8
8
  UndulatorPhaseAxes,
9
9
  )
10
10
  from dodal.devices.current_amplifiers import CurrentAmpDet
11
+ from dodal.devices.i10.diagnostics import I10Diagnostic, I10Diagnostic5ADet
11
12
  from dodal.devices.i10.i10_apple2 import (
12
13
  I10Apple2,
13
14
  I10Apple2PGM,
@@ -24,10 +25,9 @@ from dodal.devices.i10.rasor.rasor_motors import (
24
25
  PinHole,
25
26
  )
26
27
  from dodal.devices.i10.rasor.rasor_scaler_cards import RasorScalerCard1
27
- from dodal.devices.i10.slits import I10PrimarySlits, I10Slits
28
+ from dodal.devices.i10.slits import I10Slits, I10SlitsDrainCurrent
28
29
  from dodal.devices.motors import XYZPositioner
29
30
  from dodal.devices.pgm import PGM
30
- from dodal.devices.slits import MinimalSlits
31
31
  from dodal.log import set_beamline as set_log_beamline
32
32
  from dodal.utils import BeamlinePrefix, get_beamline_name
33
33
 
@@ -272,6 +272,9 @@ def idd_la_angle(
272
272
  )
273
273
 
274
274
 
275
+ """Mirrors"""
276
+
277
+
275
278
  @device_factory()
276
279
  def first_mirror() -> PiezoMirror:
277
280
  return PiezoMirror(prefix=f"{PREFIX.beamline_prefix}-OP-COL-01:")
@@ -283,58 +286,39 @@ def switching_mirror() -> PiezoMirror:
283
286
 
284
287
 
285
288
  @device_factory()
286
- def slit_1() -> I10PrimarySlits:
287
- return I10PrimarySlits(
288
- prefix=f"{PREFIX.beamline_prefix}-AL-SLITS-01:",
289
- )
289
+ def focusing_mirror() -> PiezoMirror:
290
+ return PiezoMirror(prefix=f"{PREFIX.beamline_prefix}-OP-FOCS-01:")
290
291
 
291
292
 
292
- @device_factory()
293
- def slit_2() -> I10Slits:
294
- return I10Slits(
295
- prefix=f"{PREFIX.beamline_prefix}-AL-SLITS-02:",
296
- )
293
+ """Optic slits"""
297
294
 
298
295
 
299
296
  @device_factory()
300
- def slit_3() -> I10Slits:
301
- return I10Slits(
302
- prefix=f"{PREFIX.beamline_prefix}-AL-SLITS-03:",
303
- )
304
-
305
-
306
- """Rasor devices"""
297
+ def slits() -> I10Slits:
298
+ return I10Slits(prefix=f"{PREFIX.beamline_prefix}-AL-SLITS-")
307
299
 
308
300
 
309
301
  @device_factory()
310
- def focusing_mirror() -> PiezoMirror:
311
- return PiezoMirror(prefix=f"{PREFIX.beamline_prefix}-OP-FOCS-01:")
302
+ def slits_current() -> I10SlitsDrainCurrent:
303
+ return I10SlitsDrainCurrent(prefix=f"{PREFIX.beamline_prefix}-")
312
304
 
313
305
 
314
- @device_factory()
315
- def slit_4() -> MinimalSlits:
316
- return MinimalSlits(
317
- prefix=f"{PREFIX.beamline_prefix}-AL-SLITS-04:",
318
- x_gap="XSIZE",
319
- y_gap="YSIZE",
320
- )
306
+ """Diagnostics"""
321
307
 
322
308
 
323
309
  @device_factory()
324
- def slit_5() -> I10Slits:
325
- return I10Slits(
326
- prefix=f"{PREFIX.beamline_prefix}-AL-SLITS-05:",
310
+ def diagnostics() -> I10Diagnostic:
311
+ return I10Diagnostic(
312
+ prefix=f"{PREFIX.beamline_prefix}-DI-",
327
313
  )
328
314
 
329
315
 
330
316
  @device_factory()
331
- def slit_6() -> I10Slits:
332
- return I10Slits(
333
- prefix=f"{PREFIX.beamline_prefix}-AL-SLITS-06:",
334
- )
317
+ def d5a_det() -> I10Diagnostic5ADet:
318
+ return I10Diagnostic5ADet(prefix=f"{PREFIX.beamline_prefix}-DI-")
335
319
 
336
320
 
337
- "Rasor devices"
321
+ """Rasor devices"""
338
322
 
339
323
 
340
324
  @device_factory()
dodal/beamlines/i18.py CHANGED
@@ -12,7 +12,7 @@ from dodal.common.visit import (
12
12
  LocalDirectoryServiceClient,
13
13
  StaticVisitPathProvider,
14
14
  )
15
- from dodal.devices.dcm import DCM
15
+ from dodal.devices.common_dcm import BaseDCM, PitchAndRollCrystal, RollCrystal
16
16
  from dodal.devices.i18.diode import Diode
17
17
  from dodal.devices.i18.KBMirror import KBMirror
18
18
  from dodal.devices.i18.table import Table
@@ -54,12 +54,15 @@ def undulator() -> Undulator:
54
54
  return Undulator(f"{PREFIX.insertion_prefix}-MO-SERVC-01:")
55
55
 
56
56
 
57
- @device_factory()
58
- def dcm() -> DCM:
57
+ # See https://github.com/DiamondLightSource/dodal/issues/1180
58
+ @device_factory(skip=True)
59
+ def dcm() -> BaseDCM[RollCrystal, PitchAndRollCrystal]:
59
60
  # once spacing is added Si111 d-spacing is 3.135 angsterm , and Si311 is 1.637
60
61
  # calculations are in gda/config/lookupTables/Si111/eV_Deg_converter.xml
61
- return DCM(
62
+ return BaseDCM(
62
63
  prefix=f"{PREFIX.beamline_prefix}-MO-DCM-01:",
64
+ xtal_1=RollCrystal,
65
+ xtal_2=PitchAndRollCrystal,
63
66
  )
64
67
 
65
68
 
dodal/beamlines/i19_1.py CHANGED
@@ -5,7 +5,8 @@ from dodal.common.beamlines.beamline_utils import (
5
5
  set_beamline as set_utils_beamline,
6
6
  )
7
7
  from dodal.devices.i19.beamstop import BeamStop
8
- from dodal.devices.i19.shutter import AccessControlledShutter, HutchState
8
+ from dodal.devices.i19.blueapi_device import HutchState
9
+ from dodal.devices.i19.shutter import AccessControlledShutter
9
10
  from dodal.devices.oav.oav_detector import OAV
10
11
  from dodal.devices.oav.oav_parameters import OAVConfig
11
12
  from dodal.devices.synchrotron import Synchrotron
dodal/beamlines/i19_2.py CHANGED
@@ -5,7 +5,8 @@ from dodal.common.beamlines.beamline_utils import (
5
5
  set_beamline as set_utils_beamline,
6
6
  )
7
7
  from dodal.devices.i19.beamstop import BeamStop
8
- from dodal.devices.i19.shutter import AccessControlledShutter, HutchState
8
+ from dodal.devices.i19.blueapi_device import HutchState
9
+ from dodal.devices.i19.shutter import AccessControlledShutter
9
10
  from dodal.devices.synchrotron import Synchrotron
10
11
  from dodal.devices.zebra.zebra import Zebra
11
12
  from dodal.devices.zebra.zebra_constants_mapping import (
dodal/beamlines/i20_1.py CHANGED
@@ -32,7 +32,8 @@ set_path_provider(
32
32
  )
33
33
 
34
34
 
35
- @device_factory()
35
+ # NOTE this is mock as we cannot move items on the beamline until we get sign-off to do so
36
+ @device_factory(mock=True)
36
37
  def turbo_slit() -> TurboSlit:
37
38
  """
38
39
  turboslit for selecting energy from the polychromator
dodal/beamlines/i22.py CHANGED
@@ -18,7 +18,7 @@ from dodal.common.crystal_metadata import (
18
18
  from dodal.common.visit import RemoteDirectoryServiceClient, StaticVisitPathProvider
19
19
  from dodal.devices.bimorph_mirror import BimorphMirror
20
20
  from dodal.devices.focusing_mirror import FocusingMirror
21
- from dodal.devices.i22.dcm import DoubleCrystalMonochromator
21
+ from dodal.devices.i22.dcm import DCM
22
22
  from dodal.devices.i22.fswitch import FSwitch
23
23
  from dodal.devices.i22.nxsas import NXSasMetadataHolder, NXSasOAV, NXSasPilatus
24
24
  from dodal.devices.linkam3 import Linkam3
@@ -141,8 +141,8 @@ def bimorph_vfm() -> BimorphMirror:
141
141
 
142
142
 
143
143
  @device_factory()
144
- def dcm() -> DoubleCrystalMonochromator:
145
- return DoubleCrystalMonochromator(
144
+ def dcm() -> DCM:
145
+ return DCM(
146
146
  prefix=f"{PREFIX.beamline_prefix}-MO-DCM-01:",
147
147
  temperature_prefix=f"{PREFIX.beamline_prefix}-DI-DCM-01:",
148
148
  crystal_1_metadata=make_crystal_metadata_from_material(