PhysicsTools
PatUtils
interface
VertexAssociationSelector.h
Go to the documentation of this file.
1
#ifndef PhysicsTools_PatUtils_interface_VertexAssociationSelector_h
2
#define PhysicsTools_PatUtils_interface_VertexAssociationSelector_h
3
4
#include "
DataFormats/VertexReco/interface/Vertex.h
"
5
#include "
DataFormats/Candidate/interface/Candidate.h
"
6
#include "
DataFormats/PatCandidates/interface/Vertexing.h
"
7
8
namespace
pat
{
9
class
VertexAssociationSelector
{
10
public
:
14
struct
Config
{
15
Config
() :
dZ
(0),
dR
(0),
sigmasZ
(0),
sigmasR
(0) {}
//, sigmas3d(0) {}
17
float
dZ
,
dR
,
sigmasZ
,
sigmasR
;
//, sigmas3d;
18
};
19
#if 0
20
class
SelectCandidates {
22
public
:
23
SelectCandidates(
const
VertexAssociationSelector
&asso,
const
reco::Vertex
&
vtx
) : vtx_(
vtx
), asso_(asso) { }
24
bool
operator()
(
const
reco::Candidate
&
c
)
const
{
return
asso_(
c
, vtx_); }
25
private
:
26
const
reco::Vertex
& vtx_;
27
const
VertexAssociationSelector
& asso_;
28
};
30
class
SelectVertices {
31
public
:
32
SelectVertices(
const
VertexAssociationSelector
&asso,
const
reco::Candidate
&
cand
) : cand_(
cand
), asso_(asso) { }
33
bool
operator()
(
const
reco::Vertex
&
vtx
)
const
{
return
asso_(cand_,
vtx
); }
34
private
:
35
const
reco::Candidate
& cand_;
36
const
VertexAssociationSelector
& asso_;
37
};
38
#endif
39
41
VertexAssociationSelector
() {}
43
VertexAssociationSelector
(
const
Config
&conf);
44
46
bool
operator()
(
const
pat::VertexAssociation
&vass)
const
;
47
51
bool
operator()
(
const
reco::Candidate
&
c
,
const
reco::Vertex
&)
const
;
52
53
pat::VertexAssociation
simpleAssociation
(
const
reco::Candidate
&
c
,
const
reco::VertexRef
&
vtx
)
const
;
54
#if 0
55
SelectCandidates selectCandidates(
const
reco::Vertex
&
vtx
)
const
{
return
SelectCandidates(*
this
,
vtx
); }
57
59
SelectVertices selectVertices(
const
reco::Candidate
&
cand
)
const
{
return
SelectVertices( *
this
,
cand
); }
60
#endif
61
private
:
62
Config
conf_
;
63
64
};
// class
65
}
// namespace pat
66
67
#endif
pat::VertexAssociationSelector::Config::sigmasR
float sigmasR
Definition:
VertexAssociationSelector.h:17
pat::VertexAssociationSelector
Definition:
VertexAssociationSelector.h:9
pat::VertexAssociationSelector::operator()
bool operator()(const pat::VertexAssociation &vass) const
check if this VertexAssociation is ok
Definition:
VertexAssociationSelector.cc:48
pat::VertexAssociationSelector::Config::sigmasZ
float sigmasZ
Definition:
VertexAssociationSelector.h:17
edm::Ref< VertexCollection >
Vertex.h
cand
Definition:
decayParser.h:32
pat::VertexAssociationSelector::Config::dR
float dR
Definition:
VertexAssociationSelector.h:17
pat::VertexAssociationSelector::Config::Config
Config()
Definition:
VertexAssociationSelector.h:15
pat::VertexAssociationSelector::simpleAssociation
pat::VertexAssociation simpleAssociation(const reco::Candidate &c, const reco::VertexRef &vtx) const
Definition:
VertexAssociationSelector.cc:8
pat::VertexAssociationSelector::Config::dZ
float dZ
cuts on Z and transverse distance from the vertex, absolute values or significances
Definition:
VertexAssociationSelector.h:17
pat
Definition:
HeavyIon.h:7
Vertexing.h
HltBtagPostValidation_cff.c
c
Definition:
HltBtagPostValidation_cff.py:31
pat::VertexAssociation
Analysis-level structure for vertex-related information.
Definition:
Vertexing.h:25
reco::Candidate
Definition:
Candidate.h:27
pat::VertexAssociationSelector::VertexAssociationSelector
VertexAssociationSelector()
an empty constructor is sometimes needed
Definition:
VertexAssociationSelector.h:41
extraflags_cff.vtx
vtx
Definition:
extraflags_cff.py:18
Candidate.h
pat::VertexAssociationSelector::conf_
Config conf_
Definition:
VertexAssociationSelector.h:62
Config
Definition:
Config.py:1
reco::Vertex
Definition:
Vertex.h:35
Generated for CMSSW Reference Manual by
1.8.16