PandaRoot
PndFtsTrackFinderPndTrackProducer.h
Go to the documentation of this file.
1 
8 #pragma once
9 
10 #include <TVector3.h>
11 
12 #include <FairField.h>
13 
14 #include "PndFtsTrack.h"
15 #include "PndTrack.h"
16 #include "PndFtsContext.h"
17 
19  public:
20  PndFtsTrackFinderPndTrackProducer(const PndFtsTrackFinder::PndFtsContext &fReconContext, int32_t inBranchId, TClonesArray *inHits);
21 
28  void CreatePndTrack(const PndFtsTrackFinder::PndFtsFullTrack &track, TObject *&pndTrackDest, TObject *&pndTrackCandDest, TObject *&pndAnalyticTrackDest) const;
29 
30  private:
37  [[nodiscard]] TVector3 GetPosAtZ(float posZ, const PndFtsTrackFinder::PndFtsFullTrack &track) const;
38 
45  [[nodiscard]] TVector3 GetMomUnitAtPos(const TVector3 &pos, const PndFtsTrackFinder::PndFtsFullTrack &track) const;
46 
52  [[nodiscard]] double GetMomMag(const PndFtsTrackFinder::PndFtsFullTrack &track) const;
53 
59  [[nodiscard]] double GetBYFromField(const TVector3 &pos) const;
60 
61  [[nodiscard]] double GetRadius(const PndFtsTrackFinder::PndFtsFullTrack &track) const;
62 
63  const PndFtsTrackFinder::PndFtsContext &fReconContext;
64 
65  int32_t fInBranchId;
66 
67  TClonesArray *fInHits;
68 
69  FairField *fField;
70 };
void CreatePndTrack(const PndFtsTrackFinder::PndFtsFullTrack &track, TObject *&pndTrackDest, TObject *&pndTrackCandDest, TObject *&pndAnalyticTrackDest) const
int int32_t
Definition: matrix.h:32
PndFtsTrackFinderPndTrackProducer(const PndFtsTrackFinder::PndFtsContext &fReconContext, int32_t inBranchId, TClonesArray *inHits)
Class that manages conversion from PndFtsTrackFinder::FullTrack to PndTrack and PndTrckCand.