CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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),dist2d_(computeDist2d(pv, sv, direction, withPVError)),dist3d_(computeDist3d(pv, sv, direction, withPVError)) {}
19 
21 
22  inline Measurement1D dist2d() const { return dist2d_; }
23  inline Measurement1D dist3d() const { return dist3d_; }
24 
26 // const reco::Vertex &pv, const reco::Vertex &sv,
27  const reco::Vertex &pv, const SV &sv,
28  const GlobalVector &direction, bool withPVError);
30 // const reco::Vertex &pv, const reco::Vertex &sv,
31  const reco::Vertex &pv, const SV &sv,
32  const GlobalVector &direction, bool withPVError);
33  operator reco::Vertex();
34 
35  private:
38 
39 
40 };
41 
42 } // namespace reco
43 
44 #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)
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalVector
vector in glovbal coordinate system
Definition: Vector3D.h:27