CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Tau3MuReco.h
Go to the documentation of this file.
1 #ifndef TAU3MURECO_H
2 #define TAU3MURECO_H
3 
8 
12 
14 {
15  public:
17  ~Tau3MuReco();
18 
19  bool doTau3MuReco(const edm::Event& iEvent, const edm::EventSetup& iSetup, reco::MuonCollection* muonCollection, reco::TrackCollection* trackCollection);
20 
21  private:
22 
23  bool check4MuonTrack(const reco::Track& track); //compares track with reconstructed muons and return true if they are equal
24  bool find3rdTrack(const edm::Event& iEvent, const edm::EventSetup& iSetup, const reco::TrackCollection& Tracks); //try to find a 3rd muon in tracks, if this was not detected as a muon
25  bool findCorrectPairing(); //find the correct 3 muons, if more than 3 muons has been reconstructed
26  double getInvariantMass(const reco::TrackCollection* tracks, const double MuonMass=0.106);
27  double getDeltaR(const reco::Track& track1, const reco::Track& track2);
28  bool removeIncorrectMuon(); //try to remove one muon, which seems to come not from a tau->3Mu decay
29 
30  const double m_kMatchingDeltaR;
31  const double m_kMatchingPt;
32  const double m_kTauMassCut;
33  const double m_kTauMass;
34  const double m_kMuonMass;
35 
38 
41 };
42 
43 #endif
Tau3MuReco(const edm::ParameterSet &iConfig, edm::ConsumesCollector &&iC)
Definition: Tau3MuReco.cc:9
double getDeltaR(const reco::Track &track1, const reco::Track &track2)
Definition: Tau3MuReco.cc:308
double getInvariantMass(const reco::TrackCollection *tracks, const double MuonMass=0.106)
Definition: Tau3MuReco.cc:284
const double m_kTauMass
Definition: Tau3MuReco.h:33
bool find3rdTrack(const edm::Event &iEvent, const edm::EventSetup &iSetup, const reco::TrackCollection &Tracks)
Definition: Tau3MuReco.cc:108
const double m_kMatchingPt
Definition: Tau3MuReco.h:31
reco::TrackCollection * m_TrackCollection
Definition: Tau3MuReco.h:40
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:10
bool findCorrectPairing()
Definition: Tau3MuReco.cc:216
std::vector< Muon > MuonCollection
collection of Muon objects
Definition: MuonFwd.h:9
int iEvent
Definition: GenABIO.cc:230
const double m_kMatchingDeltaR
Definition: Tau3MuReco.h:30
bool doTau3MuReco(const edm::Event &iEvent, const edm::EventSetup &iSetup, reco::MuonCollection *muonCollection, reco::TrackCollection *trackCollection)
Definition: Tau3MuReco.cc:24
tuple tracks
Definition: testEve_cfg.py:39
const double m_kTauMassCut
Definition: Tau3MuReco.h:32
const double MuonMass
const double m_kMuonMass
Definition: Tau3MuReco.h:34
bool removeIncorrectMuon()
Definition: Tau3MuReco.cc:259
const edm::EDGetTokenT< reco::MuonCollection > m_kMuonSourceToken
Definition: Tau3MuReco.h:36
const edm::EDGetTokenT< reco::TrackCollection > m_kTrackSourceToken
Definition: Tau3MuReco.h:37
reco::MuonCollection * m_MuonCollection
Definition: Tau3MuReco.h:39
bool check4MuonTrack(const reco::Track &track)
Definition: Tau3MuReco.cc:86