00001 // 00002 // $Id: LeptonVertexSignificance.h,v 1.3 2008/03/05 14:51:03 fronga Exp $ 00003 // 00004 00005 #ifndef PhysicsTools_PatUtils_LeptonVertexSignificance_h 00006 #define PhysicsTools_PatUtils_LeptonVertexSignificance_h 00007 00019 class TransientTrackBuilder; 00020 00021 namespace reco { 00022 class Track; 00023 } 00024 00025 namespace edm { 00026 class Event; 00027 class EventSetup; 00028 } 00029 00030 namespace pat { 00031 class Electron; 00032 class Muon; 00033 00034 class LeptonVertexSignificance { 00035 public: 00036 LeptonVertexSignificance(); 00037 LeptonVertexSignificance(const edm::EventSetup & iSetup); 00038 ~LeptonVertexSignificance(); 00039 00040 float calculate(const Electron & anElectron, const edm::Event & iEvent); 00041 float calculate(const Muon & aMuon, const edm::Event & iEvent); 00042 00043 private: 00044 float calculate(const reco::Track & track, const edm::Event & iEvent); 00045 TransientTrackBuilder * theTrackBuilder_; 00046 }; 00047 00048 } 00049 00050 #endif 00051