TPC: Processing of common mode values in O2#15137
TPC: Processing of common mode values in O2#15137tubagundem wants to merge 19 commits intoAliceO2Group:devfrom
Conversation
|
REQUEST FOR PRODUCTION RELEASES: This will add The following labels are available |
shahor02
left a comment
There was a problem hiding this comment.
Could the class methods with lot of code be moved from the header to cxx file (including needed headers, like TFile.h and TTree.h in https://github.com/AliceO2Group/AliceO2/pull/15137/changes#diff-74cad5f291e0478b7a6334eb7e3dcdabbad615a01df0db129d836a337e76582aR26-R27 ?
Detectors/TPC/calibration/include/TPCCalibration/CMVContainer.h
Outdated
Show resolved
Hide resolved
wiechula
left a comment
There was a problem hiding this comment.
Hi @tubagundem , some minor things and a couple questions:
- How different are the
CMVToVectorSpec.hand the corresponding IDC code? Could it have a common base to? - What is done in the
TPCFactorizeCMVSpec.h? I think in the CMV we don't do factorization.
…t storage, fix CCDB timestamp for partial intervals, fix TMemFile padding
…threshold` flags to TPCDistributeCMVSpec, updated drawCMV.C macro to auto detect branch format (compressed or not)
…awCMV.C macro and TPCDistributeCMVSpec.h accordingly
…h varint/Huffman compression, updated drawing macro and workflow options accordingly
…mismatch handling
This PR introduces end-to-end infrastructure for reading, processing and storing TPC Common Mode Values (CMVs) within the O2 framework.
New data structures
DataFormatsTPC/CMV.h— defines the CMV dataformat as received from the CRU: a 256-bitHeader(version, packetID, errorCode, magic word, heartbeat orbit/BC) followed by one 16-bit CMV word per timebin, covering 3564 timebins per packet. Includes fixed-point to float conversion helpersCMVLinkID = 23added toRDHUtils.hto identify CMV data in raw RDH streamsCMVContainer.h/.cxx— accumulator struct for one aggregation interval, storing CMV values together with CRU index, timebin, first orbit/BC, first and last TF counterNew workflows
CMVToVectorSpec/tpc-cmv-to-vector— extracts CMVs from raw data into vectorsTPCFLPCMVSpec/tpc-flp-cmv— FLP side processing of CMV dataTPCDistributeCMVSpec/tpc-distribute-cmv— distributes CMVs and serializes CMVContainerCompression and size reduction strategies
The following techniques are available for reducing CMV data size:
Visualization
drawCMV.C— ROOT macro to inspect and visualize CMV data.