PandaRoot
PndHypIdealTrackFinderTask.h
Go to the documentation of this file.
1 //****************************************************************************
2 //* This file is part of PandaRoot. *
3 //* *
4 //* PandaRoot is distributed under the terms of the *
5 //* GNU General Public License (GPL) version 3, *
6 //* copied verbatim in the file "LICENSE". *
7 //* *
8 //* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9 //* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10 //* The authors are listed in the file "AUTHORS". *
11 //****************************************************************************
12 
13 
20 #ifndef PndHypIdealTrackFinderTASK_H
21 #define PndHypIdealTrackFinderTASK_H
22 
23 #include "FairTask.h"
24 #include "PndMCTrack.h"
25 #include "PndGeoHypPar.h"
26 #include "PndHypHit.h"
27 #include "PndHypPoint.h"
28 //#include "PndHypPixel.h"
29 //#include "PndHypClusterCand.h"
30 #include "GFTrackCand.h"
31 #include "PndHypCluster.h"
32 #include <string>
33 #include <vector>
34 
35 class TClonesArray;
36 
37 class PndHypIdealTrackFinderTask : public FairTask {
38  public:
43 
45  virtual void SetParContainers();
46  virtual InitStatus Init();
47  virtual InitStatus ReInit();
48 
50  virtual void Exec(Option_t *opt);
51 
52  void PrintResult();
53  void SetVerbose(Int_t verbose) { fVerbose = verbose; };
54 
55  private:
56  // std::vector<Int_t> GetHitPerCluster(PndHypCluster* clusterCand);
57  void ClearTrackCandMap();
58  void AddAndExpand(Int_t trackID, Int_t detnum, Int_t iHit);
59  Double_t GetTrackDip(PndMCTrack *myTrack);
60  Double_t GetTrackCurvature(PndMCTrack *myTrack);
61 
62  TString fHitBranchStrip;
63  // TString fClusterBranchStrip;
64  // TString fDigiBranchStrip;
65  TString fMcBranch;
66  TString fTrackBranch;
67 
69  TClonesArray *fStripHitArray;
70  // TClonesArray* fStripClusterArray;
71  // TClonesArray* fStripDigiArray;
72  TClonesArray *fMcArray;
73  TClonesArray *fTrackArray;
74 
76  TClonesArray *fTrackCandArray;
77  std::map<Int_t, GFTrackCand *> fTrackCandMap;
78 
79  Int_t fVerbose;
80 
81  void Register();
82  void Reset();
83  void ProduceHits();
84 
85  ClassDef(PndHypIdealTrackFinderTask, 2);
86 };
87 
88 #endif /* PndHypIdealTrackFinderTASK_H */
virtual InitStatus ReInit()
virtual void Exec(Option_t *opt)
virtual void SetParContainers()
virtual InitStatus Init()
virtual ~PndHypIdealTrackFinderTask()