BmnRoot
Loading...
Searching...
No Matches
BmnGlobalTrackDraw.h
Go to the documentation of this file.
1// -------------------------------------------------------------------------
2// ----- BmnGlobalTrackDraw header file -----
3// ----- created 10/12/13 by K. Gertsenberger -----
4// ----- class to visualize reconstructed GlobalTracks in EventDisplay -----
5// -------------------------------------------------------------------------
6
7#ifndef BmnGlobalTrackDraw_H
8#define BmnGlobalTrackDraw_H
9
10#include "FairTask.h"
11#include "MpdEventManager.h"
12#include "TClonesArray.h"
13#include "TEveTrack.h"
14#include "TEveTrackPropagator.h"
15#include "TObjArray.h"
16#include "TParticle.h"
17
18class BmnGlobalTrackDraw : public FairTask
19{
20 public:
21 // default constructor
23
24 // constructor: @name - name of task, @iVerbose- verbosity level
25 BmnGlobalTrackDraw(const char* name, Int_t iVerbose = 0);
26
27 // destructor
28 virtual ~BmnGlobalTrackDraw();
29
30 // set verbosity level for this task and all of the subtasks
31 void SetVerbose(Int_t iVerbose) { fVerbose = iVerbose; }
32 // execute function of this task
33 virtual void Exec(Option_t* option);
34 // initialization of the track drawing task
35 virtual InitStatus Init();
36 virtual void SetParContainers();
37
38 // action after each event processing
39 virtual void Finish();
40 void Reset();
41
42 // return pointer to EVE track list for given group_name and/or particle name. if list don't exist then create it
43 TEveTrackList* GetTrGroup(const char* group_name, TParticle* P = nullptr);
44
45 protected:
46 // global tracks collection
47 unique_ptr<TClonesArray> fTrackList;
48
49 // Upstream hits collection
50 unique_ptr<TClonesArray> fUpstreamHitList;
51 // Upstream tracks collection
52 unique_ptr<TClonesArray> fUpstreamTrackList;
53 // Silicon hits collection
54 unique_ptr<TClonesArray> fSiliconHitList;
55 // Silicon tracks collection
56 unique_ptr<TClonesArray> fSiliconTrackList;
57 // GEM hits collection
58 unique_ptr<TClonesArray> fGemHitList;
59 // GEM tracks collection
60 unique_ptr<TClonesArray> fGemTrackList;
61 // Sts hits collection
62 unique_ptr<TClonesArray> fStsHitList;
63 // Sts tracks collection
64 unique_ptr<TClonesArray> fStsTrackList;
65 // StsVector tracks collection
66 unique_ptr<TClonesArray> fStsVectorTrackList;
67 // CSC hits collection
68 unique_ptr<TClonesArray> fCscHitList;
69 // TOF1 hits collection
70 unique_ptr<TClonesArray> fTof1HitList;
71 // TOF2 hits collection
72 unique_ptr<TClonesArray> fTof2HitList;
73 // DCH tracks collection
74 unique_ptr<TClonesArray> fDchTrackList;
75 // DCH hits collection
76 unique_ptr<TClonesArray> fDchHitList;
77
78 // EVE track propagator
79 TEveTrackPropagator* fTrPr;
81 TObjArray* fEveTrList;
82 TEveTrackList* fTrList;
83
84 private:
86 BmnGlobalTrackDraw& operator=(const BmnGlobalTrackDraw&) = delete;
87
88 // an order of detectors for the given configuration
89 vector<Int_t> vOrderOfDetectors;
90
91 ClassDef(BmnGlobalTrackDraw, 1);
92};
93#endif
unique_ptr< TClonesArray > fGemTrackList
unique_ptr< TClonesArray > fStsHitList
unique_ptr< TClonesArray > fUpstreamTrackList
unique_ptr< TClonesArray > fSiliconTrackList
unique_ptr< TClonesArray > fTrackList
unique_ptr< TClonesArray > fDchTrackList
unique_ptr< TClonesArray > fStsTrackList
MpdEventManager * fEventManager
TEveTrackList * GetTrGroup(const char *group_name, TParticle *P=nullptr)
unique_ptr< TClonesArray > fStsVectorTrackList
unique_ptr< TClonesArray > fCscHitList
virtual void SetParContainers()
unique_ptr< TClonesArray > fUpstreamHitList
unique_ptr< TClonesArray > fGemHitList
TEveTrackPropagator * fTrPr
unique_ptr< TClonesArray > fSiliconHitList
unique_ptr< TClonesArray > fTof2HitList
TEveTrackList * fTrList
unique_ptr< TClonesArray > fTof1HitList
void SetVerbose(Int_t iVerbose)
virtual InitStatus Init()
virtual void Exec(Option_t *option)
unique_ptr< TClonesArray > fDchHitList