CSADigitizer: re-implement ToT and ToA Logic
Until now, arrival time and signal could be calculated in ToT/ToA clock cycles but were still returned in nanoseconds. With the MR, the user has the following possibilities:
-
clock_bin_toa
set: Time returned is an integer representing the number of clock cycles until the signal reached threshold. Charge is signal integral. -
clock_bin_tot
set: Signal returned is an integer representing the number of clock cycles the signal remained above threshold. Time is threshold crossing in nanoseconds. -
clock_bin_toa
andclock_bin_tot
set: Time and charge returned are integers representing the number of clock cycles (on the different clocks) until the signal reached threshold and how long it remained above it.
This way the two quantities can be configured independently.
Furthermore, this fixes a bug when PixelHit objects were produced despite the signal never crossing threshold.
This MR depends on !358 (merged) being merged first.