ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/L1TriggerDPG/interface/L1AnalysisRecoMuonDataFormat.h
Revision: 1.4
Committed: Wed Dec 7 12:20:02 2011 UTC (13 years, 4 months ago) by kropiv
Content type: text/plain
Branch: MAIN
Changes since 1.3: +6 -0 lines
Log Message:
add numberOfValidMuonHits numberOfMatchedStations and tr_d0 for reco muon to make official tight selection

File Contents

# User Rev Content
1 econte 1.1 #ifndef __L1Analysis_L1AnalysisRecoMuonDataFormat_H__
2     #define __L1Analysis_L1AnalysisRecoMuonDataFormat_H__
3    
4     //-------------------------------------------------------------------------------
5     // Created 20/04/2010 - E. Conte, A.C. Le Bihan
6     //
7     //
8     // Original code : UserCode/L1TriggerDPG/L1RecoMuonDataFormatProducer - Luigi Guiducci
9     //-------------------------------------------------------------------------------
10    
11     #include <vector>
12    
13     namespace L1Analysis
14     {
15     struct L1AnalysisRecoMuonDataFormat
16     {
17     L1AnalysisRecoMuonDataFormat(){Reset();};
18     ~L1AnalysisRecoMuonDataFormat(){Reset();};
19    
20     void Reset()
21     {
22     nMuons = 0;
23    
24     // what muon kind? 0=global 1=SA 2=trackeronly
25     type.clear();
26     howmanytypes.clear();
27     // global muons quantities
28     ch.clear();
29     pt.clear();
30     p.clear();
31     eta.clear();
32     phi.clear();
33     validhits.clear();
34 kropiv 1.4 numberOfMatchedStations.clear();
35     numberOfValidMuonHits.clear();
36 econte 1.1 normchi2.clear();
37     imp_point_x.clear();
38     imp_point_y.clear();
39     imp_point_z.clear();
40     imp_point_p.clear();
41     imp_point_pt.clear();
42     phi_hb.clear();
43     z_hb.clear();
44     r_he_p.clear();
45     r_he_n.clear();
46     phi_he_p.clear();
47     phi_he_n.clear();
48    
49     // tracker muons quantities
50     tr_ch.clear();
51     tr_pt.clear();
52     tr_p.clear();
53     tr_eta.clear();
54     tr_phi.clear();
55     tr_validhits.clear();
56     tr_validpixhits.clear();
57     tr_normchi2.clear();
58 kropiv 1.4 tr_d0.clear();
59 econte 1.1 tr_imp_point_x.clear();
60     tr_imp_point_y.clear();
61     tr_imp_point_z.clear();
62     tr_imp_point_p.clear();
63     tr_imp_point_pt.clear();
64    
65     tr_z_mb2.clear();
66     tr_phi_mb2.clear();
67     tr_r_me2_p.clear();
68     tr_phi_me2_p.clear();
69     tr_r_me2_n.clear();
70     tr_phi_me2_n.clear();
71    
72     tr_z_mb1.clear();
73     tr_phi_mb1.clear();
74     tr_r_me1_p.clear();
75     tr_phi_me1_p.clear();
76     tr_r_me1_n.clear();
77     tr_phi_me1_n.clear();
78    
79     // standalone muons (either part of global or SA only)
80     sa_phi_mb2.clear();
81     sa_z_mb2.clear();
82     sa_pseta.clear();
83     sa_normchi2.clear();
84     sa_validhits.clear();
85     sa_ch.clear();
86     sa_pt.clear();
87     sa_p.clear();
88     sa_eta.clear();
89     sa_phi.clear();
90     sa_outer_pt.clear();
91     sa_inner_pt.clear();
92     sa_outer_eta.clear();
93     sa_inner_eta.clear();
94     sa_outer_phi.clear();
95     sa_inner_phi.clear();
96     sa_outer_x.clear();
97     sa_outer_y.clear();
98     sa_outer_z.clear();
99     sa_inner_x.clear();
100     sa_inner_y.clear();
101     sa_inner_z.clear();
102     sa_imp_point_x.clear();
103     sa_imp_point_y.clear();
104     sa_imp_point_z.clear();
105     sa_imp_point_p.clear();
106     sa_imp_point_pt.clear();
107     sa_phi_hb.clear();
108     sa_z_hb.clear();
109     sa_r_he_p.clear();
110     sa_r_he_n.clear();
111     sa_phi_he_p.clear();
112     sa_phi_he_n.clear();
113     sa_phi_me2_p.clear();
114     sa_phi_me2_n.clear();
115     sa_r_me2_p.clear();
116     sa_r_me2_n.clear();
117    
118     sa_z_mb1.clear();
119     sa_phi_mb1.clear();
120     sa_r_me1_p.clear();
121     sa_phi_me1_p.clear();
122     sa_r_me1_n.clear();
123     sa_phi_me1_n.clear();
124    
125     calo_energy.clear();
126     calo_energy3x3.clear();
127     ecal_time.clear();
128     ecal_terr.clear();
129     hcal_time.clear();
130     hcal_terr.clear();
131     time_dir.clear(); // -1 = outsideIn 0=undefined 1=insideOut
132     time_inout.clear();
133     time_inout_err.clear();
134     time_outin.clear();
135     time_outin_err.clear();
136    
137 guiducci 1.3 sa_nChambers.clear();
138     sa_nMatches.clear();
139    
140 econte 1.2 // RECHIT information from CSC: only for standalone/global muons!
141     rchCSCtype.clear();
142     rchPhi.clear();
143     rchEta.clear();
144 econte 1.1 }
145    
146     // how many muons of any kind
147     int nMuons;
148    
149     // what muon kind? 0=global 1=SA 2=trackeronly 3=trsa
150     std::vector<int> type;
151     std::vector<int> howmanytypes;
152     // global muons quantities
153     std::vector<double> ch;
154     std::vector<double> pt;
155     std::vector<double> p;
156     std::vector<double> eta;
157     std::vector<double> phi;
158     std::vector<double> validhits;
159 kropiv 1.4 std::vector<double> numberOfMatchedStations;
160     std::vector<double> numberOfValidMuonHits;
161 econte 1.1 std::vector<double> normchi2;
162     std::vector<double> imp_point_x;
163     std::vector<double> imp_point_y;
164     std::vector<double> imp_point_z;
165     std::vector<double> imp_point_p;
166     std::vector<double> imp_point_pt;
167     std::vector<double> phi_hb;
168     std::vector<double> z_hb;
169     std::vector<double> r_he_p;
170     std::vector<double> r_he_n;
171     std::vector<double> phi_he_p;
172     std::vector<double> phi_he_n;
173    
174     // tracker muons quantities
175     std::vector<double> tr_ch;
176     std::vector<double> tr_pt;
177     std::vector<double> tr_p;
178     std::vector<double> tr_eta;
179     std::vector<double> tr_phi;
180     std::vector<double> tr_validhits;
181     std::vector<double> tr_validpixhits;
182     std::vector<double> tr_normchi2;
183 kropiv 1.4 std::vector<double> tr_d0;
184 econte 1.1 std::vector<double> tr_imp_point_x;
185     std::vector<double> tr_imp_point_y;
186     std::vector<double> tr_imp_point_z;
187     std::vector<double> tr_imp_point_p;
188     std::vector<double> tr_imp_point_pt;
189    
190     std::vector<double> tr_z_mb2;
191     std::vector<double> tr_phi_mb2;
192     std::vector<double> tr_r_me2_p;
193     std::vector<double> tr_phi_me2_p;
194     std::vector<double> tr_r_me2_n;
195     std::vector<double> tr_phi_me2_n;
196    
197     std::vector<double> tr_z_mb1 ;
198     std::vector<double> tr_phi_mb1;
199     std::vector<double> tr_r_me1_p ;
200     std::vector<double> tr_phi_me1_p;
201     std::vector<double> tr_r_me1_n ;
202     std::vector<double> tr_phi_me1_n;
203    
204     // standalone muons (either part of global or SA only)
205     std::vector<double> sa_phi_mb2;
206     std::vector<double> sa_z_mb2;
207     std::vector<double> sa_pseta;
208     std::vector<double> sa_normchi2;
209     std::vector<double> sa_validhits;
210     std::vector<double> sa_ch;
211     std::vector<double> sa_pt;
212     std::vector<double> sa_p;
213     std::vector<double> sa_eta;
214     std::vector<double> sa_phi;
215     std::vector<double> sa_outer_pt;
216     std::vector<double> sa_inner_pt;
217     std::vector<double> sa_outer_eta;
218     std::vector<double> sa_inner_eta;
219     std::vector<double> sa_outer_phi;
220     std::vector<double> sa_inner_phi;
221     std::vector<double> sa_outer_x;
222     std::vector<double> sa_outer_y;
223     std::vector<double> sa_outer_z;
224     std::vector<double> sa_inner_x;
225     std::vector<double> sa_inner_y;
226     std::vector<double> sa_inner_z;
227     std::vector<double> sa_imp_point_x;
228     std::vector<double> sa_imp_point_y;
229     std::vector<double> sa_imp_point_z;
230     std::vector<double> sa_imp_point_p;
231     std::vector<double> sa_imp_point_pt;
232     std::vector<double> sa_phi_hb;
233     std::vector<double> sa_z_hb;
234     std::vector<double> sa_r_he_p;
235     std::vector<double> sa_r_he_n;
236     std::vector<double> sa_phi_he_p;
237     std::vector<double> sa_phi_he_n;
238     std::vector<double> sa_r_me2_p;
239     std::vector<double> sa_r_me2_n;
240     std::vector<double> sa_phi_me2_p;
241     std::vector<double> sa_phi_me2_n;
242    
243     std::vector<double> sa_z_mb1;
244     std::vector<double> sa_phi_mb1;
245     std::vector<double> sa_r_me1_p;
246     std::vector<double> sa_phi_me1_p;
247     std::vector<double> sa_r_me1_n;
248     std::vector<double> sa_phi_me1_n;
249    
250     std::vector<double> calo_energy;
251     std::vector<double> calo_energy3x3;
252     std::vector<double> ecal_time;
253     std::vector<double> ecal_terr;
254     std::vector<double> hcal_time;
255     std::vector<double> hcal_terr;
256    
257     std::vector<double> time_dir; // -1 = outsideIn ; 0=undefined; 1=insideOut
258     std::vector<double> time_inout;
259     std::vector<double> time_inout_err;
260     std::vector<double> time_outin;
261     std::vector<double> time_outin_err;
262 econte 1.2
263 guiducci 1.3 std::vector<int> sa_nChambers;
264     std::vector<int> sa_nMatches;
265    
266    
267 econte 1.2 // RECHIT information from CSC: only for standalone/global muons!
268     std::vector<int> rchCSCtype;
269     std::vector<double> rchPhi;
270     std::vector<double> rchEta;
271 econte 1.1 };
272     }
273     #endif
274    
275