|
Analysis-Utilities 26.9.9
C++/ROOT utilities for nuclear measurement data analysis
|
One decoded SOL block, optionally carrying its traces. More...
#include <BinaryUtils.hpp>
Public Types | |
| enum | DataType : UChar_t { ALL = 0 , OneTrace = 1 , NoTrace = 2 , Minimum = 3 , MiniWithFineTime = 4 , Raw = 10 } |
| SOL block layout, which decides both the fields and the traces present. More... | |
Public Member Functions | |
| Bool_t | hasTraces () const |
| Whether this block carries traces. | |
| UInt_t | getSamples () const |
| Samples per trace in this block. | |
| const Int_t * | getAnalog0 () const |
| Pointer to the first analogue trace. | |
| const Int_t * | getAnalog1 () const |
| Pointer to the second analogue trace. | |
| const UChar_t * | getDigital (UInt_t ch) const |
| Pointer to one digital probe trace. | |
| const Int_t * | getOneTrace () const |
| Pointer to the single trace of a OneTrace block. | |
| void | clearTraces () |
| Release the trace buffer, invalidating every trace pointer. | |
| TString | getDataTypeName () const |
| Human-readable name for data_type. | |
| void | Print () const |
| SOLData () | |
| Construct with all fields zeroed and no traces. | |
| ~SOLData () | |
Public Attributes | |
| UShort_t | block_header |
| Raw block header word. | |
| UChar_t | channel |
| UShort_t | energy |
| UShort_t | energy_short |
| ULong64_t | timestamp |
| UShort_t | fine_timestamp |
| UShort_t | flags_high |
| UShort_t | flags_low |
| UChar_t | data_type |
| Bool_t | is_psd |
| UChar_t | down_sampling |
| UChar_t | board_fail |
| UChar_t | flush |
| UShort_t | trigger_thr |
| ULong64_t | event_size |
| UInt_t | agg_counter |
| ULong64_t | trace_len |
| ULong64_t | block_id |
| UChar_t | ana_probe_type [2] |
| UChar_t | dig_probe_type [4] |
| std::vector< Char_t > | trace_data |
| Raw trace bytes, exactly as written by the DAQ. | |
One decoded SOL block, optionally carrying its traces.
Definition at line 410 of file BinaryUtils.hpp.
| enum SOLData::DataType : UChar_t |
SOL block layout, which decides both the fields and the traces present.
Only ALL and OneTrace carry traces; the rest are header-only.
| Enumerator | |
|---|---|
| ALL | |
| OneTrace | |
| NoTrace | |
| Minimum | |
| MiniWithFineTime | |
| Raw | |
Definition at line 418 of file BinaryUtils.hpp.
| SOLData::SOLData | ( | ) |
Construct with all fields zeroed and no traces.
Definition at line 361 of file BinaryUtils.cpp.
|
inline |
Definition at line 545 of file BinaryUtils.hpp.
|
inline |
Release the trace buffer, invalidating every trace pointer.
Definition at line 537 of file BinaryUtils.hpp.
|
inline |
Pointer to the first analogue trace.
Definition at line 477 of file BinaryUtils.hpp.
Referenced by Print().
|
inline |
Pointer to the second analogue trace.
Definition at line 494 of file BinaryUtils.hpp.
Referenced by Print().
| TString SOLData::getDataTypeName | ( | ) | const |
Human-readable name for data_type.
Definition at line 374 of file BinaryUtils.cpp.
Referenced by Print().
|
inline |
Pointer to one digital probe trace.
| ch | Probe index, 0 to 3. |
ch is out of range, this is not an ALL block, or the buffer is short.Definition at line 511 of file BinaryUtils.hpp.
|
inline |
Pointer to the single trace of a OneTrace block.
Definition at line 527 of file BinaryUtils.hpp.
Referenced by Print().
|
inline |
Samples per trace in this block.
Definition at line 467 of file BinaryUtils.hpp.
Referenced by Print().
|
inline |
Whether this block carries traces.
Definition at line 462 of file BinaryUtils.hpp.
Referenced by InitUtils::ConvertSOLBinToHits(), and Print().
| void SOLData::Print | ( | ) | const |
Definition at line 393 of file BinaryUtils.cpp.
| UInt_t SOLData::agg_counter |
Definition at line 443 of file BinaryUtils.hpp.
| UChar_t SOLData::ana_probe_type[2] |
Definition at line 446 of file BinaryUtils.hpp.
| UShort_t SOLData::block_header |
Raw block header word.
Definition at line 428 of file BinaryUtils.hpp.
| ULong64_t SOLData::block_id |
Definition at line 445 of file BinaryUtils.hpp.
Referenced by SOLData().
| UChar_t SOLData::board_fail |
Definition at line 439 of file BinaryUtils.hpp.
| UChar_t SOLData::channel |
Definition at line 429 of file BinaryUtils.hpp.
| UChar_t SOLData::data_type |
Definition at line 436 of file BinaryUtils.hpp.
Referenced by getAnalog0(), getAnalog1(), getDataTypeName(), getDigital(), getOneTrace(), hasTraces(), Print(), and SOLData().
| UChar_t SOLData::dig_probe_type[4] |
Definition at line 447 of file BinaryUtils.hpp.
| UChar_t SOLData::down_sampling |
Definition at line 438 of file BinaryUtils.hpp.
| UShort_t SOLData::energy |
Definition at line 430 of file BinaryUtils.hpp.
| UShort_t SOLData::energy_short |
Definition at line 431 of file BinaryUtils.hpp.
| ULong64_t SOLData::event_size |
Definition at line 442 of file BinaryUtils.hpp.
| UShort_t SOLData::fine_timestamp |
Definition at line 433 of file BinaryUtils.hpp.
| UShort_t SOLData::flags_high |
Definition at line 434 of file BinaryUtils.hpp.
| UShort_t SOLData::flags_low |
Definition at line 435 of file BinaryUtils.hpp.
| UChar_t SOLData::flush |
Definition at line 440 of file BinaryUtils.hpp.
| Bool_t SOLData::is_psd |
Definition at line 437 of file BinaryUtils.hpp.
| ULong64_t SOLData::timestamp |
Definition at line 432 of file BinaryUtils.hpp.
Referenced by InitUtils::ConvertSOLBinToROOT(), Print(), and SOLData().
| std::vector<Char_t> SOLData::trace_data |
Raw trace bytes, exactly as written by the DAQ.
Prefer the typed accessors below to indexing this directly.
Definition at line 458 of file BinaryUtils.hpp.
Referenced by clearTraces(), getAnalog0(), getAnalog1(), getDigital(), and getOneTrace().
| ULong64_t SOLData::trace_len |
Definition at line 444 of file BinaryUtils.hpp.
Referenced by getAnalog0(), getAnalog1(), getDigital(), getOneTrace(), getSamples(), hasTraces(), Print(), and SOLData().
| UShort_t SOLData::trigger_thr |
Definition at line 441 of file BinaryUtils.hpp.