Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
RecoTracker
RingRecord
src
SortRingsByZR.cc
Go to the documentation of this file.
1
//
2
// Package: RecoTracker/RingRecord
3
// Class: SortRingsByZR
4
//
5
// Description: sort rings by ZR
6
//
7
// Original Author: Oliver Gutsche, gutsche@fnal.gov
8
// Created: Wed Dec 20 17:31:01 UTC 2006
9
//
10
// $Author: gutsche $
11
// $Date: 2007/02/05 19:10:04 $
12
// $Revision: 1.1 $
13
//
14
15
16
#include "
RecoTracker/RingRecord/interface/SortRingsByZR.h
"
17
18
SortRingsByZR::SortRingsByZR
() {
19
//
20
// default constructor
21
//
22
}
23
24
SortRingsByZR::~SortRingsByZR
() {
25
//
26
// default destructor
27
//
28
}
29
30
bool
SortRingsByZR::RingsSortedInZR
(
const
Ring
*
a
,
const
Ring
*
b
)
const
{
31
//
32
// return true if rings are sorted in abs ZR, else return false
33
//
34
35
// return value
36
bool
result
=
true
;
37
38
if
( a->
getindex
() > b->
getindex
() ) {
39
result =
false
;
40
}
41
42
// double r1 = (a->getrmax() - a->getrmin())/2 + a->getrmin();
43
// double z1 = (a->getzmax() - a->getzmin())/2 + a->getzmin();
44
45
// double r2 = (b->getrmax() - b->getrmin())/2 + b->getrmin();
46
// double z2 = (b->getzmax() - b->getzmin())/2 + b->getzmin();
47
48
// if ( a->getType() == b->getType() ) {
49
// if ( a->getType() == Ring::TIBRing ||
50
// a->getType() == Ring::TOBRing ||
51
// a->getType() == Ring::PXBRing ) {
52
// if ( r1 > r2 ) {
53
// result = false;
54
// } else {
55
// if ( z1 > z2 ) {
56
// result = false;
57
// }
58
// }
59
// } else {
60
// if ( z1 > z2 ) {
61
// result = false;
62
// } else {
63
// if ( r1 > r2 ) {
64
// result = false;
65
// }
66
// }
67
// }
68
// } else {
69
// if ( (a->getType() == Ring::PXBRing && b->getType() == Ring::TIBRing) ||
70
// (a->getType() == Ring::TIBRing && b->getType() == Ring::PXBRing) ) {
71
// if ( r1 > r2 ) {
72
// result = false;
73
// }
74
// // else {
75
// // if ( z1 > z2 ) {
76
// // result = false;
77
// // }
78
// // }
79
80
// } else if ( (a->getType() == Ring::PXBRing && b->getType() == Ring::TOBRing) ||
81
// (a->getType() == Ring::TOBRing && b->getType() == Ring::PXBRing) ) {
82
// if ( r1 > r2 ) {
83
// result = false;
84
// }
85
// // else {
86
// // if ( z1 > z2 ) {
87
// // result = false;
88
// // }
89
// // }
90
91
// } else if ( (a->getType() == Ring::PXBRing && b->getType() == Ring::PXFRing) ||
92
// (a->getType() == Ring::PXFRing && b->getType() == Ring::PXBRing) ) {
93
// if ( z1 > z2 ) {
94
// result = false;
95
// }
96
// // else {
97
// // if ( r1 > r2 ) {
98
// // result = false;
99
// // }
100
// // }
101
102
// } else if ( (a->getType() == Ring::PXBRing && b->getType() == Ring::TIDRing) ||
103
// (a->getType() == Ring::TIDRing && b->getType() == Ring::PXBRing) ) {
104
// if ( z1 > z2 ) {
105
// result = false;
106
// }
107
// // else {
108
// // if ( r1 > r2 ) {
109
// // result = false;
110
// // }
111
// // }
112
113
// } else if ( (a->getType() == Ring::PXBRing && b->getType() == Ring::TECRing) ||
114
// (a->getType() == Ring::TECRing && b->getType() == Ring::PXBRing) ) {
115
// if ( z1 > z2 ) {
116
// result = false;
117
// }
118
// // else {
119
// // if ( r1 > r2 ) {
120
// // result = false;
121
// // }
122
// // }
123
124
// } else if ( (a->getType() == Ring::TIBRing && b->getType() == Ring::TOBRing) ||
125
// (a->getType() == Ring::TOBRing && b->getType() == Ring::TIBRing) ) {
126
// if ( r1 > r2 ) {
127
// result = false;
128
// }
129
// // else {
130
// // if ( z1 > z2 ) {
131
// // result = false;
132
// // }
133
// // }
134
135
// } else if ( (a->getType() == Ring::TIBRing && b->getType() == Ring::PXFRing) ||
136
// (a->getType() == Ring::PXFRing && b->getType() == Ring::TIBRing) ) {
137
// if ( r1 > r2 ) {
138
// result = false;
139
// }
140
// // else {
141
// // if ( z1 > z2 ) {
142
// // result = false;
143
// // }
144
// // }
145
146
// } else if ( (a->getType() == Ring::TIBRing && b->getType() == Ring::TIDRing) ||
147
// (a->getType() == Ring::TIDRing && b->getType() == Ring::TIBRing) ) {
148
// if ( z1 > z2 ) {
149
// result = false;
150
// }
151
// // else {
152
// // if ( r1 > r2 ) {
153
// // result = false;
154
// // }
155
// // }
156
157
// } else if ( (a->getType() == Ring::TIBRing && b->getType() == Ring::TECRing) ||
158
// (a->getType() == Ring::TECRing && b->getType() == Ring::TIBRing) ) {
159
// if ( z1 > z2 ) {
160
// result = false;
161
// }
162
// // else {
163
// // if ( r1 > r2 ) {
164
// // result = false;
165
// // }
166
// // }
167
168
// } else if ( (a->getType() == Ring::TOBRing && b->getType() == Ring::PXFRing) ||
169
// (a->getType() == Ring::PXFRing && b->getType() == Ring::TOBRing) ) {
170
// if ( r1 > r2 ) {
171
// result = false;
172
// }
173
// // else {
174
// // if ( z1 > z2 ) {
175
// // result = false;
176
// // }
177
// // }
178
179
// } else if ( (a->getType() == Ring::TOBRing && b->getType() == Ring::TIDRing) ||
180
// (a->getType() == Ring::TIDRing && b->getType() == Ring::TOBRing) ) {
181
// if ( r1 > r2 ) {
182
// result = false;
183
// }
184
// // else {
185
// // if ( z1 > z2 ) {
186
// // result = false;
187
// // }
188
// // }
189
190
// } else if ( (a->getType() == Ring::TOBRing && b->getType() == Ring::TECRing) ||
191
// (a->getType() == Ring::TECRing && b->getType() == Ring::TOBRing) ) {
192
// if ( z1 > z2 ) {
193
// result = false;
194
// }
195
// // else {
196
// // if ( r1 > r2 ) {
197
// // result = false;
198
// // }
199
// // }
200
201
// } else if ( (a->getType() == Ring::PXFRing && b->getType() == Ring::TIDRing) ||
202
// (a->getType() == Ring::TIDRing && b->getType() == Ring::PXFRing) ) {
203
// if ( z1 > z2 ) {
204
// result = false;
205
// }
206
// // else {
207
// // if ( r1 > r2 ) {
208
// // result = false;
209
// // }
210
// // }
211
212
// } else if ( (a->getType() == Ring::PXFRing && b->getType() == Ring::TECRing) ||
213
// (a->getType() == Ring::TECRing && b->getType() == Ring::PXFRing) ) {
214
// if ( z1 > z2 ) {
215
// result = false;
216
// }
217
// // else {
218
// // if ( r1 > r2 ) {
219
// // result = false;
220
// // }
221
// // }
222
223
// } else if ( (a->getType() == Ring::TIDRing && b->getType() == Ring::TECRing) ||
224
// (a->getType() == Ring::TECRing && b->getType() == Ring::TIDRing) ) {
225
// if ( z1 > z2 ) {
226
// result = false;
227
// }
228
// // else {
229
// // if ( r1 > r2 ) {
230
// // result = false;
231
// // }
232
// // }
233
234
// }
235
236
// }
237
238
// if ( a->getindex() == 15 || b->getindex() == 15 ) {
239
// std::cout << "a: " << a->getindex() << " b: " << b->getindex() << std::endl;
240
// std::cout << "r1: " << r1 << " r2: " << r2 << " z1: " << z1 << " z2: " << z2 << std::endl;
241
// std::cout << "result: " << result << std::endl;
242
// }
243
244
return
result
;
245
}
Ring::getindex
unsigned int getindex() const
Definition:
Ring.h:185
SortRingsByZR.h
SortRingsByZR::SortRingsByZR
SortRingsByZR()
Definition:
SortRingsByZR.cc:18
Ring
Definition:
Ring.h:31
SortRingsByZR::RingsSortedInZR
bool RingsSortedInZR(const Ring *a, const Ring *b) const
Definition:
SortRingsByZR.cc:30
query.result
tuple result
Definition:
query.py:137
SortRingsByZR::~SortRingsByZR
~SortRingsByZR()
Definition:
SortRingsByZR.cc:24
b
double b
Definition:
hdecay.h:120
a
double a
Definition:
hdecay.h:121
Generated for CMSSW Reference Manual by
1.8.5