Commit e5e93a8
committed
don't send blank frame when EraseOnStart is enabled
while clearing API buffers and driver statistics can be reasonable to do
when starting an acquisition, also sending a blank frame is not. when
acquisition is started, clients like the HDF5 and ROI plugins are
already enabled, so they will process this blank frame, leading to user
confusion and data loss. for the HDF5 plugin, the resulting file will
have an initial frame with empty data, and, if it's configured without
knowledge of the empty frame, the last real frame will be discarded. for
ROI plugins, CA clients should be able to expect a number of monitor
events equal to the number of acquisitions, leading to similar issues.
the blank frame creation was added by 734caa0 (update code to better
match APS-update, but with trig_b / deadtime corrections, 2016-09-28).
EraseOnStart was enabled by default for deployments using the provided
startup snippets by 8354d65 (add dbpf for EraseOnStart to start as Yes,
2021-09-08).
fix this issue by adding a sendFrame parameter to erase() and
clearDriverAndPlugins(). This allows them to differentiate between being
called by someone writing to the Erase PV (where we want to send a blank
frame) and someone writing to the Acquire PV when EraseOnStart is
enabled (where we don't want a blank frame).1 parent edc708a commit e5e93a8
2 files changed
Lines changed: 28 additions & 26 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
142 | 142 | | |
143 | 143 | | |
144 | 144 | | |
145 | | - | |
| 145 | + | |
146 | 146 | | |
147 | 147 | | |
148 | 148 | | |
| |||
201 | 201 | | |
202 | 202 | | |
203 | 203 | | |
204 | | - | |
| 204 | + | |
205 | 205 | | |
206 | 206 | | |
207 | 207 | | |
| |||
963 | 963 | | |
964 | 964 | | |
965 | 965 | | |
966 | | - | |
| 966 | + | |
967 | 967 | | |
968 | 968 | | |
969 | 969 | | |
| |||
1000 | 1000 | | |
1001 | 1001 | | |
1002 | 1002 | | |
1003 | | - | |
| 1003 | + | |
1004 | 1004 | | |
1005 | 1005 | | |
1006 | 1006 | | |
| |||
1018 | 1018 | | |
1019 | 1019 | | |
1020 | 1020 | | |
1021 | | - | |
| 1021 | + | |
1022 | 1022 | | |
1023 | 1023 | | |
1024 | 1024 | | |
1025 | 1025 | | |
1026 | 1026 | | |
1027 | | - | |
| 1027 | + | |
1028 | 1028 | | |
1029 | 1029 | | |
1030 | 1030 | | |
| |||
1047 | 1047 | | |
1048 | 1048 | | |
1049 | 1049 | | |
1050 | | - | |
1051 | | - | |
1052 | | - | |
1053 | | - | |
| 1050 | + | |
| 1051 | + | |
| 1052 | + | |
| 1053 | + | |
| 1054 | + | |
1054 | 1055 | | |
1055 | | - | |
| 1056 | + | |
1056 | 1057 | | |
1057 | | - | |
1058 | | - | |
| 1058 | + | |
| 1059 | + | |
1059 | 1060 | | |
1060 | | - | |
| 1061 | + | |
1061 | 1062 | | |
1062 | | - | |
1063 | | - | |
1064 | | - | |
| 1063 | + | |
| 1064 | + | |
| 1065 | + | |
1065 | 1066 | | |
1066 | | - | |
| 1067 | + | |
1067 | 1068 | | |
1068 | | - | |
1069 | | - | |
1070 | | - | |
| 1069 | + | |
| 1070 | + | |
| 1071 | + | |
1071 | 1072 | | |
1072 | | - | |
| 1073 | + | |
| 1074 | + | |
1073 | 1075 | | |
1074 | 1076 | | |
1075 | 1077 | | |
| |||
1299 | 1301 | | |
1300 | 1302 | | |
1301 | 1303 | | |
1302 | | - | |
| 1304 | + | |
1303 | 1305 | | |
1304 | 1306 | | |
1305 | 1307 | | |
| |||
1322 | 1324 | | |
1323 | 1325 | | |
1324 | 1326 | | |
1325 | | - | |
| 1327 | + | |
1326 | 1328 | | |
1327 | 1329 | | |
1328 | 1330 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
166 | 166 | | |
167 | 167 | | |
168 | 168 | | |
169 | | - | |
170 | | - | |
| 169 | + | |
| 170 | + | |
171 | 171 | | |
172 | 172 | | |
173 | 173 | | |
| |||
0 commit comments