ringformat -- Select ringbuffer format


ringformat major?.minor?


NSCLDAQ since version 10.0 uses a ring buffers as the cornerstone for its bulk data flow. While ring buffers are byte stream, single producer, multi-consumer objects, NSCLDAQ imposes a format on the messages passed through ringbuffers.

Ring buffers are used to transfer a series of ring items. At present there are two basic structure variants to these ring items. Those used in nscldaq version 10.x and those used in 11.x and later. As time goes on, additional ring item structure variants may be added.

When attached to a ringbuffer data source, SpecTcl needs to know which ring item format that ring buffer will carry. Since nscldaq-11.0, each data taking run begins with a ring format ring item. therefore, if SpecTcl is attached to a ring data source prior to begin run, it can figure out the format.

On the other hand, if not, or to be safe you can use the ringformat command, once attached to a ring to select a specific format for the ring items that will come from that ring buffer.

The parameter to ringformat is the version of NSCLDAQ you feel is producing ring items for that ring.


Example 1. NSCLDAQ version 10 data:

ringformat 10

Example 2. NSDCLDAQ version 11 data

ringformat 11

Note that at this time NSCLDAQ-12.0 uses the same data formats as NSCLDAQ-11.x