File indexing completed on 2024-04-06 12:24:04
0001
0002
0003
0004 #ifndef PhysicsTools_PatUtils_LeptonVertexSignificance_h
0005 #define PhysicsTools_PatUtils_LeptonVertexSignificance_h
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #include "DataFormats/VertexReco/interface/Vertex.h"
0018 #include "DataFormats/VertexReco/interface/VertexFwd.h"
0019 #include "FWCore/Utilities/interface/InputTag.h"
0020
0021 class TransientTrackBuilder;
0022
0023 namespace reco {
0024 class Track;
0025 }
0026
0027 namespace pat {
0028 class Electron;
0029 class Muon;
0030
0031 class LeptonVertexSignificance {
0032 public:
0033 LeptonVertexSignificance() = default;
0034 ~LeptonVertexSignificance() = default;
0035
0036
0037 static edm::InputTag vertexCollectionTag();
0038
0039
0040 float calculate(const Electron& anElectron,
0041 const reco::VertexCollection& vertices,
0042 const TransientTrackBuilder& builder);
0043 float calculate(const Muon& aMuon, const reco::VertexCollection& vertices, const TransientTrackBuilder& builder);
0044
0045 private:
0046 float calculate(const reco::Track& track,
0047 const reco::VertexCollection& vertices,
0048 const TransientTrackBuilder& builder);
0049 };
0050
0051 }
0052
0053 #endif