LHCb merge requestshttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests2022-05-17T13:29:47+02:00https://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/2631UT TELL40 encoder/decoder v1r12022-05-17T13:29:47+02:00Xuhao YuanUT TELL40 encoder/decoder v1r1Encoder/Decoder for UTDigit with UT TELL40 format are added and ready for tests. The implementation of the new decoder is in https://gitlab.cern.ch/lhcb/Rec/-/merge_requests/2240
Goes together with Lbcom!537, Boole!317, Rec!2240, Moore!695Encoder/Decoder for UTDigit with UT TELL40 format are added and ready for tests. The implementation of the new decoder is in https://gitlab.cern.ch/lhcb/Rec/-/merge_requests/2240
Goes together with Lbcom!537, Boole!317, Rec!2240, Moore!695https://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/2801Add PrDownstreamTracks2020-12-12T22:32:42+01:00Arthur Marius HennequinAdd PrDownstreamTracksGoes with Rec!2222Goes with Rec!2222https://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/2804Removal of Velo, ST, OT, IT, PRS, SPD from master2021-02-04T17:08:02+01:00Patrick KoppenburgRemoval of Velo, ST, OT, IT, PRS, SPD from masterInitial commit of LHCb cleanup for obsolete detectors and related event classes.
See overall picture at https://gitlab.cern.ch/lhcb-dpa/project/-/issues/18 https://gitlab.cern.ch/lhcb-dpa/project/-/issues/37
**Complete removal of the f...Initial commit of LHCb cleanup for obsolete detectors and related event classes.
See overall picture at https://gitlab.cern.ch/lhcb-dpa/project/-/issues/18 https://gitlab.cern.ch/lhcb-dpa/project/-/issues/37
**Complete removal of the following packages**
- Det/OTDet, Det/STDet, Det/VeloDet : these packages will be needed by Gauss and thus moved to Run2Support: Run2Support!6
- Event/VeloEvent, OT/OTDAQ, ST/STDAQ, ST/STKernel, ST/STTELL1Event, Velo/VeloDAQ
- DAQ/Tell1Kernel
**Changes:**
- Det/CaloDet/options/PrsDetTest.opts, Det/CaloDet/options/SpdDetTest.opts
- Event/DigiEvent: Event/OTTime.h, ST*, Velo* are removed. dictionaries adapted. VeloCluster and VeloLiteCluster are kept temporarily to make LbCom happy (used in UT https://gitlab.cern.ch/lhcb/Lbcom/-/issues/6).
- Event/EventPacker: removal of packers dedicated to these subdetectors, adapt other code
- DAQ/DAQSys : CMakeLists and tests adapted. read-split-raw.qmt cannot run with 2012 data. To be adapted.
- Event/MCEvent/ : removal of Digit classes and fix of dictionary. Removal of MCVeloFE.h.
- Event/RecEvent : fix dictionary. Unsolved issue with PV https://gitlab.cern.ch/lhcb/LHCb/-/issues/102
- GaudiConf/python/GaudiConf/PersistRecoConf.py fixed and tests fixed
- Kernel/KernelSys/CMakeLists.txt cleaned
- Kernel/LHCbKernel/ : classes deleted and LHCbID adapted. This may need a revision.
- Tr/LHCbTrackInterfaces/TrackInterfaces/ISTClusterPosition.h removed
- Event/LinkerInstances : dictionary adapted.
- GaudiConf/python/GaudiConf/SimConf.py: Change default detectors to upgrade ones. This fixes most of the tests.
- Ex/IOExample/tests/refs/*: some references slightly adapted.
- Alignment-related files from Det/VeloDet moved to Det/VPDet.
**Only formatting:**
- Kernel/LHCbMath : lb-format changes
- Rich/RichUtils/src/RichTrackSegment.cpp : lb-format changes
- Tools/GitEntityResolver : lb-format changes
Related cleanup MRs: Run2Support!6, Gauss!702, Lbcom!504, Rec!2236, Phys!810, Alignment!148, Analysis!747, DaVinci!498, Castelao!86, Panoramix!80,
Tangentially related move of LoKiGen: LHCb!2871 and Gauss!704https://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/2850Replace `GeomCache computeGeometry(const DeUTDetector&)` with `GeomCache::Geo...2021-03-12T10:54:05+01:00Gerhard RavenReplace `GeomCache computeGeometry(const DeUTDetector&)` with `GeomCache::GeomCache(const DeUTDetector&)`Replace `GeomCache computeGeometry(const DeUTDetector&)` with `GeomCache::GeomCache(const DeUTDetector&)`.
As an intended(!) side-effect, it is no longer possible to create an uninitialised `GeomCache` as it will no longer default const...Replace `GeomCache computeGeometry(const DeUTDetector&)` with `GeomCache::GeomCache(const DeUTDetector&)`.
As an intended(!) side-effect, it is no longer possible to create an uninitialised `GeomCache` as it will no longer default construct.
Must be applied in conjunction with Rec!2274.Miroslav Saurmiroslav.saur@cern.chMiroslav Saurmiroslav.saur@cern.chhttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/2852UTDet / UTDAQ / UTKernel: const correctness fixes2020-12-12T19:26:26+01:00Gerhard RavenUTDet / UTDAQ / UTKernel: const correctness fixesadd lots of missing `const` qualifiers
must be applied in conjunction with Lbcom!519, Boole!325
closes Rec#173add lots of missing `const` qualifiers
must be applied in conjunction with Lbcom!519, Boole!325
closes Rec#173Miroslav Saurmiroslav.saur@cern.chMiroslav Saurmiroslav.saur@cern.chhttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/2854remove unused UT code2020-12-07T09:44:08+01:00Gerhard Ravenremove unused UT code* remove use of `detType()` (which should always return "UT")
* remove readout tool template argument which is always IUTReadoutTool
* remove `setForcedInit()` form CommonBase which is now the only option
* remove use of `stringToType`, ...* remove use of `detType()` (which should always return "UT")
* remove readout tool template argument which is always IUTReadoutTool
* remove `setForcedInit()` form CommonBase which is now the only option
* remove use of `stringToType`, directly use the corresponding rawbank type enum instead
* remove unused setDetType which is only ever set to UT
* remove unnecessary `mutable` qualifiers
must be applied in conjunction with Lbcom!521, Rec!2281 and Boole!326Sebastien PonceSebastien Poncehttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/2892Modernize/cleanup UT code2021-06-22T18:20:48+02:00Gerhard RavenModernize/cleanup UT code* simplify interaction between stripflip() and xInverted()
* add const where appropriate
* prefer C++ headers over C headers (eg. cstddef instead of stddef.h)
* prefer std::memcpy over assignment to a reinterpret_cast-ed object (alignmen...* simplify interaction between stripflip() and xInverted()
* add const where appropriate
* prefer C++ headers over C headers (eg. cstddef instead of stddef.h)
* prefer std::memcpy over assignment to a reinterpret_cast-ed object (alignment!)
* prefer inherited constructors instead of explictly forwarding constructructors
* prefer string_view over const std::string&
* prefer pragma once over header guards
* make sure order of include files does not matter
* let clang-format order the include files
* remove unneccessary mutable qualifiers
* avoid unneccessary copies
* prefer standalone functions in anonymous namespace over member functions
* remove unneccessary destructors
* prefer boost::flat_map over GaudiUtils::VectorMap as it supports transparant lookup
* prefer charconv and error check over stoul and exception handling, as it also allows the use of string_view
* prefer member initialization on declaration
* define trivial inline functions at their point of declaration
* prefer monadic StatusCode functionality
* do not compare bool to literal `true` or `false` in conditionals
* move operator<< out of global namespace, make friend instead, change argument type from pointer to object
* leave [[deprecated]] version in global namespace which takes pointer
* move use of UTNames() out of UTDigit.h into UTDigit.cpp to keep it away from cling, which doesn't like boost::flat_map
* update CMakeLists to reflect that DigitEvent now has a (tiny) library
* remove UTNames and UTCluster from dictionary
must be applied in conjunction with Lbcom!538, Boole!328, Rec!2323https://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/2914Fix stripID order in DeUTSector and DeUTSensor2021-06-22T18:20:48+02:00Xuhao YuanFix stripID order in DeUTSector and DeUTSensorDet/UTDet/UTDet/DeUTSector.h, DeUTSensor.h and Det/UTDet/src/Lib/DeUTSector.cpp, DeUTSensor.cpp are modified as:
1. new codes can read the ReadoutMap in dd/condition and the member variable DeUTSector::m_stripflip can modified into false...Det/UTDet/UTDet/DeUTSector.h, DeUTSensor.h and Det/UTDet/src/Lib/DeUTSector.cpp, DeUTSensor.cpp are modified as:
1. new codes can read the ReadoutMap in dd/condition and the member variable DeUTSector::m_stripflip can modified into false in case the old Readout Map is called (TELL1 data format)
2. member variable DeUTSensor::m_stripflip inheriting from the DeUTSector::m_stripflip.
3. function trajectory in both of DeUTSector and DeUTSensor can tell the correct stripID order in the old/new version of ReadoutMap
goes together with Rec!2335, lhcb/Moore!725 and lhcb/Boole!330, closes Rec#174https://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/2924Getters for UT decoding in Allen2021-06-03T04:47:18+02:00Marian Stahlmarian.stahl@cern.chGetters for UT decoding in AllenNeeded for Allen!489. Goes together with Moore!714
- Implements 3 new getter functions in UTDet/DeUTSector.h that are needed to avoid code duplication in Allen
- Init m_stripflip to falseNeeded for Allen!489. Goes together with Moore!714
- Implements 3 new getter functions in UTDet/DeUTSector.h that are needed to avoid code duplication in Allen
- Init m_stripflip to falsehttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/2990Unify treatment of sector search for UT-based pattern reco2021-05-10T11:55:24+02:00Michel De CianUnify treatment of sector search for UT-based pattern reco- [x] Put all code that is used to go from track-position -> sector numbers in one location.
- [x] Clean up not used code
- [x] Adapt pattern recognition algorithms (https://gitlab.cern.ch/lhcb/Rec/-/merge_requests/2404)
Addresses https...- [x] Put all code that is used to go from track-position -> sector numbers in one location.
- [x] Clean up not used code
- [x] Adapt pattern recognition algorithms (https://gitlab.cern.ch/lhcb/Rec/-/merge_requests/2404)
Addresses https://gitlab.cern.ch/lhcb/Rec/-/issues/147
@peilianhttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/2995Update UT Channel ID and geometry2023-10-10T12:02:20+02:00Xuhao YuanUpdate UT Channel ID and geometry(1) New version of UTChannelID added in UTChannelID.h.
- New ID has the informations UTtype, side, half-size layer, staveID, face, module, subsector and strip.
- strip ID starts from 0 instead of 1 in old one.
- With new map UTIDMappin...(1) New version of UTChannelID added in UTChannelID.h.
- New ID has the informations UTtype, side, half-size layer, staveID, face, module, subsector and strip.
- strip ID starts from 0 instead of 1 in old one.
- With new map UTIDMapping.h, the old/new version of UTID can be converted.
(2) new Det/UTDet developed to decode the new DDDB/SIMCOND
- also work for old DDDB/SIMCOND
(3) GaudiConf/python/GaudiConf/DigiConf.py: UTCluster is replaced by UTTightDigit
Works with
[Lbcom!550](https://gitlab.cern.ch/lhcb/Lbcom/-/merge_requests/550),
[Boole!334](https://gitlab.cern.ch/lhcb/Boole/-/merge_requests/334),
[Rec!2403](https://gitlab.cern.ch/lhcb/Rec/-/merge_requests/2403), Allen!865, Detector!181, lhcb/Moore!785, lhcb-datapkg/PRConfig!230, lhcb-conddb/DDDB!79, lhcb-conddb/SIMCOND!143
Fully backward compatibility for old DDDB/SIMCOND.Basem Khanjibasem.khanji@cern.chMatthew Scott RudolphXuhao YuanTomasz SkwarnickiBasem Khanjibasem.khanji@cern.chhttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/3050Tweak UTDecoder (follow up !2997)2021-05-10T11:55:24+02:00Gerhard RavenTweak UTDecoder (follow up !2997)This reverts merge request !3037 which reverted !2997, removing the reason for reverting it, i.e. it just removes `#include <bit>`...This reverts merge request !3037 which reverted !2997, removing the reason for reverting it, i.e. it just removes `#include <bit>`...https://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/3064max number of digits per sensor fixed as 2522021-07-04T10:43:49+02:00Xuhao Yuanmax number of digits per sensor fixed as 252maxDigitsPerPPx = 252 in UTDigitsToRawBankAlg.cppmaxDigitsPerPPx = 252 in UTDigitsToRawBankAlg.cpphttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/3074Make findAllSectors in UTDAQ more general2021-06-24T09:41:22+02:00Peilian LiMake findAllSectors in UTDAQ more generalMake findAllSectors in UTDAQ more general to be used by both `PrVeloUT` and `PrAddUTHits`
Needed by Rec!2450
go with ref updates in Moore!882 Brunel!1148Make findAllSectors in UTDAQ more general to be used by both `PrVeloUT` and `PrAddUTHits`
Needed by Rec!2450
go with ref updates in Moore!882 Brunel!1148Rosen MatevRosen Matevhttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/3134Unify implementation of {VP,UT,FT}ChannelID, introduce strong types for VP Se...2023-10-06T16:33:25+02:00Gerhard RavenUnify implementation of {VP,UT,FT}ChannelID, introduce strong types for VP Sensor,Chip,Column,Row- unify/streamline code dealing with masked 'fields' in unsigned integers
- introduce strong types for VP Sensor,Chip,Column,Row
must applied in conjunction with Lbcom!571, Boole!348, Rec!2492, Allen!608- unify/streamline code dealing with masked 'fields' in unsigned integers
- introduce strong types for VP Sensor,Chip,Column,Row
must applied in conjunction with Lbcom!571, Boole!348, Rec!2492, Allen!608Rosen MatevThomas BoettcherRosen Matevhttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/3157UTFullDecoding: remove redundant initialize2021-08-02T15:15:35+02:00Gerhard RavenUTFullDecoding: remove redundant initializeRosen MatevThomas BoettcherRosen Matevhttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/3189Modernize UTDet2021-08-30T15:27:56+02:00Gerhard RavenModernize UTDet* prefer pass-by-value for small objects
* remove redundant dynamic_cast
* drop redundant const qualifiers
* prefer [[maybe_unused]] over #ifdef NDEBUG
* include the relevant header
* move DeUTSector::Status conversion to/from string to ...* prefer pass-by-value for small objects
* remove redundant dynamic_cast
* drop redundant const qualifiers
* prefer [[maybe_unused]] over #ifdef NDEBUG
* include the relevant header
* move DeUTSector::Status conversion to/from string to DeUTSector
* add functions needed to support Gaudi::Property<DeUTSector::Status>
* move the functions in UTDetFun to the .cpp files which use them,
and retire UTDetFun.h
* make the member functions of UTNames `static`
must be applied in conjunction with Lbcom!575Rosen MatevMurilo Santana RangelRosen Matevhttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/3216Minimum layer argument for UT findAllSectors and PyConf DISABLE_TOOL function2021-09-10T21:41:42+02:00Andre GuntherMinimum layer argument for UT findAllSectors and PyConf DISABLE_TOOL functionMakes it possible to change minimum layer requirement in UTDAQ's `findAllSectors` and introduces a descriptive function to disable tools in the configuration.
Goes together with Rec!2528 and Moore!977Makes it possible to change minimum layer requirement in UTDAQ's `findAllSectors` and introduces a descriptive function to disable tools in the configuration.
Goes together with Rec!2528 and Moore!977Christoph HasseChristoph Hassehttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/3368bugfix: fix mapQuarterSectorToSectorCentralRegion usage in findSectorsFullID2022-02-07T03:55:46+01:00Gerhard Ravenbugfix: fix mapQuarterSectorToSectorCentralRegion usage in findSectorsFullID* findSectorsFullID is a standalone function which uses an 'extern'
array mapQuarterSectorToSectorCentralRegion which is assigned in
constructor of the geomCache -- so this functiopn can only be used
after a geomCache is created, a...* findSectorsFullID is a standalone function which uses an 'extern'
array mapQuarterSectorToSectorCentralRegion which is assigned in
constructor of the geomCache -- so this functiopn can only be used
after a geomCache is created, and all geomCache are consistent --
but even then there could be a data race between findSectorsFullID
being used 'while' another geomCache is constructed
* The fix is to make `findSectorsFullID` a member function of geomCache,
and give each geomCache their own mapQuarterSectorToSectorCentralRegion
array instead of sharing them amongst geomCaches and findSectorsFullID
* add some constexpr, and move some lookup tables from header file to
.cpp file
must be applied in conjunction with Rec!2665Rosen MatevRosen Matevhttps://gitlab.cern.ch/lhcb/LHCb/-/merge_requests/3369Removal of UT common base classes2022-01-22T16:03:46+01:00Sebastien PonceRemoval of UT common base classesPart of the set of MRs LHCb!3369, Lbcom!594, Rec!2670, Boole!375
They are inheritently not thread safe and contained only boiler plate code that is now useless in a functional world.
Algorithms using them have been adapted.Part of the set of MRs LHCb!3369, Lbcom!594, Rec!2670, Boole!375
They are inheritently not thread safe and contained only boiler plate code that is now useless in a functional world.
Algorithms using them have been adapted.