CMS 3D CMS Logo

TemplatedSecondaryVertex.h
Go to the documentation of this file.
1 #ifndef RecoBTag_SecondaryVertex_TemplatedSecondaryVertex_h
2 #define RecoBTag_SecondaryVertex_TemplatedSecondaryVertex_h
3 
7 
8 namespace reco {
9 
10  template <class SV>
11  class TemplatedSecondaryVertex : public SV {
12  public:
15  const SV &sv,
16  const GlobalVector &direction,
17  bool withPVError = false)
18  : SV(sv),
19  dist1d_(computeDist1d(pv, sv, direction, withPVError)),
20  dist2d_(computeDist2d(pv, sv, direction, withPVError)),
21  dist3d_(computeDist3d(pv, sv, direction, withPVError)) {}
22 
24  inline Measurement1D dist1d() const { return dist1d_; }
25  inline Measurement1D dist2d() const { return dist2d_; }
26  inline Measurement1D dist3d() const { return dist3d_; }
28  const SV &sv,
29  const GlobalVector &direction,
30  bool withPVError);
32  // const reco::Vertex &pv, const reco::Vertex &sv,
33  const reco::Vertex &pv,
34  const SV &sv,
35  const GlobalVector &direction,
36  bool withPVError);
38  // const reco::Vertex &pv, const reco::Vertex &sv,
39  const reco::Vertex &pv,
40  const SV &sv,
41  const GlobalVector &direction,
42  bool withPVError);
43  operator reco::Vertex();
44 
45  private:
49  };
50 
51 } // namespace reco
52 
53 #endif // RecoBTag_SecondaryVertex_TemplatedSecondaryVertex_h
Measurement1D
Definition: Measurement1D.h:11
reco::TemplatedSecondaryVertex::dist1d_
Measurement1D dist1d_
Definition: TemplatedSecondaryVertex.h:46
reco::TemplatedSecondaryVertex::TemplatedSecondaryVertex
TemplatedSecondaryVertex()
Definition: TemplatedSecondaryVertex.h:13
reco::TemplatedSecondaryVertex::dist2d
Measurement1D dist2d() const
Definition: TemplatedSecondaryVertex.h:25
Measurement1D.h
reco::TemplatedSecondaryVertex::computeDist3d
static Measurement1D computeDist3d(const reco::Vertex &pv, const SV &sv, const GlobalVector &direction, bool withPVError)
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
reco::TemplatedSecondaryVertex::dist3d
Measurement1D dist3d() const
Definition: TemplatedSecondaryVertex.h:26
reco::TemplatedSecondaryVertex::TemplatedSecondaryVertex
TemplatedSecondaryVertex(const reco::Vertex &pv, const SV &sv, const GlobalVector &direction, bool withPVError=false)
Definition: TemplatedSecondaryVertex.h:14
reco::TemplatedSecondaryVertex::computeDist2d
static Measurement1D computeDist2d(const reco::Vertex &pv, const SV &sv, const GlobalVector &direction, bool withPVError)
pfDeepBoostedJetPreprocessParams_cfi.sv
sv
Definition: pfDeepBoostedJetPreprocessParams_cfi.py:226
Vertex.h
math::GlobalVector
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalVector
vector in glovbal coordinate system
Definition: Vector3D.h:28
reco::TemplatedSecondaryVertex::dist2d_
Measurement1D dist2d_
Definition: TemplatedSecondaryVertex.h:47
nanoDQM_cfi.SV
SV
Definition: nanoDQM_cfi.py:528
MetAnalyzer.pv
def pv(vc)
Definition: MetAnalyzer.py:7
reco::TemplatedSecondaryVertex::~TemplatedSecondaryVertex
~TemplatedSecondaryVertex()
Definition: TemplatedSecondaryVertex.h:23
reco::TemplatedSecondaryVertex::computeDist1d
static Measurement1D computeDist1d(const reco::Vertex &pv, const SV &sv, const GlobalVector &direction, bool withPVError)
reco::TemplatedSecondaryVertex::dist1d
Measurement1D dist1d() const
Definition: TemplatedSecondaryVertex.h:24
HltBtagValidation_cff.Vertex
Vertex
Definition: HltBtagValidation_cff.py:32
GlobalVector.h
reco::Vertex
Definition: Vertex.h:35
reco::TemplatedSecondaryVertex
Definition: TemplatedSecondaryVertex.h:11
reco::TemplatedSecondaryVertex::dist3d_
Measurement1D dist3d_
Definition: TemplatedSecondaryVertex.h:48