dls-dodal 1.48.0__py3-none-any.whl → 1.50.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.
- {dls_dodal-1.48.0.dist-info → dls_dodal-1.50.0.dist-info}/METADATA +2 -1
- {dls_dodal-1.48.0.dist-info → dls_dodal-1.50.0.dist-info}/RECORD +41 -30
- dodal/_version.py +2 -2
- dodal/beamlines/aithre.py +15 -0
- dodal/beamlines/b16.py +65 -0
- dodal/beamlines/b18.py +38 -0
- dodal/beamlines/i10.py +41 -233
- dodal/beamlines/k11.py +35 -0
- dodal/common/beamlines/device_helpers.py +1 -0
- dodal/devices/apple2_undulator.py +257 -136
- dodal/devices/b16/__init__.py +0 -0
- dodal/devices/b16/detector.py +34 -0
- dodal/devices/bimorph_mirror.py +29 -36
- dodal/devices/electron_analyser/__init__.py +12 -2
- dodal/devices/electron_analyser/abstract/base_detector.py +3 -128
- dodal/devices/electron_analyser/abstract/base_driver_io.py +8 -3
- dodal/devices/electron_analyser/abstract/base_region.py +6 -3
- dodal/devices/electron_analyser/detector.py +141 -0
- dodal/devices/electron_analyser/enums.py +6 -0
- dodal/devices/electron_analyser/specs/__init__.py +2 -0
- dodal/devices/electron_analyser/specs/detector.py +1 -1
- dodal/devices/electron_analyser/specs/driver_io.py +4 -5
- dodal/devices/electron_analyser/specs/enums.py +8 -0
- dodal/devices/electron_analyser/specs/region.py +3 -2
- dodal/devices/electron_analyser/types.py +30 -4
- dodal/devices/electron_analyser/util.py +1 -1
- dodal/devices/electron_analyser/vgscienta/__init__.py +2 -0
- dodal/devices/electron_analyser/vgscienta/detector.py +1 -1
- dodal/devices/electron_analyser/vgscienta/driver_io.py +2 -1
- dodal/devices/electron_analyser/vgscienta/enums.py +19 -0
- dodal/devices/electron_analyser/vgscienta/region.py +7 -22
- dodal/devices/hutch_shutter.py +6 -6
- dodal/devices/i10/__init__.py +0 -0
- dodal/devices/i10/i10_apple2.py +181 -126
- dodal/devices/i22/nxsas.py +1 -1
- dodal/devices/oav/oav_detector.py +45 -7
- dodal/plans/bimorph.py +333 -0
- {dls_dodal-1.48.0.dist-info → dls_dodal-1.50.0.dist-info}/WHEEL +0 -0
- {dls_dodal-1.48.0.dist-info → dls_dodal-1.50.0.dist-info}/entry_points.txt +0 -0
- {dls_dodal-1.48.0.dist-info → dls_dodal-1.50.0.dist-info}/licenses/LICENSE +0 -0
- {dls_dodal-1.48.0.dist-info → dls_dodal-1.50.0.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dls-dodal
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.50.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
|
|
@@ -234,6 +234,7 @@ Requires-Dist: aiohttp
|
|
|
234
234
|
Requires-Dist: redis
|
|
235
235
|
Requires-Dist: deepdiff
|
|
236
236
|
Requires-Dist: scanspec>=0.7.3
|
|
237
|
+
Requires-Dist: event-model>=1.23
|
|
237
238
|
Provides-Extra: dev
|
|
238
239
|
Requires-Dist: black; extra == "dev"
|
|
239
240
|
Requires-Dist: diff-cover; extra == "dev"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
dls_dodal-1.
|
|
1
|
+
dls_dodal-1.50.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=
|
|
4
|
+
dodal/_version.py,sha256=EDlHUWODqx60XSwjWm_Ktz1n2BnxgiT-qk2UvfHj1II,513
|
|
5
5
|
dodal/cli.py,sha256=NieWNUgLUxyck1rHoFAPJjX1xXLzHNdQ-s4wvxYFfps,3757
|
|
6
6
|
dodal/log.py,sha256=Rt5O3hFZfMnJvQueZvgagQuXnPqHrFxhponOvVkpfrk,9871
|
|
7
7
|
dodal/utils.py,sha256=rqQNalufZPxUPSD2SYuUgWSCpefb8FnqvR6N0t-YcEY,19675
|
|
@@ -10,16 +10,18 @@ dodal/beamline_specific_utils/i03.py,sha256=P6Ls4FoVtcacH0RJM3v6ZwwGx27oMppcBdW0
|
|
|
10
10
|
dodal/beamlines/README.md,sha256=K9MkL_GomxlsoTB7Mz-_dJA5NNSbmCfMiutchGg3C8o,404
|
|
11
11
|
dodal/beamlines/__init__.py,sha256=lueGFb7cW1kDB_LfFavhrgYdjqGErCwAOk5XoU3BY00,3176
|
|
12
12
|
dodal/beamlines/adsim.py,sha256=uOmFYZIGyput93XHk9R5ydZdxnTrS_wA2zSEm62UCVU,1930
|
|
13
|
-
dodal/beamlines/aithre.py,sha256=
|
|
13
|
+
dodal/beamlines/aithre.py,sha256=QpNIT9RVtlyamJoshAa87Cw5U0QfBNwMBcZVvMlD25s,1037
|
|
14
14
|
dodal/beamlines/b01_1.py,sha256=SdjnpssxlpdTwE1D2fuXUsf9WmvUsyg-MSp3DONXyQU,2008
|
|
15
15
|
dodal/beamlines/b07.py,sha256=Fxsn9YDKySnE3zZgtpD8-LSb4IzWlb5xd6sLTCRrvFU,740
|
|
16
16
|
dodal/beamlines/b07_1.py,sha256=nY5fMUDoxn91OG2miVh5cXNQDH8o881yMW9RfZMRlnQ,742
|
|
17
|
+
dodal/beamlines/b16.py,sha256=0MF-wKfogDkZ6wo0DiqCUor0cNG6cYvMdcYr88KuRdY,1690
|
|
18
|
+
dodal/beamlines/b18.py,sha256=ryxrGtcCdwoFgZ8ljWYgr1g9gKvoA7nxkARVxl1IE78,1189
|
|
17
19
|
dodal/beamlines/i02_1.py,sha256=d2IyqFMgeaSEyZYm7GMSjTKr7_02SakyC_oARx-XwnY,1204
|
|
18
20
|
dodal/beamlines/i03.py,sha256=jLiqH3R_TK2sHsI1zCZ91cYcATEtG28-5lMUcsQTXhU,15594
|
|
19
21
|
dodal/beamlines/i04.py,sha256=_ogXHZZbJVNoMIOKLZe_8TbLP3vC4wss5lqqmzctR40,13723
|
|
20
22
|
dodal/beamlines/i09.py,sha256=cr75vG65pgyWkEYdpcdpuuqAhN_tkmBiBqJn76lQN3k,744
|
|
21
23
|
dodal/beamlines/i09_1.py,sha256=UbBn1q4L8BZXjZ1rUZQImwO0zkIYqGd5T8FptlFFMyw,742
|
|
22
|
-
dodal/beamlines/i10.py,sha256=
|
|
24
|
+
dodal/beamlines/i10.py,sha256=wg-yKw_a2hK_Tx7rym2Rq7oo8GlluoSQK77HcZNohPY,5716
|
|
23
25
|
dodal/beamlines/i13_1.py,sha256=RF8AXBqVKPY7rVf4j1gOxcURAToYVk-Yo9t4FWyaphU,1650
|
|
24
26
|
dodal/beamlines/i18.py,sha256=CbzdLHXcIhLl1T-GmXmnNOhwHojl8V3d3ikxVoCqXII,3657
|
|
25
27
|
dodal/beamlines/i19_1.py,sha256=RsHXje1S2OLwuPnaqkRva02aAIq5Ya1FvPbHEQKo0Uc,2925
|
|
@@ -29,6 +31,7 @@ dodal/beamlines/i20_1.py,sha256=Xp6XXofjXh3Yibrg5wSHet-pXikprJ9oprEhJg19OkI,1825
|
|
|
29
31
|
dodal/beamlines/i22.py,sha256=GAS1KgRrtpdXhYb7tIO3yHHMRcffxOqcSIaCZyexnDk,7595
|
|
30
32
|
dodal/beamlines/i23.py,sha256=pf3KmzLZYDVqUB4LkLcNJk6z9H4qkFpTdVB8_0MYehs,3066
|
|
31
33
|
dodal/beamlines/i24.py,sha256=D83MIeoyC-tzd5QcR0yiLUyzraAyBTObx7VnP5-okSk,7158
|
|
34
|
+
dodal/beamlines/k11.py,sha256=sBOl-MLk7FMo10KFykuK5aLqH1zyW4FnI0XXmtQhUfg,978
|
|
32
35
|
dodal/beamlines/p38.py,sha256=bka6zsZfFiBAD-rrLSmIIVAOAw0FvupSkhOHGEG77xo,5708
|
|
33
36
|
dodal/beamlines/p45.py,sha256=2snO895TGwf4LbNIvg4BkvAGSfvZcevdpv_82MRpXKo,2129
|
|
34
37
|
dodal/beamlines/p60.py,sha256=IJQdemlEkvVMYcyqp2WkyEwPAQrjor33b52wrfEVDIs,615
|
|
@@ -45,16 +48,16 @@ dodal/common/visit.py,sha256=BLpr3GrP7Ij95V135hRJLgg7gWtBKXVxyOibWtcO8RE,5782
|
|
|
45
48
|
dodal/common/beamlines/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
46
49
|
dodal/common/beamlines/beamline_parameters.py,sha256=H9d4fLwVist7G-KdKYcv9D28E0tkhPtGPfiJ4V_5iHI,2721
|
|
47
50
|
dodal/common/beamlines/beamline_utils.py,sha256=uy-HWchyUwoIqYYUWAd4BOPPoDzqvvtgkWQGzuKStTg,5061
|
|
48
|
-
dodal/common/beamlines/device_helpers.py,sha256=
|
|
51
|
+
dodal/common/beamlines/device_helpers.py,sha256=V0hdBegQZ0ZILTT00tFFA8nNOOFta3tBMH3fsF1ZsBg,1024
|
|
49
52
|
dodal/devices/CTAB.py,sha256=5_261Ox6NG2cJIzzwnjWz289BG0nZoE0wKOaI5V5jqM,1998
|
|
50
53
|
dodal/devices/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
51
54
|
dodal/devices/adsim.py,sha256=vCexraF4zLssHdjfPod-XuQGJE_sWoCttFdx__HDS8w,488
|
|
52
55
|
dodal/devices/aperture.py,sha256=yyw2ei3gM_lmZWDQ6VTbydB58RCDTen_nqBZyoTP2IM,583
|
|
53
56
|
dodal/devices/aperturescatterguard.py,sha256=i2hLNyf5_7UOuySdkjckb9RWMZrGcZkOF7cfDUj4V-E,12216
|
|
54
|
-
dodal/devices/apple2_undulator.py,sha256=
|
|
57
|
+
dodal/devices/apple2_undulator.py,sha256=PlgSpeCYfAMDYwOLx06Vzk_Iz_VGPwht1JbbwHjVyFQ,26291
|
|
55
58
|
dodal/devices/backlight.py,sha256=RcgeA1hE3Z_5jA-jH8S8uLMpBfZjenRLz1lx6HTYeAo,1653
|
|
56
59
|
dodal/devices/baton.py,sha256=BnakfZxx3cIIX6Kxj8-abxn8Z9LaQODhcPbStbD0as4,485
|
|
57
|
-
dodal/devices/bimorph_mirror.py,sha256
|
|
60
|
+
dodal/devices/bimorph_mirror.py,sha256=-35vDYKZZrBgD37xBQPwuAR8SsMdm0YzWo2bgkTX4jA,4652
|
|
58
61
|
dodal/devices/common_dcm.py,sha256=8QSRE6Z10RQjfL3g4JZhyHRNI_aCKxWlzKSsDgiJHhE,3049
|
|
59
62
|
dodal/devices/cryostream.py,sha256=K-ldpredpeDTzNt4qtQMg99nKJNjBYoXBbK0WJGexzw,656
|
|
60
63
|
dodal/devices/diamond_filter.py,sha256=hySd7HnLdplpPNvBrLddLjO_3LqgD8-99Zr__Sy_GbI,689
|
|
@@ -64,7 +67,7 @@ dodal/devices/fast_grid_scan.py,sha256=NfP746FfuHW-SWs7c7-O9oocWyVjBpu89WW7kaanl
|
|
|
64
67
|
dodal/devices/fluorescence_detector_motion.py,sha256=-1qCSvW0PdT0m6BcoLxrtc0OJ5UDIBsEe11EOLr-gFw,501
|
|
65
68
|
dodal/devices/flux.py,sha256=1CDsq9yU2-ho8MfYBl50Tl9ABZwpUBHnV486PQXKNoQ,462
|
|
66
69
|
dodal/devices/focusing_mirror.py,sha256=vdUPkwyCAZBSR3LQ-EojDOoxVy1ZmOaD_nevETbj7BA,6592
|
|
67
|
-
dodal/devices/hutch_shutter.py,sha256=
|
|
70
|
+
dodal/devices/hutch_shutter.py,sha256=iY3qWxDr8mDlAvN_BYe2gqpXRM1hlfV3ewdwkwh0_v0,3889
|
|
68
71
|
dodal/devices/ipin.py,sha256=eq5jlKw7WGQi8VLrAWpaAIsZmfiVf-5Q0td_B22H6A4,473
|
|
69
72
|
dodal/devices/linkam3.py,sha256=2sf-_heIsDg4qmqae-w9C2Py8pG8bPB3mT0TFPQIzd0,3869
|
|
70
73
|
dodal/devices/motors.py,sha256=WSNPt9Pi7f-16yDtzAHApLOlUh1Y0aqnFICJIy2zOEs,1671
|
|
@@ -95,6 +98,8 @@ dodal/devices/areadetector/plugins/MJPG.py,sha256=QTsxCoWbofNpLMGPoOR2hWoM33Kynt
|
|
|
95
98
|
dodal/devices/attenuator/attenuator.py,sha256=Vq9Zsyf56S5fePHGeluImTUtxdwEqttBa2YBIdU5tJU,3993
|
|
96
99
|
dodal/devices/attenuator/filter.py,sha256=ZoPsTWXjllyMtKBdSIFLB7Cbc88rGof5k3ymL13VczE,422
|
|
97
100
|
dodal/devices/attenuator/filter_selections.py,sha256=lcmTprCXgSggp2L6uQ6YU0xLMljXvbspAug-WWKCXks,1410
|
|
101
|
+
dodal/devices/b16/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
102
|
+
dodal/devices/b16/detector.py,sha256=nj0Xl8uleGtD_sk6tN-h7ipAtfz-e-c-DKWVwk_xXuY,1067
|
|
98
103
|
dodal/devices/current_amplifiers/__init__.py,sha256=-MhT-t-GJ83rrvTDBCoWub_NKYkRtu4sEj8-y5XZBP0,782
|
|
99
104
|
dodal/devices/current_amplifiers/current_amplifier.py,sha256=erDVtstLNFVb4wdSqWwRCQX_ifPxOc07x_2Ba_8Y1Wg,2660
|
|
100
105
|
dodal/devices/current_amplifiers/current_amplifier_detector.py,sha256=YKA769KpU1V4GyYF3ckMgE8sXnaJyzRPUbBqIo7UruM,3968
|
|
@@ -107,21 +112,25 @@ dodal/devices/detector/det_dist_to_beam_converter.py,sha256=nSkhiEESyuzdrWoPu6h3
|
|
|
107
112
|
dodal/devices/detector/det_resolution.py,sha256=aQkKp24LpRGiwzPAQM3wLVa4ANw32HdrKc2kftHfKQA,3253
|
|
108
113
|
dodal/devices/detector/detector.py,sha256=DqQvlgdjIdKErrZqgM9IH7drc-r6N8nhkFk7KwlgYAk,4815
|
|
109
114
|
dodal/devices/detector/detector_motion.py,sha256=UGDQriDWRluDZOZh1mDX9w_fPjMD-_BGe11kA36Kezs,1616
|
|
110
|
-
dodal/devices/electron_analyser/__init__.py,sha256=
|
|
111
|
-
dodal/devices/electron_analyser/
|
|
112
|
-
dodal/devices/electron_analyser/
|
|
115
|
+
dodal/devices/electron_analyser/__init__.py,sha256=xbOqt6b0J89UkZx6PAqEjPchfY_CMb3xgX3NAMEPf6A,793
|
|
116
|
+
dodal/devices/electron_analyser/detector.py,sha256=V_fCe54S8K0C8cZXcozRKWwqm7n9B-iXf97Y9NtKAvQ,4522
|
|
117
|
+
dodal/devices/electron_analyser/enums.py,sha256=2QObyZln7pvWyLgixabGGWvfs3aIF98gVSz2B4NS1OM,120
|
|
118
|
+
dodal/devices/electron_analyser/types.py,sha256=k_uRDdHzx3sZQ11KB5PNTDQjxuGL91B3-l6sRuKdHHo,1026
|
|
119
|
+
dodal/devices/electron_analyser/util.py,sha256=iUFvnYm-Y-0mBHR8oBLofZMKKuDhYYgGkOmvX6y1s1o,437
|
|
113
120
|
dodal/devices/electron_analyser/abstract/__init__.py,sha256=OJ8rm_23azSe-MHmiyQZEUztqDnew4bRTdC2eVaiHT4,572
|
|
114
|
-
dodal/devices/electron_analyser/abstract/base_detector.py,sha256=
|
|
115
|
-
dodal/devices/electron_analyser/abstract/base_driver_io.py,sha256=
|
|
116
|
-
dodal/devices/electron_analyser/abstract/base_region.py,sha256=
|
|
117
|
-
dodal/devices/electron_analyser/specs/__init__.py,sha256=
|
|
118
|
-
dodal/devices/electron_analyser/specs/detector.py,sha256=
|
|
119
|
-
dodal/devices/electron_analyser/specs/driver_io.py,sha256=
|
|
120
|
-
dodal/devices/electron_analyser/specs/
|
|
121
|
-
dodal/devices/electron_analyser/
|
|
122
|
-
dodal/devices/electron_analyser/vgscienta/
|
|
123
|
-
dodal/devices/electron_analyser/vgscienta/
|
|
124
|
-
dodal/devices/electron_analyser/vgscienta/
|
|
121
|
+
dodal/devices/electron_analyser/abstract/base_detector.py,sha256=Tcx-lrqHr7dkGmOPMSVibZypefddRauQU_1cZTIwaVU,2979
|
|
122
|
+
dodal/devices/electron_analyser/abstract/base_driver_io.py,sha256=ZGYtzxDkPIIcrZP4G2FXXJTAGL5uDKwpdAAvcM94gWU,8824
|
|
123
|
+
dodal/devices/electron_analyser/abstract/base_region.py,sha256=KI4Nk1w9V_1p71wdqLS7IMoal54QPejghDUO4FEdWuw,3648
|
|
124
|
+
dodal/devices/electron_analyser/specs/__init__.py,sha256=qN57kY6ERUGdrAWhU5m8CBrc0KaqiOGwPL6h2BNm3i0,291
|
|
125
|
+
dodal/devices/electron_analyser/specs/detector.py,sha256=9yOmfjVE_cRPJLOLZxaeGUqV1q82YuS_oO-psWE_Wxc,528
|
|
126
|
+
dodal/devices/electron_analyser/specs/driver_io.py,sha256=hAqy0nKCR-9HLlcgJqkXpgIJy77yWsHCtS2bQ7eFM5c,3337
|
|
127
|
+
dodal/devices/electron_analyser/specs/enums.py,sha256=cXPcbIGEN5ZJJt1KeiNJEtZkkcjQ-fz7dBfsU283zYQ,235
|
|
128
|
+
dodal/devices/electron_analyser/specs/region.py,sha256=hBxrMUJrzOoJGInULEbAdnhBL74fFe7R6-c7nde8nPE,977
|
|
129
|
+
dodal/devices/electron_analyser/vgscienta/__init__.py,sha256=Iq0d2BBp0TJh4uG9twiiL-gJiSVI8zNUEbkg1UF5k6U,395
|
|
130
|
+
dodal/devices/electron_analyser/vgscienta/detector.py,sha256=JdCsTXXLbIIGIYZaNDcEGD-fagz8tjil7IbJDTfak6c,618
|
|
131
|
+
dodal/devices/electron_analyser/vgscienta/driver_io.py,sha256=NijPdgvJoTLRPSVDfO4qB7X41TflPRayZZGxfKw-V-o,2800
|
|
132
|
+
dodal/devices/electron_analyser/vgscienta/enums.py,sha256=apJZgIaE1aMQPBwIL1tQvV0WJ5trbk3j6iFmc1OqLsw,353
|
|
133
|
+
dodal/devices/electron_analyser/vgscienta/region.py,sha256=b1_L54ZxVaiO7sDOK6IbzWVi8fxgTlPAXnT4OpMfbVY,2273
|
|
125
134
|
dodal/devices/i03/__init__.py,sha256=Kvukapy4a5lUQ20qaCqYCJzKNaqJn2DfXP5nKZ_Pec8,118
|
|
126
135
|
dodal/devices/i03/dcm.py,sha256=zDcgxOdMRVOQZBGDsLaIlr7o4UJIK2vehPWHxAxt6VA,2268
|
|
127
136
|
dodal/devices/i03/undulator_dcm.py,sha256=c5H-17Dpt3pIMAlU9fHCnU59lYDnmgKk3qE2qR9gg44,2594
|
|
@@ -129,8 +138,9 @@ dodal/devices/i04/__init__.py,sha256=Kvukapy4a5lUQ20qaCqYCJzKNaqJn2DfXP5nKZ_Pec8
|
|
|
129
138
|
dodal/devices/i04/constants.py,sha256=jHZe5Aeph0_hCDJotMx7Yi8v_a_6jyoI6p60AQ8GvGM,271
|
|
130
139
|
dodal/devices/i04/murko_results.py,sha256=1vVQKQdBGYAwcX22oQzWYheelIppoTQk5_git563y10,7055
|
|
131
140
|
dodal/devices/i04/transfocator.py,sha256=sVI4Bgv-2-DH4-F1nIXMp5Aktevrm3agZnCA-WgjmW8,3780
|
|
141
|
+
dodal/devices/i10/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
132
142
|
dodal/devices/i10/diagnostics.py,sha256=5nnf1oFKtUJZa9Pewh1VxXpFecLscqTR2VakHKr_PaQ,5432
|
|
133
|
-
dodal/devices/i10/i10_apple2.py,sha256=
|
|
143
|
+
dodal/devices/i10/i10_apple2.py,sha256=RbavLeqwmmcqAkGJw9-0AmLrWSiP91tAxwJLnXXCY-4,15271
|
|
134
144
|
dodal/devices/i10/i10_setting_data.py,sha256=69XWgE-YNTiW7C3t67MNcTL5JDDhOo7h-X7DCTpFE5g,164
|
|
135
145
|
dodal/devices/i10/mirrors.py,sha256=E0M5keGI3LGaDHyXQkCCyj6xmixNY1xTSkIaaYwtnP8,794
|
|
136
146
|
dodal/devices/i10/slits.py,sha256=jI4wJPVT2vtl4bvabrU9u_v-SdGjOfDLBm0S9GMZC7w,4157
|
|
@@ -152,7 +162,7 @@ dodal/devices/i19/shutter.py,sha256=Z3_UO3TmSczJrB8AcU5ohk8WlDN04a00XhSyDLAHvbc,
|
|
|
152
162
|
dodal/devices/i20_1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
153
163
|
dodal/devices/i22/dcm.py,sha256=IbK56lSvX3PZlYKVeH7mIbRK83-mhJEIoTn1zjQfScE,4494
|
|
154
164
|
dodal/devices/i22/fswitch.py,sha256=LSMoo9aDkH0SLcojbUh2NxTWIpUXHZxauTqThc3XtSk,3073
|
|
155
|
-
dodal/devices/i22/nxsas.py,sha256=
|
|
165
|
+
dodal/devices/i22/nxsas.py,sha256=093GCM2H2LESt28RF-JfxEljJ8QzRPkL1ByXI2XVhoA,6012
|
|
156
166
|
dodal/devices/i24/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
157
167
|
dodal/devices/i24/aperture.py,sha256=XlnOyQsvdTom1dJHVUg8CUSthq3jlBlZFOUaa9b1eZ4,837
|
|
158
168
|
dodal/devices/i24/beam_center.py,sha256=m6LWsG9e_lhtPfZ8pc_hoLNyTYQQGGdRNav8J_2scTo,483
|
|
@@ -167,7 +177,7 @@ dodal/devices/i24/vgonio.py,sha256=sxSmcYZayVJPJz_D_91j9PmNor7Tbl1RGQFRrdtESlw,5
|
|
|
167
177
|
dodal/devices/mx_phase1/beamstop.py,sha256=MeSpp4YpHgIrWCifDU7OTUaJNAMLVpcmgxTMjmOy048,3170
|
|
168
178
|
dodal/devices/oav/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
169
179
|
dodal/devices/oav/oav_calculations.py,sha256=qoaNz4MAdbpu0XHAkWTQ3rebFwsWfa8JA1eerUgISjA,2367
|
|
170
|
-
dodal/devices/oav/oav_detector.py,sha256=
|
|
180
|
+
dodal/devices/oav/oav_detector.py,sha256=DzRm1d1jC52wl7JawvMWiFCaFYdnjO7HT690NzDQIXs,6730
|
|
171
181
|
dodal/devices/oav/oav_parameters.py,sha256=nnlTwrX5F6eMVK6wUz_MU39aLfV_P-_EyklfTQFAjZ4,6856
|
|
172
182
|
dodal/devices/oav/oav_to_redis_forwarder.py,sha256=Nz_fOBK9NIsFTVO-G67JB-0qzDybWb_HS7RCkqrHfd8,6265
|
|
173
183
|
dodal/devices/oav/utils.py,sha256=T-xg7J38ritzXwRrKjsWZ7daC_qR7aNhlbkXx75nJ8Q,3188
|
|
@@ -205,6 +215,7 @@ dodal/plan_stubs/data_session.py,sha256=Syc6XKaN1usf7bNWOez8_vAH3byrcROqskmBrSUW
|
|
|
205
215
|
dodal/plan_stubs/motor_utils.py,sha256=Mf8utOA_xmxUa2dLmQ1uRkdfyDTip7D8YcKeCBCQLUQ,4458
|
|
206
216
|
dodal/plan_stubs/wrapped.py,sha256=kC8HH7bx3-sLYu2oieY_502tAdT2OECF8n-fqoL5Bfc,4266
|
|
207
217
|
dodal/plans/__init__.py,sha256=nH1jNxw3DzDMg9O8Uda0kqKIalRVEWBrq07OLY6Ey38,93
|
|
218
|
+
dodal/plans/bimorph.py,sha256=JxDmZDiEvZnz5f22tlaoyivpnaNGiX8kSL82qz5uvMM,11738
|
|
208
219
|
dodal/plans/configure_arm_trigger_and_disarm_detector.py,sha256=pI1AkTH_5hIU56GmmrBdHMhepuDCuQz44V-O4XIaueg,5384
|
|
209
220
|
dodal/plans/save_panda.py,sha256=1fumH7Ih8uDIv8ahAtgQ_vUuR3dz0sfUs4n9TEtEbSs,3053
|
|
210
221
|
dodal/plans/scanspec.py,sha256=Q0AcvTKRT401iGMRDSqK-D523UX5_ofiVMZ_rNXKOx8,2074
|
|
@@ -212,8 +223,8 @@ dodal/plans/verify_undulator_gap.py,sha256=OcDN09-eCoMzsmhKGxvzsH5EapG2zYz0yGCqU
|
|
|
212
223
|
dodal/plans/wrapped.py,sha256=BPMw__RcWvk9v5XnhMsi9_k4KsDEbmXogzD2n1ecbUg,2098
|
|
213
224
|
dodal/plans/preprocessors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
214
225
|
dodal/plans/preprocessors/verify_undulator_gap.py,sha256=cBZEGq8TW1jrXFXB00iClQVXSEaE_jP_rHMY9WTgYyY,1813
|
|
215
|
-
dls_dodal-1.
|
|
216
|
-
dls_dodal-1.
|
|
217
|
-
dls_dodal-1.
|
|
218
|
-
dls_dodal-1.
|
|
219
|
-
dls_dodal-1.
|
|
226
|
+
dls_dodal-1.50.0.dist-info/METADATA,sha256=HHVwD53GPNpl389XdyNTqmiuW6uEBg1tsRZh7j8HU1g,16839
|
|
227
|
+
dls_dodal-1.50.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
228
|
+
dls_dodal-1.50.0.dist-info/entry_points.txt,sha256=bycw_EKUzup_rxfCetOwcauXV4kLln_OPpPT8jEnr-I,94
|
|
229
|
+
dls_dodal-1.50.0.dist-info/top_level.txt,sha256=xIozdmZk_wmMV4wugpq9-6eZs0vgADNUKz3j2UAwlhc,6
|
|
230
|
+
dls_dodal-1.50.0.dist-info/RECORD,,
|
dodal/_version.py
CHANGED
dodal/beamlines/aithre.py
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
from dodal.common.beamlines.beamline_utils import device_factory
|
|
2
2
|
from dodal.devices.aithre_lasershaping.goniometer import Goniometer
|
|
3
3
|
from dodal.devices.aithre_lasershaping.laser_robot import LaserRobot
|
|
4
|
+
from dodal.devices.oav.oav_detector import NullZoomController, OAVBeamCentreFile
|
|
5
|
+
from dodal.devices.oav.oav_parameters import OAVConfigBeamCentre
|
|
6
|
+
|
|
7
|
+
ZOOM_PARAMS_FILE = "/dls_sw/i23/software/aithre/aithre_oav.xml"
|
|
8
|
+
DISPLAY_CONFIG = "/dls_sw/i23/software/aithre/aithre_display.configuration"
|
|
4
9
|
|
|
5
10
|
PREFIX = "LA18L"
|
|
6
11
|
|
|
@@ -13,3 +18,13 @@ def goniometer() -> Goniometer:
|
|
|
13
18
|
@device_factory()
|
|
14
19
|
def robot() -> LaserRobot:
|
|
15
20
|
return LaserRobot("robot", f"{PREFIX}-MO-ROBOT-01:")
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
@device_factory()
|
|
24
|
+
def oav(params: OAVConfigBeamCentre | None = None) -> OAVBeamCentreFile:
|
|
25
|
+
return OAVBeamCentreFile(
|
|
26
|
+
prefix=f"{PREFIX}-DI-OAV-01:",
|
|
27
|
+
config=params or OAVConfigBeamCentre(ZOOM_PARAMS_FILE, DISPLAY_CONFIG),
|
|
28
|
+
name="oav",
|
|
29
|
+
zoom_controller=NullZoomController(),
|
|
30
|
+
)
|
dodal/beamlines/b16.py
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
from pathlib import Path
|
|
2
|
+
|
|
3
|
+
from ophyd_async.epics.adcore import (
|
|
4
|
+
AreaDetector,
|
|
5
|
+
)
|
|
6
|
+
from ophyd_async.epics.motor import Motor
|
|
7
|
+
|
|
8
|
+
from dodal.common.beamlines.beamline_utils import (
|
|
9
|
+
device_factory,
|
|
10
|
+
set_path_provider,
|
|
11
|
+
)
|
|
12
|
+
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
13
|
+
from dodal.common.visit import RemoteDirectoryServiceClient, StaticVisitPathProvider
|
|
14
|
+
from dodal.devices.b16.detector import (
|
|
15
|
+
software_triggered_tiff_area_detector,
|
|
16
|
+
)
|
|
17
|
+
from dodal.devices.motors import XYZPositioner
|
|
18
|
+
from dodal.log import set_beamline as set_log_beamline
|
|
19
|
+
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
20
|
+
|
|
21
|
+
BL = get_beamline_name("b16")
|
|
22
|
+
PREFIX = BeamlinePrefix(BL)
|
|
23
|
+
set_log_beamline(BL)
|
|
24
|
+
set_utils_beamline(BL)
|
|
25
|
+
|
|
26
|
+
set_path_provider(
|
|
27
|
+
StaticVisitPathProvider(
|
|
28
|
+
BL,
|
|
29
|
+
Path("/dls/b16/data/2025/cm40635-3/bluesky"),
|
|
30
|
+
client=RemoteDirectoryServiceClient("http://b16-control:8088/api"),
|
|
31
|
+
)
|
|
32
|
+
)
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
@device_factory()
|
|
36
|
+
def attol1() -> Motor:
|
|
37
|
+
return Motor(f"{PREFIX.beamline_prefix}-EA-ECC-03:ACT0")
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
@device_factory()
|
|
41
|
+
def attol2() -> Motor:
|
|
42
|
+
return Motor(f"{PREFIX.beamline_prefix}-EA-ECC-03:ACT1")
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
@device_factory()
|
|
46
|
+
def attol3() -> Motor:
|
|
47
|
+
return Motor(f"{PREFIX.beamline_prefix}-EA-ECC-03:ACT2")
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
@device_factory()
|
|
51
|
+
def attorot1() -> Motor:
|
|
52
|
+
return Motor(f"{PREFIX.beamline_prefix}-EA-ECC-02:ACT2")
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
@device_factory()
|
|
56
|
+
def fds2() -> AreaDetector:
|
|
57
|
+
prefix = f"{PREFIX.beamline_prefix}-EA-FDS-02:"
|
|
58
|
+
return software_triggered_tiff_area_detector(prefix)
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
@device_factory()
|
|
62
|
+
def sim_stage() -> XYZPositioner:
|
|
63
|
+
return XYZPositioner(
|
|
64
|
+
f"{PREFIX.beamline_prefix}-MO-SIM-01:", "sim_stage", infix=("M1", "M2", "M3")
|
|
65
|
+
)
|
dodal/beamlines/b18.py
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
from pathlib import Path
|
|
2
|
+
|
|
3
|
+
from dodal.common.beamlines.beamline_utils import (
|
|
4
|
+
device_factory,
|
|
5
|
+
set_path_provider,
|
|
6
|
+
)
|
|
7
|
+
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
8
|
+
from dodal.common.visit import (
|
|
9
|
+
LocalDirectoryServiceClient,
|
|
10
|
+
StaticVisitPathProvider,
|
|
11
|
+
)
|
|
12
|
+
from dodal.devices.synchrotron import Synchrotron
|
|
13
|
+
from dodal.log import set_beamline as set_log_beamline
|
|
14
|
+
from dodal.utils import BeamlinePrefix, get_beamline_name
|
|
15
|
+
|
|
16
|
+
BL = get_beamline_name("b18")
|
|
17
|
+
PREFIX = BeamlinePrefix(BL)
|
|
18
|
+
set_log_beamline(BL)
|
|
19
|
+
set_utils_beamline(BL)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
# Currently we must hard-code the visit, determining the visit at runtime requires
|
|
23
|
+
# infrastructure that is still WIP.
|
|
24
|
+
# Communication with GDA is also WIP so for now we determine an arbitrary scan number
|
|
25
|
+
# locally and write the commissioning directory. The scan number is not guaranteed to
|
|
26
|
+
# be unique and the data is at risk - this configuration is for testing only.
|
|
27
|
+
set_path_provider(
|
|
28
|
+
StaticVisitPathProvider(
|
|
29
|
+
BL,
|
|
30
|
+
Path("/dls/b18/data/2025/cm40637-3/bluesky"),
|
|
31
|
+
client=LocalDirectoryServiceClient(),
|
|
32
|
+
)
|
|
33
|
+
)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
@device_factory()
|
|
37
|
+
def synchrotron() -> Synchrotron:
|
|
38
|
+
return Synchrotron()
|
dodal/beamlines/i10.py
CHANGED
|
@@ -1,19 +1,17 @@
|
|
|
1
|
-
|
|
1
|
+
"""
|
|
2
|
+
note:
|
|
3
|
+
I10 has two insertion devices one up(idu) and one down stream(idd).
|
|
4
|
+
It is worth noting that the downstream device is slightly longer,
|
|
5
|
+
so it can reach Mn edge for linear arbitrary.
|
|
6
|
+
idd == id1, idu == id2.
|
|
7
|
+
"""
|
|
2
8
|
|
|
3
|
-
from dodal.common.beamlines.beamline_utils import device_factory
|
|
9
|
+
from dodal.common.beamlines.beamline_utils import device_factory
|
|
4
10
|
from dodal.common.beamlines.beamline_utils import set_beamline as set_utils_beamline
|
|
5
|
-
from dodal.devices.apple2_undulator import (
|
|
6
|
-
UndulatorGap,
|
|
7
|
-
UndulatorJawPhase,
|
|
8
|
-
UndulatorPhaseAxes,
|
|
9
|
-
)
|
|
10
11
|
from dodal.devices.current_amplifiers import CurrentAmpDet
|
|
11
12
|
from dodal.devices.i10.diagnostics import I10Diagnostic, I10Diagnostic5ADet
|
|
12
13
|
from dodal.devices.i10.i10_apple2 import (
|
|
13
|
-
|
|
14
|
-
I10Apple2PGM,
|
|
15
|
-
I10Apple2Pol,
|
|
16
|
-
LinearArbitraryAngle,
|
|
14
|
+
I10Id,
|
|
17
15
|
)
|
|
18
16
|
from dodal.devices.i10.i10_setting_data import I10Grating
|
|
19
17
|
from dodal.devices.i10.mirrors import PiezoMirror
|
|
@@ -37,238 +35,48 @@ set_utils_beamline(BL)
|
|
|
37
35
|
PREFIX = BeamlinePrefix(BL)
|
|
38
36
|
|
|
39
37
|
|
|
40
|
-
LOOK_UPTABLE_DIR = "/dls_sw/i10/software/
|
|
41
|
-
"""
|
|
42
|
-
I10 has two insertion devices one up(idu) and one down stream(idd).
|
|
43
|
-
It is worth noting that the down stream device is slightly longer,
|
|
44
|
-
so it can reach Mn edge for linear arbitrary.
|
|
45
|
-
idd == id1
|
|
46
|
-
and
|
|
47
|
-
idu == id2.
|
|
48
|
-
"""
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
def idd_gap(
|
|
52
|
-
wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
|
|
53
|
-
) -> UndulatorGap:
|
|
54
|
-
return device_instantiation(
|
|
55
|
-
device_factory=UndulatorGap,
|
|
56
|
-
name="idd_gap",
|
|
57
|
-
prefix=f"{PREFIX.insertion_prefix}-MO-SERVC-01:",
|
|
58
|
-
wait=wait_for_connection,
|
|
59
|
-
fake=fake_with_ophyd_sim,
|
|
60
|
-
bl_prefix=False,
|
|
61
|
-
)
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
def idd_phase_axes(
|
|
65
|
-
wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
|
|
66
|
-
) -> UndulatorPhaseAxes:
|
|
67
|
-
return device_instantiation(
|
|
68
|
-
device_factory=UndulatorPhaseAxes,
|
|
69
|
-
name="idd_phase_axes",
|
|
70
|
-
prefix=f"{PREFIX.insertion_prefix}-MO-SERVC-01:",
|
|
71
|
-
top_outer="RPQ1",
|
|
72
|
-
top_inner="RPQ2",
|
|
73
|
-
btm_inner="RPQ3",
|
|
74
|
-
btm_outer="RPQ4",
|
|
75
|
-
wait=wait_for_connection,
|
|
76
|
-
fake=fake_with_ophyd_sim,
|
|
77
|
-
bl_prefix=False,
|
|
78
|
-
)
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
def idd_jaw(
|
|
82
|
-
wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
|
|
83
|
-
) -> UndulatorJawPhase:
|
|
84
|
-
return device_instantiation(
|
|
85
|
-
device_factory=UndulatorJawPhase,
|
|
86
|
-
name="idd_jaw",
|
|
87
|
-
prefix=f"{PREFIX.insertion_prefix}-MO-SERVC-01:",
|
|
88
|
-
move_pv="RPQ1",
|
|
89
|
-
wait=wait_for_connection,
|
|
90
|
-
fake=fake_with_ophyd_sim,
|
|
91
|
-
bl_prefix=False,
|
|
92
|
-
)
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
def idu_gap(
|
|
96
|
-
wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
|
|
97
|
-
) -> UndulatorGap:
|
|
98
|
-
return device_instantiation(
|
|
99
|
-
device_factory=UndulatorGap,
|
|
100
|
-
name="idu_gap",
|
|
101
|
-
prefix=f"{PREFIX.insertion_prefix}-MO-SERVC-21:",
|
|
102
|
-
wait=wait_for_connection,
|
|
103
|
-
fake=fake_with_ophyd_sim,
|
|
104
|
-
bl_prefix=False,
|
|
105
|
-
)
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
def idu_phase_axes(
|
|
109
|
-
wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
|
|
110
|
-
) -> UndulatorPhaseAxes:
|
|
111
|
-
return device_instantiation(
|
|
112
|
-
device_factory=UndulatorPhaseAxes,
|
|
113
|
-
name="idu_phase_axes",
|
|
114
|
-
prefix=f"{PREFIX.insertion_prefix}-MO-SERVC-21:",
|
|
115
|
-
top_outer="RPQ1",
|
|
116
|
-
top_inner="RPQ2",
|
|
117
|
-
btm_inner="RPQ3",
|
|
118
|
-
btm_outer="RPQ4",
|
|
119
|
-
wait=wait_for_connection,
|
|
120
|
-
fake=fake_with_ophyd_sim,
|
|
121
|
-
bl_prefix=False,
|
|
122
|
-
)
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
def idu_jaw(
|
|
126
|
-
wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
|
|
127
|
-
) -> UndulatorJawPhase:
|
|
128
|
-
return device_instantiation(
|
|
129
|
-
device_factory=UndulatorJawPhase,
|
|
130
|
-
name="idu_jaw",
|
|
131
|
-
prefix=f"{PREFIX.insertion_prefix}-MO-SERVC-21:",
|
|
132
|
-
move_pv="RPQ1",
|
|
133
|
-
wait=wait_for_connection,
|
|
134
|
-
fake=fake_with_ophyd_sim,
|
|
135
|
-
bl_prefix=False,
|
|
136
|
-
)
|
|
38
|
+
LOOK_UPTABLE_DIR = "/dls_sw/i10/software/blueapi/scratch/i10-config/lookupTables/"
|
|
137
39
|
|
|
138
40
|
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
prefix="-OP-PGM-01:",
|
|
41
|
+
@device_factory()
|
|
42
|
+
def pgm() -> PGM:
|
|
43
|
+
"I10 Plane Grating Monochromator, it can change energy via pgm.energy.set(<energy>)"
|
|
44
|
+
return PGM(
|
|
45
|
+
prefix=f"{PREFIX.beamline_prefix}-OP-PGM-01:",
|
|
144
46
|
grating=I10Grating,
|
|
145
47
|
gratingPv="NLINES2",
|
|
146
|
-
wait=wait_for_connection,
|
|
147
|
-
fake=fake_with_ophyd_sim,
|
|
148
|
-
)
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
def idu_gap_phase(
|
|
152
|
-
wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
|
|
153
|
-
) -> I10Apple2:
|
|
154
|
-
return device_instantiation(
|
|
155
|
-
device_factory=I10Apple2,
|
|
156
|
-
id_gap=idu_gap(wait_for_connection, fake_with_ophyd_sim),
|
|
157
|
-
id_phase=idu_phase_axes(wait_for_connection, fake_with_ophyd_sim),
|
|
158
|
-
id_jaw_phase=idu_jaw(wait_for_connection, fake_with_ophyd_sim),
|
|
159
|
-
energy_gap_table_path=Path(
|
|
160
|
-
LOOK_UPTABLE_DIR + "IDEnergy2GapCalibrations.csv",
|
|
161
|
-
),
|
|
162
|
-
energy_phase_table_path=Path(
|
|
163
|
-
LOOK_UPTABLE_DIR + "IDEnergy2PhaseCalibrations.csv",
|
|
164
|
-
),
|
|
165
|
-
source=("Source", "idu"),
|
|
166
|
-
name="idu_gap_phase",
|
|
167
|
-
prefix="",
|
|
168
|
-
wait=wait_for_connection,
|
|
169
|
-
fake=fake_with_ophyd_sim,
|
|
170
48
|
)
|
|
171
49
|
|
|
172
50
|
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
),
|
|
184
|
-
|
|
185
|
-
LOOK_UPTABLE_DIR + "IDEnergy2PhaseCalibrations.csv",
|
|
186
|
-
),
|
|
51
|
+
@device_factory()
|
|
52
|
+
def idd() -> I10Id:
|
|
53
|
+
"""i10 downstream insertion device:
|
|
54
|
+
id.energy.set(<energy>) to change beamline energy.
|
|
55
|
+
id.energy.energy_offset.set(<off_set>) to change id energy offset relative to pgm.
|
|
56
|
+
id.pol.set(<polarisation>) to change polarisation.
|
|
57
|
+
id.laa.set(<linear polarisation angle>) to change polarisation angle, must be in LA mode.
|
|
58
|
+
"""
|
|
59
|
+
return I10Id(
|
|
60
|
+
prefix=f"{PREFIX.insertion_prefix}-MO-SERVC-01:",
|
|
61
|
+
pgm=pgm(),
|
|
62
|
+
look_up_table_dir=LOOK_UPTABLE_DIR,
|
|
187
63
|
source=("Source", "idd"),
|
|
188
|
-
name="idd_gap_phase",
|
|
189
|
-
prefix="",
|
|
190
|
-
wait=wait_for_connection,
|
|
191
|
-
fake=fake_with_ophyd_sim,
|
|
192
64
|
)
|
|
193
65
|
|
|
194
66
|
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
def idd_pol(
|
|
209
|
-
wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
|
|
210
|
-
) -> I10Apple2Pol:
|
|
211
|
-
return device_instantiation(
|
|
212
|
-
device_factory=I10Apple2Pol,
|
|
213
|
-
prefix="",
|
|
214
|
-
id=idd_gap_phase(wait_for_connection, fake_with_ophyd_sim),
|
|
215
|
-
name="idd_pol",
|
|
216
|
-
wait=wait_for_connection,
|
|
217
|
-
fake=fake_with_ophyd_sim,
|
|
218
|
-
)
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
def idu(
|
|
222
|
-
wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
|
|
223
|
-
) -> I10Apple2PGM:
|
|
224
|
-
return device_instantiation(
|
|
225
|
-
device_factory=I10Apple2PGM,
|
|
226
|
-
prefix="",
|
|
227
|
-
id=idu_gap_phase(wait_for_connection, fake_with_ophyd_sim),
|
|
228
|
-
pgm=pgm(wait_for_connection, fake_with_ophyd_sim),
|
|
229
|
-
name="idu",
|
|
230
|
-
wait=wait_for_connection,
|
|
231
|
-
fake=fake_with_ophyd_sim,
|
|
232
|
-
)
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
def idd(
|
|
236
|
-
wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
|
|
237
|
-
) -> I10Apple2PGM:
|
|
238
|
-
return device_instantiation(
|
|
239
|
-
device_factory=I10Apple2PGM,
|
|
240
|
-
prefix="",
|
|
241
|
-
id=idd_gap_phase(wait_for_connection, fake_with_ophyd_sim),
|
|
242
|
-
pgm=pgm(wait_for_connection, fake_with_ophyd_sim),
|
|
243
|
-
name="idd",
|
|
244
|
-
wait=wait_for_connection,
|
|
245
|
-
fake=fake_with_ophyd_sim,
|
|
246
|
-
)
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
def idu_la_angle(
|
|
250
|
-
wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
|
|
251
|
-
) -> LinearArbitraryAngle:
|
|
252
|
-
return device_instantiation(
|
|
253
|
-
device_factory=LinearArbitraryAngle,
|
|
254
|
-
prefix="",
|
|
255
|
-
id=idu(wait_for_connection, fake_with_ophyd_sim),
|
|
256
|
-
name="idu_la_angle",
|
|
257
|
-
wait=wait_for_connection,
|
|
258
|
-
fake=fake_with_ophyd_sim,
|
|
259
|
-
)
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
def idd_la_angle(
|
|
263
|
-
wait_for_connection: bool = True, fake_with_ophyd_sim: bool = False
|
|
264
|
-
) -> LinearArbitraryAngle:
|
|
265
|
-
return device_instantiation(
|
|
266
|
-
device_factory=LinearArbitraryAngle,
|
|
267
|
-
prefix="",
|
|
268
|
-
id=idu(wait_for_connection, fake_with_ophyd_sim),
|
|
269
|
-
name="idd_la_angle",
|
|
270
|
-
wait=wait_for_connection,
|
|
271
|
-
fake=fake_with_ophyd_sim,
|
|
67
|
+
@device_factory()
|
|
68
|
+
def idu() -> I10Id:
|
|
69
|
+
"""i10 upstream insertion device:
|
|
70
|
+
id.energy.set(<energy>) to change beamline energy.
|
|
71
|
+
id.energy.energy_offset.set(<off_set>) to change id energy offset relative to pgm.
|
|
72
|
+
id.pol.set(<polarisation>) to change polarisation.
|
|
73
|
+
id.laa.set(<linear polarisation angle>) to change polarisation angle, must be in LA mode.
|
|
74
|
+
"""
|
|
75
|
+
return I10Id(
|
|
76
|
+
prefix=f"{PREFIX.insertion_prefix}-MO-SERVC-21:",
|
|
77
|
+
pgm=pgm(),
|
|
78
|
+
look_up_table_dir=LOOK_UPTABLE_DIR,
|
|
79
|
+
source=("Source", "idu"),
|
|
272
80
|
)
|
|
273
81
|
|
|
274
82
|
|
|
@@ -342,7 +150,7 @@ def pa_stage() -> PaStage:
|
|
|
342
150
|
|
|
343
151
|
|
|
344
152
|
@device_factory()
|
|
345
|
-
def
|
|
153
|
+
def sample_stage() -> XYZPositioner:
|
|
346
154
|
return XYZPositioner(prefix="ME01D-MO-CRYO-01:")
|
|
347
155
|
|
|
348
156
|
|