ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/Morgan/interface/TRootMuon.h
Revision: 1.1
Committed: Mon May 19 16:12:13 2008 UTC (16 years, 11 months ago) by mlethuil
Content type: text/plain
Branch: MAIN
CVS Tags: cmssw_1_6_12
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 mlethuil 1.1 #ifndef TRootMuon_h
2     #define TRootMuon_h
3    
4     #include "../interface/TRootParticle.h"
5    
6    
7     using namespace std;
8    
9     class TRootMuon : public TRootParticle
10     {
11    
12     public:
13    
14     TRootMuon() : TRootParticle(),
15     et_em_(0.), et_emS9_(0.), et_had_(0.), et_hadS9_(0.), et_ho_(0.), et_hoS9_(0.), caloCompatibility_(0.),
16     isoR03_emEt_(0.), isoR03_hadEt_(0.), isoR03_hoEt_(0.), isoR03_sumPt_(0.), isoR03_nTracks_(0), isoR03_nJets_(0),
17     isoR05_emEt_(0.), isoR05_hadEt_(0.), isoR05_hoEt_(0.), isoR05_sumPt_(0.), isoR05_nTracks_(0), isoR05_nJets_(0),
18     energyValid_(false), matchesValid_(false), isolationValid_(false) {;}
19    
20     TRootMuon(const TRootMuon& muon) : TRootParticle(muon),
21     et_em_(muon.et_em_), et_emS9_(muon.et_emS9_), et_had_(muon.et_had_), et_hadS9_(muon.et_hadS9_), et_ho_(muon.et_ho_), et_hoS9_(muon.et_hoS9_), caloCompatibility_(muon.caloCompatibility_),
22     isoR03_emEt_(muon.isoR03_emEt_), isoR03_hadEt_(muon.isoR03_hadEt_), isoR03_hoEt_(muon.isoR03_hoEt_), isoR03_sumPt_(muon.isoR03_sumPt_), isoR03_nTracks_(muon.isoR03_nTracks_), isoR03_nJets_(muon.isoR03_nJets_),
23     isoR05_emEt_(muon.isoR05_emEt_), isoR05_hadEt_(muon.isoR05_hadEt_), isoR05_hoEt_(muon.isoR05_hoEt_), isoR05_sumPt_(muon.isoR05_sumPt_), isoR05_nTracks_(muon.isoR05_nTracks_), isoR05_nJets_(muon.isoR05_nJets_),
24     energyValid_(muon.energyValid_), matchesValid_(muon.matchesValid_), isolationValid_(muon.isolationValid_) {;}
25    
26     TRootMuon(Double_t px, Double_t py, Double_t pz, Double_t e) : TRootParticle(px,py,pz,e),
27     et_em_(0.), et_emS9_(0.), et_had_(0.), et_hadS9_(0.), et_ho_(0.), et_hoS9_(0.), caloCompatibility_(0.),
28     isoR03_emEt_(0.), isoR03_hadEt_(0.), isoR03_hoEt_(0.), isoR03_sumPt_(0.), isoR03_nTracks_(0), isoR03_nJets_(0),
29     isoR05_emEt_(0.), isoR05_hadEt_(0.), isoR05_hoEt_(0.), isoR05_sumPt_(0.), isoR05_nTracks_(0), isoR05_nJets_(0),
30     energyValid_(false), matchesValid_(false), isolationValid_(false) {;}
31    
32     TRootMuon(Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vtx_x, Double_t vtx_y, Double_t vtx_z) : TRootParticle(px,py,pz,e,vtx_x,vtx_y,vtx_z),
33     et_em_(0.), et_emS9_(0.), et_had_(0.), et_hadS9_(0.), et_ho_(0.), et_hoS9_(0.), caloCompatibility_(0.),
34     isoR03_emEt_(0.), isoR03_hadEt_(0.), isoR03_hoEt_(0.), isoR03_sumPt_(0.), isoR03_nTracks_(0), isoR03_nJets_(0),
35     isoR05_emEt_(0.), isoR05_hadEt_(0.), isoR05_hoEt_(0.), isoR05_sumPt_(0.), isoR05_nTracks_(0), isoR05_nJets_(0),
36     energyValid_(false), matchesValid_(false), isolationValid_(false) {;}
37    
38     TRootMuon(Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vtx_x, Double_t vtx_y, Double_t vtx_z, Int_t type, Float_t charge) : TRootParticle(px,py,pz,e,vtx_x,vtx_y,vtx_z,type,charge),
39     et_em_(0.), et_emS9_(0.), et_had_(0.), et_hadS9_(0.), et_ho_(0.), et_hoS9_(0.), caloCompatibility_(0.),
40     isoR03_emEt_(0.), isoR03_hadEt_(0.), isoR03_hoEt_(0.), isoR03_sumPt_(0.), isoR03_nTracks_(0), isoR03_nJets_(0),
41     isoR05_emEt_(0.), isoR05_hadEt_(0.), isoR05_hoEt_(0.), isoR05_sumPt_(0.), isoR05_nTracks_(0), isoR05_nJets_(0),
42     energyValid_(false), matchesValid_(false), isolationValid_(false) {;}
43    
44     TRootMuon(const TLorentzVector &momentum) : TRootParticle(momentum),
45     et_em_(0.), et_emS9_(0.), et_had_(0.), et_hadS9_(0.), et_ho_(0.), et_hoS9_(0.), caloCompatibility_(0.),
46     isoR03_emEt_(0.), isoR03_hadEt_(0.), isoR03_hoEt_(0.), isoR03_sumPt_(0.), isoR03_nTracks_(0), isoR03_nJets_(0),
47     isoR05_emEt_(0.), isoR05_hadEt_(0.), isoR05_hoEt_(0.), isoR05_sumPt_(0.), isoR05_nTracks_(0), isoR05_nJets_(0),
48     energyValid_(false), matchesValid_(false), isolationValid_(false) {;}
49    
50     TRootMuon(const TLorentzVector &momentum, const TVector3 &vertex, Int_t type, Float_t charge) : TRootParticle(momentum, vertex, type, charge),
51     et_em_(0.), et_emS9_(0.), et_had_(0.), et_hadS9_(0.), et_ho_(0.), et_hoS9_(0.), caloCompatibility_(0.),
52     isoR03_emEt_(0.), isoR03_hadEt_(0.), isoR03_hoEt_(0.), isoR03_sumPt_(0.), isoR03_nTracks_(0), isoR03_nJets_(0),
53     isoR05_emEt_(0.), isoR05_hadEt_(0.), isoR05_hoEt_(0.), isoR05_sumPt_(0.), isoR05_nTracks_(0), isoR05_nJets_(0),
54     energyValid_(false), matchesValid_(false), isolationValid_(false) {;}
55    
56     ~TRootMuon() {;}
57    
58    
59     Float_t et_em() { return et_em_;}
60     Float_t et_emS9() { return et_emS9_;}
61     Float_t et_had() { return et_had_;}
62     Float_t et_hadS9() { return et_hadS9_;}
63     Float_t et_ho() { return et_ho_;}
64     Float_t et_hoS9() { return et_hoS9_;}
65     Float_t caloCompatibility() { return caloCompatibility_;}
66    
67     Float_t isoR03_emEt() { return isoR03_emEt_;}
68     Float_t isoR03_hadEt() { return isoR03_hadEt_;}
69     Float_t isoR03_hoEt() { return isoR03_hoEt_;}
70     Float_t isoR03_sumPt() { return isoR03_sumPt_;}
71     Int_t isoR03_nTracks() { return isoR03_nTracks_;}
72     Int_t isoR03_nJets() { return isoR03_nJets_;}
73    
74     Float_t isoR05_emEt() { return isoR05_emEt_;}
75     Float_t isoR05_hadEt() { return isoR05_hadEt_;}
76     Float_t isoR05_hoEt() { return isoR05_hoEt_;}
77     Float_t isoR05_sumPt() { return isoR05_sumPt_;}
78     Int_t isoR05_nTracks() { return isoR05_nTracks_;}
79     Int_t isoR05_nJets() { return isoR05_nJets_;}
80    
81     Bool_t energyValid() { return energyValid_;}
82     Bool_t matchesValid() { return matchesValid_;}
83     Bool_t isolationValid() { return isolationValid_;}
84    
85    
86     void setCaloEnergy(Float_t et_em, Float_t et_emS9, Float_t et_had, Float_t et_hadS9, Float_t et_ho, Float_t et_hoS9, Float_t caloCompatibility)
87     {
88     et_em_ = et_em;
89     et_emS9_ = et_emS9;
90     et_had_ = et_had;
91     et_hadS9_ = et_hadS9;
92     et_ho_ = et_ho;
93     et_hoS9_ = et_hoS9;
94     caloCompatibility_ = caloCompatibility;
95     }
96    
97     void setIsoR03(Float_t isoR03_emEt, Float_t isoR03_hadEt, Float_t isoR03_hoEt, Float_t isoR03_sumPt, Int_t isoR03_nTracks, Int_t isoR03_nJets)
98     {
99     isoR03_emEt_ = isoR03_emEt;
100     isoR03_hadEt_ = isoR03_hadEt;
101     isoR03_hoEt_ = isoR03_hoEt;
102     isoR03_sumPt_ = isoR03_sumPt;
103     isoR03_nTracks_ = isoR03_nTracks;
104     isoR03_nJets_ = isoR03_nJets;
105     }
106    
107     void setIsoR05(Float_t isoR05_emEt, Float_t isoR05_hadEt, Float_t isoR05_hoEt, Float_t isoR05_sumPt, Int_t isoR05_nTracks, Int_t isoR05_nJets)
108     {
109     isoR05_emEt_ = isoR05_emEt;
110     isoR05_hadEt_ = isoR05_hadEt;
111     isoR05_hoEt_ = isoR05_hoEt;
112     isoR05_sumPt_ = isoR05_sumPt;
113     isoR05_nTracks_ = isoR05_nTracks;
114     isoR05_nJets_ = isoR05_nJets;
115     }
116    
117     friend std::ostream& operator<< (std::ostream& stream, const TRootMuon& muon) {
118     stream << "TRootMuon - Charge=" << muon.charge() << " (Et,eta,phi)=("<< muon.Et() <<","<< muon.Eta() <<","<< muon.Phi() << ") vertex(x,y,z)=("<< muon.vx() <<","<< muon.vy() <<","<< muon.vz() << ")"
119     << " caloCompatibility="<< muon.caloCompatibility_ << " validity(energy, matches, isolation)=(" << muon.energyValid_ <<","<< muon.matchesValid_ <<","<< muon.isolationValid_ << ")" << endl
120     << " Et_em=" << muon.et_em_ << " Et_emS9=" << muon.et_emS9_ << " Et_had=" << muon.et_had_ << " Et_hadS9=" << muon.et_hadS9_ << " Et_ho=" << muon.et_ho_ << " Et_hoS9=" << muon.et_hoS9_ << endl
121     << " isolation cone 0.3: Et_em=" << muon.isoR03_emEt_ << " Et_had=" << muon.isoR03_hadEt_ <<" Et_ho=" << muon.isoR03_hoEt_ << " nTracks=" << muon.isoR03_nTracks_ <<" nJets=" << muon.isoR03_nJets_ << endl
122     << " isolation cone 0.5: Et_em=" << muon.isoR05_emEt_ << " Et_had=" << muon.isoR05_hadEt_ <<" Et_ho=" << muon.isoR05_hoEt_ << " nTracks=" << muon.isoR05_nTracks_ <<" nJets=" << muon.isoR05_nJets_;
123     return stream;
124     };
125    
126    
127     private:
128    
129     Float_t et_em_;
130     Float_t et_emS9_;
131     Float_t et_had_;
132     Float_t et_hadS9_;
133     Float_t et_ho_;
134     Float_t et_hoS9_;
135     Float_t caloCompatibility_;
136    
137     Float_t isoR03_emEt_;
138     Float_t isoR03_hadEt_;
139     Float_t isoR03_hoEt_;
140     Float_t isoR03_sumPt_;
141     Int_t isoR03_nTracks_;
142     Int_t isoR03_nJets_;
143    
144     Float_t isoR05_emEt_;
145     Float_t isoR05_hadEt_;
146     Float_t isoR05_hoEt_;
147     Float_t isoR05_sumPt_;
148     Int_t isoR05_nTracks_;
149     Int_t isoR05_nJets_;
150    
151     Bool_t energyValid_;
152     Bool_t matchesValid_;
153     Bool_t isolationValid_;
154    
155     ClassDef (TRootMuon,1);
156     };
157    
158     #endif
159    
160