ISISComputingGroup / ISISComputingGroup/DataStreaming

`filewriter`: `runlog/icp_event`

未关闭
#92 3 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
filewriter
主要语言
没有语言数据
星标
0
派生
0
PR 合并指标
30 天内没有已合并 PR

描述

The filewriter must be able to write the `runlog/icp_event` group, as parts of this are currently parsed by Mantid.

From discussions, my current understanding is that Mantid:
- _Does_ read `CHANGE_PERIOD` and `CHANGE` events. We will emulate these by looking at the event data stream and emitting a fake `CHANGE_PERIOD` message each time we see incoming data with a different period number.
- _Does_ read `START_COLLECTION`, `STOP_COLLECTION`, `ABORT` messages.
- _Can_ read `BEGIN`, `RESUME`, `END_SE_WAIT`, `PAUSE`, `END`, `ABORT`, `UPDATE`, `START_SE_WAIT` messages, but only if `oldStyle` is being used.
- _Does not_ parse the numbers from `GF x RF x GUAH x` messages.

## Potential differences from existing files

- Proposal is to only write the `newStyle` commands, so `START_COLLECTION`, `STOP_COLLECTION`, `CHANGE`, `CHANGE_PERIOD`, `ABORT`.
- All data will be emulated (derived from the underlying event data):
* `START_COLLECTION` written at the beginning, and then on any transition from a bad frame to a good frame.
* `STOP_COLLECTION` written on any transition from a good frame to a bad frame, and then at the end.
* `ABORT` - not convinced this is meaningful, if the run is aborted then won't get a `.nxs` file at all...
* `CHANGE_PERIOD` will be written any time we get a frame which has a different period than the most-recently-seen frame
- `CHANGE_PERIOD` will account for hardware periods as well as software periods (they look the same to the filewriter in the streaming system). This means that there could be a much higher frequency of `CHANGE_PERIOD` events than previously.
- `START_COLLECTION` and `STOP_COLLECTION` will account for hardware vetos as well as pause/runcontrol (they look the same to the filewriter in the streaming system). This means that there could be a much higher frequency of `START_COLLECTION` and `STOP_COLLECTION` events than previously.

贡献指南

这个仓库没有索引到贡献指南

调研方向

Start by tracing how the filewriter consumes the underlying event data stream and how it currently writes runlog groups. Compare the proposed newStyle commands with Mantid's stated parsing behavior, then verify that START_COLLECTION, STOP_COLLECTION, CHANGE, and CHANGE_PERIOD reflect good/bad frame and period transitions; resolve whether ABORT belongs before considering the work done.

由索引模型根据 Issue 内容生成。

评估

领域
data-engineering, stream-processing
Issue 类型
功能
难度
5/5
预计耗时
一周以上
活跃度
冷清
描述清晰度
基本清楚
新手友好度
42/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。