Skip to content

Future ut hit manager -> GaudiFunctional

Renato Quagliani requested to merge future-ut-hit-manager into future
  • UTHits are stored in the new class Pr/PrKernel/UTHitHandler as std::vector<PrUTHitNew> [2][2] , was std::vector<PrUTHit*>

  • PrStoreUTHit transformer algorithm introduced in Decoding sequence ( Tf/TfTrackSys ), informations on UT read on PrUTHitInfo.h namespace.

  • UTHit base class converted to UTHitNew class , removing all inheritance from STHit, LineHit, HitBase, HitExtension, RegionID.

  • PrVeloUT algorithm adapted to readUTHitHandlerand use it, ( no UTStationManager anymore)

  • PrVeloUTTool converted from ITrackFromTrack to IPrVeloUTTool, it doesn't not use anymore Tf/TfKernel/RecoFuncs.h, the updateHitsForTrack() method in moved internally to the tool itself. (it's the main method responsible of non-constness of the PrUTHitNew class.

**TODO: **

  • Rebase branch with Sebastien changes to future to have stateless PrVeloUT algorithm

  • Hits should be stored as IndexedHitContainer2D ( at the moment as std::vector<PrUTHitNew>[kNStation][kNLayer]

  • Hits should be const ( several mutable properties in PrUTHitNew ( m_x, m_z are the ones used by VeloUT algorithm , to be checked for m_coord in Matching/Forward and Downstream ). Should be straight-forward using :

 struct modUTHit{ 
            const PrUTHitNew* ; 
            float m_x0track;
            float m_z0track;
}
  • PrVeloUT algorithm has several mutable internal states which has to be removed. (make it stateless)

  • Maybe some geometry information in PrStoreUTHit algorithm needs to be passed to the update Service ? (UT experts needed )

  • Adapt PrLongLivedTracking/( PrForwardTracking , PrMatchNN ) [both uses the PrAddUTHitTool which internally uses UTHitManager ] and PrMCTools/PrUtils package to the change.

Merge request reports