Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
RecoParticleFlow
PFProducer
interface
PFBlockLink.h
Go to the documentation of this file.
1
#ifndef RecoParticleFlow_PFAlgo_PFBlockLink_h
2
#define RecoParticleFlow_PFAlgo_PFBlockLink_h
3
4
#include <vector>
5
#include "
DataFormats/ParticleFlowReco/interface/PFBlock.h
"
6
11
class
PFBlockLink
{
12
13
public
:
14
16
enum
Type
{
17
NONE
=0,
18
ECALandECAL
=0x8,
19
TRACKandECAL
=0x9,
20
TRACKandHCAL
=0x11,
21
ECALandHCAL
=0x18,
22
PS1andECAL
=0xA,
23
PS2andECAL
= 0xC,
24
TRACKandPS1
= 0x3,
25
TRACKandPS2
= 0x5,
26
PS1andPS2
= 0x6,
27
TRACKandTRACK
= 0x1,
28
ECALandGSF
= 0x28,
29
HCALandGSF
= 0x30,
30
TRACKandGSF
= 0x21,
31
GSFandBREM
=0x60,
32
GSFandGSF
= 0x20,
33
ECALandBREM
= 0x48,
34
HCALandBREM
= 0x50,
35
PS1andGSF
= 0x22,
36
PS2andGSF
= 0x24,
37
PS1andBREM
= 0x42,
38
PS2andBREM
= 0x44,
39
HFEMandHFHAD
= 0x180,
40
SCandECAL
= 0x208,
41
TRACKandHO
= 0x401,
42
HCALandHO
= 0x410
43
};
44
47
PFBlockLink
() :
48
type_
(
NONE
),
49
test_
(
reco
::PFBlock::LINKTEST_RECHIT),
50
dist_
(0),
51
element1_
( 0 ),
52
element2_
( 0 ) {}
53
55
PFBlockLink
(
Type
type
,
56
reco::PFBlock::LinkTest
test
,
57
double
dist
,
58
unsigned
elem1,
59
unsigned
elem2)
60
:
61
type_
(type),
62
test_
(test),
63
dist_
(dist),
64
element1_
(elem1),
65
element2_
(elem2) {}
66
67
69
unsigned
neighbour
(
unsigned
elem
)
const
{
70
if
( elem ==
element1_
)
return
element2_
;
71
else
if
(elem ==
element2_
)
return
element1_
;
72
else
return
elem
;
73
}
74
76
Type
type
()
const
{
return
type_
;}
77
80
reco::PFBlock::LinkTest
test
()
const
{
return
test_
;}
81
83
double
dist
()
const
{
return
dist_
;}
84
86
unsigned
element1
()
const
{
return
element1_
;}
87
89
unsigned
element2
()
const
{
return
element2_
;}
90
91
93
friend
std::ostream&
operator<<
(std::ostream&
out
,
const
PFBlockLink
&
l
);
94
95
private
:
97
Type
type_
;
98
100
reco::PFBlock::LinkTest
test_
;
101
103
double
dist_
;
104
106
unsigned
element1_
;
107
109
unsigned
element2_
;
110
111
};
112
113
#endif
PFBlockLink::PS2andGSF
Definition:
PFBlockLink.h:36
PFBlockLink::operator<<
friend std::ostream & operator<<(std::ostream &out, const PFBlockLink &l)
print the link
Definition:
PFBlockLink.cc:7
PFBlockLink::element1_
unsigned element1_
element 1
Definition:
PFBlockLink.h:106
type
type
Definition:
HCALResponse.h:22
PFBlockLink::GSFandGSF
Definition:
PFBlockLink.h:32
PFBlockLink::dist
double dist() const
Definition:
PFBlockLink.h:83
PFBlockLink::element2_
unsigned element2_
element 2
Definition:
PFBlockLink.h:109
PFBlockLink::type_
Type type_
type of the link
Definition:
PFBlockLink.h:97
PFBlockLink::dist_
double dist_
distance of the link
Definition:
PFBlockLink.h:103
PFBlockLink::element1
unsigned element1() const
Definition:
PFBlockLink.h:86
PFBlockLink::PS1andECAL
Definition:
PFBlockLink.h:22
PFBlockLink::TRACKandHO
Definition:
PFBlockLink.h:41
PFBlockLink::HCALandGSF
Definition:
PFBlockLink.h:29
PFBlockLink::PS2andECAL
Definition:
PFBlockLink.h:23
reco::PFBlock::LinkTest
LinkTest
Definition:
PFBlock.h:48
PFBlockLink::test_
reco::PFBlock::LinkTest test_
type of test
Definition:
PFBlockLink.h:100
dt_dqm_sourceclient_common_cff.reco
tuple reco
Definition:
dt_dqm_sourceclient_common_cff.py:105
PFBlockLink::TRACKandHCAL
Definition:
PFBlockLink.h:20
PFBlockLink::SCandECAL
Definition:
PFBlockLink.h:40
PFBlockLink::ECALandGSF
Definition:
PFBlockLink.h:28
PFBlockLink
link between 2 elements
Definition:
PFBlockLink.h:11
PFBlockLink::TRACKandGSF
Definition:
PFBlockLink.h:30
PFBlockLink::PS1andPS2
Definition:
PFBlockLink.h:26
PFBlockLink::test
reco::PFBlock::LinkTest test() const
Definition:
PFBlockLink.h:80
HTMLExport.elem
def elem
Definition:
HTMLExport.py:18
PFBlockLink::PS1andBREM
Definition:
PFBlockLink.h:37
PFBlockLink::neighbour
unsigned neighbour(unsigned elem) const
Definition:
PFBlockLink.h:69
PFBlockLink::TRACKandECAL
Definition:
PFBlockLink.h:19
PFBlockLink::HFEMandHFHAD
Definition:
PFBlockLink.h:39
dbtoconf.out
tuple out
Definition:
dbtoconf.py:99
PFBlockLink::NONE
Definition:
PFBlockLink.h:17
PFBlockLink::TRACKandTRACK
Definition:
PFBlockLink.h:27
PFBlockLink::type
Type type() const
Definition:
PFBlockLink.h:76
PFBlockLink::PFBlockLink
PFBlockLink(Type type, reco::PFBlock::LinkTest test, double dist, unsigned elem1, unsigned elem2)
standard constructor
Definition:
PFBlockLink.h:55
prof2calltree.l
tuple l
Definition:
prof2calltree.py:116
PFBlockLink::HCALandBREM
Definition:
PFBlockLink.h:34
PFBlockLink::GSFandBREM
Definition:
PFBlockLink.h:31
PFBlockLink::PS1andGSF
Definition:
PFBlockLink.h:35
PFBlockLink::ECALandHCAL
Definition:
PFBlockLink.h:21
PFBlockLink::Type
Type
possible types. WARNING: have a look at PFBlockElement
Definition:
PFBlockLink.h:16
PFBlockLink::HCALandHO
Definition:
PFBlockLink.h:42
PFBlockLink::TRACKandPS1
Definition:
PFBlockLink.h:24
PFBlockLink::ECALandECAL
Definition:
PFBlockLink.h:18
PFBlockLink::TRACKandPS2
Definition:
PFBlockLink.h:25
PFBlock.h
PFBlockLink::PS2andBREM
Definition:
PFBlockLink.h:38
PFBlockLink::PFBlockLink
PFBlockLink()
Definition:
PFBlockLink.h:47
PFBlockLink::ECALandBREM
Definition:
PFBlockLink.h:33
PFBlockLink::element2
unsigned element2() const
Definition:
PFBlockLink.h:89
Generated for CMSSW Reference Manual by
1.8.5