Main Page
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
o
p
q
r
s
t
u
v
w
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
_
a
d
e
f
l
m
o
p
s
t
u
v
Related Functions
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Package Documentation
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
DataFormats
MuonDetId
src
CSCDetId.cc
Go to the documentation of this file.
1
#include "
DataFormats/MuonDetId/interface/CSCDetId.h
"
2
3
int
CSCDetId::triggerSector
()
const
{
4
// UPDATED TO OCT 2005 - LGRAY Feb 2006
5
6
int
result
;
7
int
ring
= this->
ring
();
8
int
station
= this->
station
();
9
int
chamber
= this->
chamber
();
10
11
if
(station > 1 &&
ring
> 1) {
12
result
= ((static_cast<unsigned>(
chamber
- 3) & 0x7f) / 6) + 1;
// ch 3-8->1, 9-14->2, ... 1,2 -> 6
13
}
else
{
14
result
= (
station
!= 1) ? ((static_cast<unsigned>(
chamber
- 2) & 0x1f) / 3) + 1 :
// ch 2-4-> 1, 5-7->2, ...
15
((static_cast<unsigned>(
chamber
- 3) & 0x7f) / 6) + 1;
16
}
17
18
// max sector is 6, some calculations give a value greater than six but this is expected.
19
return
(
result
<= 6) ?
result
: 6;
20
}
21
22
int
CSCDetId::triggerCscId
()
const
{
23
// UPDATED TO OCT 2005 - LGRAY Feb 2006
24
25
int
result
;
26
int
ring
= this->
ring
();
27
int
station
= this->
station
();
28
int
chamber
= this->
chamber
();
29
30
if
(station == 1) {
31
result
= (
chamber
) % 3 + 1;
// 1,2,3
32
switch
(
ring
) {
33
case
1:
34
break
;
35
case
2:
36
result
+= 3;
// 4,5,6
37
break
;
38
case
3:
39
result
+= 6;
// 7,8,9
40
break
;
41
}
42
}
else
{
43
if
(
ring
== 1) {
44
result
= (
chamber
+ 1) % 3 + 1;
// 1,2,3
45
}
else
{
46
result
= (
chamber
+ 3) % 6 + 4;
// 4,5,6,7,8,9
47
}
48
}
49
return
result
;
50
}
51
52
unsigned
short
CSCDetId::iChamberType
(
unsigned
short
istation,
unsigned
short
iring) {
53
int
i
= 2 * istation + iring;
// i=2S+R ok for S=2, 3, 4
54
if
(istation == 1) {
55
--
i
;
// ring 1R -> i=1+R (2S+R-1=1+R for S=1)
56
if
(
i
> 4)
57
i
= 1;
// But ring 1A (R=4) -> i=1
58
}
59
return
i
;
60
}
61
62
std::string
CSCDetId::chamberName
(
int
endcap
,
int
station
,
int
ring
,
int
chamber
) {
63
const
std::string
eSign =
endcap
== 1 ?
"+"
:
"-"
;
64
return
"ME"
+ eSign + std::to_string(
station
) +
"/"
+ std::to_string(
ring
) +
"/"
+ std::to_string(
chamber
);
65
}
66
67
std::string
CSCDetId::chamberName
(
int
chamberType) {
68
// ME1a, ME1b, ME12, ME13, ME21, ME22, ME31, ME32, ME41, ME42
69
const
unsigned
stations[10] = {1, 1, 1, 1, 2, 2, 3, 3, 4, 4};
70
const
std::string
rings[10] = {
"A"
,
"B"
,
"2"
,
"3"
,
"1"
,
"2"
,
"1"
,
"2"
,
"1"
,
"2"
};
71
return
"ME"
+ std::to_string(stations[chamberType - 1]) + rings[chamberType - 1];
72
}
73
74
std::string
CSCDetId::chamberName
()
const
{
return
chamberName
(
endcap
(),
station
(),
ring
(),
chamber
()); }
75
76
std::ostream&
operator<<
(std::ostream& os,
const
CSCDetId
&
id
) {
77
// Note that there is no endl to end the output
78
79
os <<
" E:"
<<
id
.endcap() <<
" S:"
<<
id
.station() <<
" R:"
<<
id
.ring() <<
" C:"
<<
id
.chamber()
80
<<
" L:"
<<
id
.layer();
81
return
os;
82
}
mps_fire.i
i
Definition:
mps_fire.py:428
relativeConstraints.station
station
Definition:
relativeConstraints.py:67
CSCDetId::ring
int ring() const
Definition:
CSCDetId.h:68
makeMuonMisalignmentScenario.endcap
endcap
Definition:
makeMuonMisalignmentScenario.py:320
CSCDetId::iChamberType
unsigned short iChamberType() const
Definition:
CSCDetId.h:96
CSCDetId.h
CSCDetId::triggerCscId
int triggerCscId() const
Definition:
CSCDetId.cc:22
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition:
AlCaHLTBitMon_QueryRunRegistry.py:256
CSCDetId::triggerSector
int triggerSector() const
Definition:
CSCDetId.cc:3
CSCDetId
Definition:
CSCDetId.h:26
CSCDetId::chamber
int chamber() const
Definition:
CSCDetId.h:62
CSCDetId::endcap
int endcap() const
Definition:
CSCDetId.h:85
CSCDetId::chamberName
std::string chamberName() const
Definition:
CSCDetId.cc:74
relativeConstraints.ring
ring
Definition:
relativeConstraints.py:68
operator<<
std::ostream & operator<<(std::ostream &os, const CSCDetId &id)
Definition:
CSCDetId.cc:76
relativeConstraints.chamber
chamber
Definition:
relativeConstraints.py:53
mps_fire.result
result
Definition:
mps_fire.py:311
CSCDetId::station
int station() const
Definition:
CSCDetId.h:79
Generated for CMSSW Reference Manual by
1.8.16