You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The filewriter must be able to write the selog data.
For each block, this includes:
raw_data_1/selog/<block>/read_control (was a LabVIEW VI control name; not populated by current system; could be populated as EPICS PV name)
raw_data_1/selog/<block>/set_control (was a LabVIEW VI control name; not populated by current system)
raw_data_1/selog/<block>/setpoint
raw_data_1/selog/<block>/setpoint_spread
raw_data_1/selog/<block>/value
raw_data_1/selog/<block>/value_log/alarm_severity
raw_data_1/selog/<block>/value_log/alarm_status
raw_data_1/selog/<block>/value_log/alarm_time
raw_data_1/selog/<block>/value_log/name
raw_data_1/selog/<block>/value_log/time
raw_data_1/selog/<block>/value_log/value
raw_data_1/selog/<block>/value_log/value_valid
raw_data_1/selog/<block>/value_spread
raw_data_1/selog/<block>/vi_name (was a LabVIEW VI name; not populated by current system)
Important
When implementing, we must ensure that the filewriter 'goes back' in time to find the most recent update for each block and log that as the initial update. Otherwise, values will be missing in the .nxs until the block happens to update or the forwarder happens to schedule one of it's periodic updates. For short runs and blocks that don't update much, it is possible that may never happen.
Questions
The ISISICP currently writes strings in a way that is not nexus-compliant. Do we want to continue to do that?
The update frequency of blocks logged here may be different than old system; streaming system will see and be able to log all block updates (unless we choose to implement downsampling)
The filewriter must be able to write the
selogdata.For each block, this includes:
raw_data_1/selog/<block>/read_control(was a LabVIEW VI control name; not populated by current system; could be populated as EPICS PV name)raw_data_1/selog/<block>/set_control(was a LabVIEW VI control name; not populated by current system)raw_data_1/selog/<block>/setpointraw_data_1/selog/<block>/setpoint_spreadraw_data_1/selog/<block>/valueraw_data_1/selog/<block>/value_log/alarm_severityraw_data_1/selog/<block>/value_log/alarm_statusraw_data_1/selog/<block>/value_log/alarm_timeraw_data_1/selog/<block>/value_log/nameraw_data_1/selog/<block>/value_log/timeraw_data_1/selog/<block>/value_log/valueraw_data_1/selog/<block>/value_log/value_validraw_data_1/selog/<block>/value_spreadraw_data_1/selog/<block>/vi_name(was a LabVIEW VI name; not populated by current system)Important
When implementing, we must ensure that the filewriter 'goes back' in time to find the most recent update for each block and log that as the initial update. Otherwise, values will be missing in the
.nxsuntil the block happens to update or the forwarder happens to schedule one of it's periodic updates. For short runs and blocks that don't update much, it is possible that may never happen.Questions
The ISISICP currently writes strings in a way that is not nexus-compliant. Do we want to continue to do that?
There is a new
NXtextlogclass for storing string-logs: nexusformat/definitions#1590Potential differences from existing files