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),dist1d_(computeDist1d(pv, sv, direction, withPVError)),dist2d_(computeDist2d(pv, sv, direction, withPVError)),dist3d_(computeDist3d(pv, sv, direction, withPVError)) {}
19 
21  inline Measurement1D dist1d() const { return dist1d_; }
22  inline Measurement1D dist2d() const { return dist2d_; }
23  inline Measurement1D dist3d() const { return dist3d_; }
25  const reco::Vertex &pv, const SV &sv,
26  const GlobalVector &direction, bool withPVError);
28 // const reco::Vertex &pv, const reco::Vertex &sv,
29  const reco::Vertex &pv, const SV &sv,
30  const GlobalVector &direction, bool withPVError);
32 // const reco::Vertex &pv, const reco::Vertex &sv,
33  const reco::Vertex &pv, const SV &sv,
34  const GlobalVector &direction, bool withPVError);
35  operator reco::Vertex();
36 
37  private:
41 
42 
43 };
44 
45 } // namespace reco
46 
47 #endif // RecoBTag_SecondaryVertex_TemplatedSecondaryVertex_h
static Measurement1D computeDist3d(const reco::Vertex &pv, const SV &sv, const GlobalVector &direction, bool withPVError)
TemplatedSecondaryVertex(const reco::Vertex &pv, const SV &sv, const GlobalVector &direction, bool withPVError=false)
static Measurement1D computeDist2d(const reco::Vertex &pv, const SV &sv, const GlobalVector &direction, bool withPVError)
static Measurement1D computeDist1d(const reco::Vertex &pv, const SV &sv, const GlobalVector &direction, bool withPVError)
def pv(vc)
Definition: MetAnalyzer.py:7
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalVector
vector in glovbal coordinate system
Definition: Vector3D.h:27
fixed size matrix