CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
L1Analysis::L1AnalysisRecoTau Class Reference

#include <L1AnalysisRecoTau.h>

Public Member Functions

L1AnalysisRecoTauDataFormatgetData ()
 
 L1AnalysisRecoTau ()
 
void Reset ()
 
void SetTau (const edm::Event &event, const edm::EventSetup &setup, const edm::Handle< reco::PFTauCollection > taus, const edm::Handle< reco::PFTauDiscriminator > DMFindingOldTaus, const edm::Handle< reco::PFTauDiscriminator > DMFindingTaus, const edm::Handle< reco::PFTauDiscriminator > TightIsoTaus, const edm::Handle< reco::PFTauDiscriminator > LooseIsoTaus, const edm::Handle< reco::PFTauDiscriminator > LooseAntiMuon, const edm::Handle< reco::PFTauDiscriminator > TightAntiMuon, const edm::Handle< reco::PFTauDiscriminator > VLooseAntiElectron, const edm::Handle< reco::PFTauDiscriminator > LooseAntiElectron, const edm::Handle< reco::PFTauDiscriminator > TightAntiElectron, unsigned maxTau)
 
 ~L1AnalysisRecoTau ()
 

Private Attributes

L1AnalysisRecoTauDataFormat recoTau_
 

Detailed Description

Definition at line 26 of file L1AnalysisRecoTau.h.

Constructor & Destructor Documentation

L1Analysis::L1AnalysisRecoTau::L1AnalysisRecoTau ( )

Definition at line 8 of file L1AnalysisRecoTau.cc.

9 {
10 }
L1Analysis::L1AnalysisRecoTau::~L1AnalysisRecoTau ( )

Definition at line 13 of file L1AnalysisRecoTau.cc.

14 {
15 }

Member Function Documentation

L1AnalysisRecoTauDataFormat* L1Analysis::L1AnalysisRecoTau::getData ( void  )
inline

Definition at line 47 of file L1AnalysisRecoTau.h.

References recoTau_.

47 {return &recoTau_;}
L1AnalysisRecoTauDataFormat recoTau_
void L1Analysis::L1AnalysisRecoTau::Reset ( void  )
inline
void L1Analysis::L1AnalysisRecoTau::SetTau ( const edm::Event event,
const edm::EventSetup setup,
const edm::Handle< reco::PFTauCollection taus,
const edm::Handle< reco::PFTauDiscriminator DMFindingOldTaus,
const edm::Handle< reco::PFTauDiscriminator DMFindingTaus,
const edm::Handle< reco::PFTauDiscriminator TightIsoTaus,
const edm::Handle< reco::PFTauDiscriminator LooseIsoTaus,
const edm::Handle< reco::PFTauDiscriminator LooseAntiMuon,
const edm::Handle< reco::PFTauDiscriminator TightAntiMuon,
const edm::Handle< reco::PFTauDiscriminator VLooseAntiElectron,
const edm::Handle< reco::PFTauDiscriminator LooseAntiElectron,
const edm::Handle< reco::PFTauDiscriminator TightAntiElectron,
unsigned  maxTau 
)

Definition at line 18 of file L1AnalysisRecoTau.cc.

Referenced by L1TauRecoTreeProducer::analyze().

21 {
22  unsigned int nTausTightIso=0;
23 
24  for(reco::PFTauDiscriminator::const_iterator it=TightIsoTaus->begin();
25  it!=TightIsoTaus->end() && nTausTightIso < maxTau;
26  ++it) {
27 
28  recoTau_.TightIsoFlag.push_back((*it).second);
29  nTausTightIso++;
30  }
31 
32  unsigned int nTausLooseIso=0;
33 
34  for(reco::PFTauDiscriminator::const_iterator it=LooseIsoTaus->begin();
35  it!=LooseIsoTaus->end() && nTausLooseIso < maxTau;
36  ++it) {
37 
38  recoTau_.LooseIsoFlag.push_back((*it).second);
39  nTausLooseIso++;
40  }
41 
42  unsigned int nTausLooseAntiMuon=0;
43 
44  for(reco::PFTauDiscriminator::const_iterator it=LooseAntiMuon->begin();
45  it!=LooseAntiMuon->end() && nTausLooseAntiMuon < maxTau;
46  ++it) {
47 
48  recoTau_.LooseAntiMuonFlag.push_back((*it).second);
49  nTausLooseAntiMuon++;
50  }
51 
52  unsigned int nTausTightAntiMuon=0;
53 
54  for(reco::PFTauDiscriminator::const_iterator it=TightAntiMuon->begin();
55  it!=TightAntiMuon->end() && nTausTightAntiMuon < maxTau;
56  ++it) {
57 
58  recoTau_.TightAntiMuonFlag.push_back((*it).second);
59  nTausTightAntiMuon++;
60  }
61 
62  unsigned int nTausVLooseAntiElectron=0;
63 
64  for(reco::PFTauDiscriminator::const_iterator it=VLooseAntiElectron->begin();
65  it!=VLooseAntiElectron->end() && nTausVLooseAntiElectron < maxTau;
66  ++it) {
67 
68  recoTau_.VLooseAntiElectronFlag.push_back((*it).second);
69  nTausVLooseAntiElectron++;
70  }
71 
72  unsigned int nTausLooseAntiElectron=0;
73 
74  for(reco::PFTauDiscriminator::const_iterator it=LooseAntiElectron->begin();
75  it!=LooseAntiElectron->end() && nTausLooseAntiElectron < maxTau;
76  ++it) {
77 
78  recoTau_.LooseAntiElectronFlag.push_back((*it).second);
79  nTausLooseAntiElectron++;
80  }
81 
82  unsigned int nTausTightAntiElectron=0;
83 
84  for(reco::PFTauDiscriminator::const_iterator it=TightAntiElectron->begin();
85  it!=TightAntiElectron->end() && nTausTightAntiElectron < maxTau;
86  ++it) {
87 
88  recoTau_.TightAntiElectronFlag.push_back((*it).second);
89  nTausTightAntiElectron++;
90  }
91 
92  unsigned int nTausDMFindingOld=0;
93 
94  for(reco::PFTauDiscriminator::const_iterator it=DMFindingOldTaus->begin();
95  it!=DMFindingOldTaus->end() && nTausDMFindingOld < maxTau;
96  ++it) {
97 
98  recoTau_.DMFindingOldDMs.push_back((*it).second);
99  nTausDMFindingOld++;
100  }
101 
102  unsigned int nTausDMFinding=0;
103 
104  for(reco::PFTauDiscriminator::const_iterator it=DMFindingTaus->begin();
105  it!=DMFindingTaus->end() && nTausDMFinding < maxTau;
106  ++it) {
107 
108  recoTau_.DMFindingNewDMs.push_back((*it).second);
109  nTausDMFinding++;
110  }
111 
112  recoTau_.nTaus=0;
113 
114  for(reco::PFTauCollection::const_iterator it=taus->begin();
115  it!=taus->end() && recoTau_.nTaus < maxTau;
116  ++it) {
117 
118  recoTau_.e.push_back(it->energy());
119  recoTau_.pt.push_back(it->pt());
120  recoTau_.et.push_back(it->et());
121  recoTau_.eta.push_back(it->eta());
122  recoTau_.phi.push_back(it->phi());
123 
124  recoTau_.nTaus++;
125 
126  }
127 }
L1AnalysisRecoTauDataFormat recoTau_

Member Data Documentation

L1AnalysisRecoTauDataFormat L1Analysis::L1AnalysisRecoTau::recoTau_
private

Definition at line 51 of file L1AnalysisRecoTau.h.

Referenced by getData(), and Reset().