BmnRoot
Loading...
Searching...
No Matches
BmnH3LTripleFinder.h
Go to the documentation of this file.
1
2#ifndef BMNH3LTRIPLEFINDER_H
3#define BMNH3LTRIPLEFINDER_H 1
4
5#include "BmnFieldMap.h"
6#include "BmnGlobalTrack.h"
7#include "BmnKalmanFilter.h"
8#include "BmnNewFieldMap.h"
9#include "BmnParticleTriple.h"
10#include "BmnStripData.h"
11#include "CbmStsHit.h"
12#include "CbmStsTrack.h"
13#include "CbmVertex.h"
14#include "DstEventHeader.h"
15#include "FairTask.h"
16#include "TFile.h"
17#include "TGeoManager.h"
18#include "TRandom.h"
19#include "UniRun.h"
20
21using namespace std;
22using namespace TMath;
23
24class BmnH3LTripleFinder : public FairTask
25{
26 private:
27 UInt_t fEventCounter;
28
29 TClonesArray* fStsHits;
30 TClonesArray* fUpperClusters;
31 TClonesArray* fLowerClusters;
32 TClonesArray* fStsTracks;
33 TClonesArray* fGlobTracks;
34 CbmVertex* fVertex;
35
36 // BmnGemStripStationSet* fDetector; // Detector geometry
37 // BmnGemStripConfiguration::GEM_CONFIG fGeometry;
38
39 // BmnFieldMap* fMagField;
40 BmnKalmanFilter* fKalman;
41
42 TClonesArray* fParticleTriple;
43
44 // const Int_t fPDG1 = 1000010020; //detron
45 const Int_t fPDG1 = 2212; // proton
46 const Int_t fPDG2 = 2212; // proton
47 const Int_t fPDG3 = -211; // pi-minus
48
49 const Float_t fMassHe3 = 2.8094135;
50 const Float_t fMassPi = 0.1395704;
51 const Float_t fMassP = 0.9382721;
52 const Float_t fMassD = 1.8756129;
53
54 public:
56 virtual ~BmnH3LTripleFinder();
57
58 virtual void Exec(Option_t* option);
59 virtual InitStatus Init();
60 virtual void Finish();
61
62 private:
63 void Analysis();
64
65 Double_t FindV0ByVirtualPlanes(FairTrackParam* par1,
66 FairTrackParam* par2,
67 FairTrackParam* par3,
68 Double_t z_0,
69 Double_t range = 25.);
70 Double_t GetdEdx(CbmStsTrack* tr);
71 void GetNHits(CbmStsTrack* tr, Int_t& nGEM, Int_t& nFSD);
72
73 ClassDef(BmnH3LTripleFinder, 0)
74};
75
76#endif
virtual void Exec(Option_t *option)
virtual InitStatus Init()
STL namespace.