00001 #ifndef JetVertexMain_H 00002 #define JetVertexMain_H 00003 00004 #include "DataFormats/JetReco/interface/CaloJet.h" 00005 #include "DataFormats/TrackReco/interface/Track.h" 00006 #include "DataFormats/TrackReco/interface/TrackFwd.h" 00007 #include "MagneticField/Engine/interface/MagneticField.h" 00008 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00009 #include "DataFormats/Common/interface/Handle.h" 00010 #include <cmath> 00011 #include <string> 00012 00013 class JetVertexMain { 00014 00015 public: 00016 00017 JetVertexMain(const edm::ParameterSet & parameters ); 00018 00019 ~JetVertexMain(){}; 00020 00021 00022 std::pair <double, bool> Main (const reco::CaloJet& jet, edm::Handle<reco::TrackCollection> tracks, 00023 double SIGNAL_V_Z, double SIGNAL_V_Z_Error ); 00024 00025 private: 00026 double DeltaR(double eta1, double eta2, double phi1, double phi2); 00027 double Track_Pt(double px, double py); 00028 00029 //algorithm parameters 00030 double cutSigmaZ; 00031 double cutDeltaZ; 00032 double threshold; 00033 double cone_size; 00034 int Algo; 00035 std::string cutType; 00036 bool discriminator; 00037 00038 }; 00039 00040 #endif 00041