Update TI decoding to support the "trigger bits" word ("word5").
This also changes TIBlobModule to use a fixed number of channels again (5) instead of the variable number of channels that the previous version offered. To retrieve data, one should now do, for example,
if (module->HasTimestamp() ) {
UInt_t timestamp = module->GetData(Decoder::TIBlobModule::kTimestamp);
// do things with timestamp
}
The trigger type (GetData(0)) and trigger number (GetData(1)) should always be present, but timestamp, counter bits, and trigger bits are optional and depend on the DAQ configuration. module->GetNumChan() now always reports 5. Channels whose info is not present in the event are assigned a value of zero and should be tested with the Has...() functions.
If the counter bits are present, one should explicitly tell the module so through a configuration parameter in the crate map:
// Set parameters of this module via optional configuration string in
// db_cratemap.dat. Supported parameters:
// debug: debug level
// word4: type of word4 (0 = auto, 3 = counter bits, 4 = trigger bits)
==== Crate 30 type vme
# slot model bank configuration string
21 4 4 cfg: word4=3
(This is not necessary with the current Hall C DAQ.)
Update TI decoding to support the "trigger bits" word ("word5").
This also changes TIBlobModule to use a fixed number of channels again (5) instead of the variable number of channels that the previous version offered. To retrieve data, one should now do, for example,
The trigger type (
GetData(0)
) and trigger number (GetData(1)
) should always be present, but timestamp, counter bits, and trigger bits are optional and depend on the DAQ configuration.module->GetNumChan()
now always reports 5. Channels whose info is not present in the event are assigned a value of zero and should be tested with theHas...()
functions.If the counter bits are present, one should explicitly tell the module so through a configuration parameter in the crate map:
(This is not necessary with the current Hall C DAQ.)