Fix check in monitoring code
The monitoring of lines would always write the ROOT histograms unless the first value in the histogram was -1
. This check was flawed in that the following would occur:
There is a code that initializes the quantities to -1:
https://gitlab.cern.ch/lhcb/Allen/-/blob/master/device/selections/line_types/include/Line.cuh#L86-97
However, one should note memset acts at the level of bytes. Hence, four -1 bytes representations will be: 11111111
(in Two's complement), which joined together will form a 11111111 11111111 11111111 11111111
for 32-bit types.
This will be equivalent to -1 for an integer, however that will not be the case for a floating point number.
Therefore, the check for -1 should rather be "are all the bits in the first element set to 1", which is what this MR does.