Spruce reports and streaming
Sprucing reports to rawbank
The Sprucing will output a ROOT file with rawbanks in. The sprucing reports must therefore be saved as a rawbank. This MR along with LHCb!3260 (merged) writes a HltDecReport
for the sprucing using the sourceID
"Spruce".
Unit test
This is tested in Hlt/Hlt2Conf/tests/qmtest/test_spruce_check.qmt
Streaming for Sprucing
The Sprucing will stream to different output files both in selection and passthrough mode. This is configured exactly the same as for Hlt2 as seen in Hlt/Hlt2Conf/options/Sprucing/spruce_test_streaming.py
Introduced Moore.streams_hlt2
and Moore.streams_spruce
for stream definitions of both. This should move to another datapackage in the future.
Custom detector rawbanks for sprucing streams not implemented yet!
Unit test
This is tested in Hlt/Hlt2Conf/tests/qmtest/test_sprucing_streaming_check_{A,B}.qmt
Consolidation of options files to test streaming
Now only have stream_check.py
which can be driven to check stream A/B on Hlt2/Sprucing
Unit tests
Hlt/Hlt2Conf/tests/qmtest/test_hlt2_streaming_check_{A,B}.qmt
Hlt/Hlt2Conf/tests/qmtest/test_sprucing_streaming_check_{A,B}.qmt
Other changes
In config.py
_build_decision_ids
now takes an offset so that there are no identical ints in the int->str relations
of HltRawBankDecoderBase
. Tested in Hlt/Hlt2Conf/tests/qmtest/test_spruce_check.qmt
Sprucing jobs now output a ROOT file with rawbanks. Tested in Hlt/Hlt2Conf/tests/qmtest/test_spruce_check.qmt
Tcks for sprucing are now handled better - one does not need the Hlt2 JSON file as well as the Sprucing JSON to read Sprucing output. Tested in Hlt/Hlt2Conf/tests/qmtest/test_spruce_check.qmt
tcks.py
has a dump_passthrough_configuration
method for passthrough Sprucing lines that persist the required PackedObjectLocations
and Hlt2SelectionID
from the Hlt2 job. Tested in Hlt2Conf.test_spruce_passthrough_check.qmt
See