CbmRoot
Loading...
Searching...
No Matches
CbmRecoTracks.h
Go to the documentation of this file.
1/* Copyright (C) 2016-2021 Laboratory of Information Technologies, Joint Institute for Nuclear Research, Dubna
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Timur Ablyazimov [committer] */
4
5/********************************************************************************
6 * Copyright (C) 2016 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH *
7 * *
8 * This software is distributed under the terms of the *
9 * GNU Lesser General Public Licence version 3 (LGPL) version 3, *
10 * copied verbatim in the file "LICENSE" *
11 ********************************************************************************/
12// -------------------------------------------------------------------------
13// ----- CbmRecoTracks header file -----
14// ----- Created 12/02/16 by T. Ablyazimov -----
15// -------------------------------------------------------------------------
16
17
25#ifndef CBMRECOTRACKS_H
26#define CBMRECOTRACKS_H
27
28#include <Rtypes.h> // for THashConsistencyHolder, ClassDef
29#include <RtypesCore.h> // for Int_t, Double_t, Option_t
30//#include <TEveTrackPropagator.h> // IWYU pragma: keep needed by cint
31#include <FairTask.h> // for FairTask, InitStatus
32
33#include <TClonesArray.h> // IWYU pragma: keep needed by cliong
34#include <TEveVector.h> // for TEveVector
35#include <TObjArray.h> // for TObjArray, needed for FairRoot > v18.8.0
36#include <TString.h> // for TString
37
38class CbmPixelHit;
39class CbmStsTrack;
40class CbmTrack;
41class FairEventManager;
42class TEveTrack;
43class TEveTrackList;
44class TParticle;
45class TEveTrackPropagator;
46
47class CbmRecoTracks : public FairTask {
48
49public:
51 CbmRecoTracks() : CbmRecoTracks("FairMCTracks", 0) {}
52
53
58 CbmRecoTracks(const char* name, Int_t iVerbose = 1) : FairTask(name, iVerbose) {}
59
61 virtual ~CbmRecoTracks();
62
64 void SetVerbose(Int_t iVerbose) { fVerbose = iVerbose; }
66 virtual void Exec(Option_t* option);
67 virtual InitStatus Init();
68 virtual void SetParContainers();
69
71 virtual void Finish();
72 void Reset();
73 TEveTrackList* GetTrGroup(TParticle* P);
74
75protected:
76 void HandlePixelHit(TEveTrack* eveTrack, Int_t& n, const CbmPixelHit* hit, TEveVector* pMom);
77 void HandleTrack(TEveTrack* eveTrack, Int_t& n, const CbmTrack* recoTrack);
78 void HandleStsTrack(TEveTrack* eveTrack, Int_t& n, const CbmStsTrack* stsTrack);
79
80 TClonesArray* fGlobalTracks = nullptr;
81 TClonesArray* fMvdHits = nullptr;
82 TClonesArray* fStsHits = nullptr;
83 TClonesArray* fStsTracks = nullptr;
84 TClonesArray* fRichRings = nullptr;
85 TClonesArray* fRichHits = nullptr;
86 TClonesArray* fMuchPixelHits = nullptr;
87 TClonesArray* fMuchTracks = nullptr;
88 TClonesArray* fTrdHits = nullptr;
89 TClonesArray* fTrdTracks = nullptr;
90 TClonesArray* fTofHits = nullptr;
91 TClonesArray* fTofTracks = nullptr;
92 TEveTrackPropagator* fTrPr = nullptr;
93 FairEventManager* fEventManager = nullptr;
94 TObjArray* fEveTrList = new TObjArray(16);
95 TString fEvent = "";
96 TEveTrackList* fTrList = nullptr;
97 //TEveElementList *fTrackCont;
98
99 Double_t MinEnergyLimit = -1.;
100 Double_t MaxEnergyLimit = -1.;
101 Double_t PEnergy = -1.;
102
103private:
106
108};
109
110
111#endif
TClonesArray * fMuchPixelHits
TClonesArray * fMuchTracks
virtual ~CbmRecoTracks()
TClonesArray * fTofTracks
TEveTrackPropagator * fTrPr
ClassDef(CbmRecoTracks, 1)
virtual void Exec(Option_t *option)
CbmRecoTracks(const char *name, Int_t iVerbose=1)
virtual InitStatus Init()
virtual void Finish()
TClonesArray * fTrdHits
TEveTrackList * fTrList
TClonesArray * fMvdHits
TClonesArray * fStsTracks
void SetVerbose(Int_t iVerbose)
FairEventManager * fEventManager
TEveTrackList * GetTrGroup(TParticle *P)
Double_t MinEnergyLimit
TClonesArray * fGlobalTracks
TClonesArray * fRichHits
TClonesArray * fRichRings
virtual void SetParContainers()
TClonesArray * fStsHits
TObjArray * fEveTrList
void HandleTrack(TEveTrack *eveTrack, Int_t &n, const CbmTrack *recoTrack)
void HandlePixelHit(TEveTrack *eveTrack, Int_t &n, const CbmPixelHit *hit, TEveVector *pMom)
Double_t MaxEnergyLimit
TClonesArray * fTrdTracks
void HandleStsTrack(TEveTrack *eveTrack, Int_t &n, const CbmStsTrack *stsTrack)
CbmRecoTracks(const CbmRecoTracks &)
TClonesArray * fTofHits
CbmRecoTracks & operator=(const CbmRecoTracks &)