LDMX Software
|
This ldmx-sw module is focused on interfacing between the raw, binary data coming out of LDMX's DAQ path and the centralized, hierachical data that is used for the rest of our processing chain.
The hierarchical objects that are most similar to the raw binary data are the "digi" objects. These objects (especially the HgcrocDigiCollection) directly reference the encoded words that are a part of the raw binary files.
The data coming off of our detector will be streamed and the handling of this data while it is being streamed is done by an "online" set of software. After the data is streamed (the end point being some sort of file), the data can be imported into "offline" software. This process is naturally two steps, so I see the software necessary to decode and encode data also to be two steps.
We now have a procedure for decoding data into the same ROOT file. We do not align the events, but it makes it much easier to do analyses across subsystems. This procedure has two steps due to the complicated nature of TS readout.
--passThrough
is used so that the reformating script does not veto any events. -a
uses ADC as a veto, -t
uses TDC and is experimental.CID between fiber1 and fiber2 unsynced!
is a known bug in the system and is not affecting the decoding.decode.py
script.100
for testing purposes. You can increase it with --max_events N
.