00001 #ifndef METAlgorithms_SignPFSpecificAlgo_h 00002 #define METAlgorithms_SignPFSpecificAlgo_h 00003 00004 // Organizes information specific to the Jet-based significance for Particle Flow MET 00005 // Author: A. Khukhunaishvili (Cornell), L. Gibbons (Cornell) 00006 // First Implementation: 11/11/10 00007 00008 #include "RecoMET/METAlgorithms/interface/significanceAlgo.h" 00009 #include "RecoMET/METAlgorithms/interface/SignAlgoResolutions.h" 00010 #include "DataFormats/JetReco/interface/PFJet.h" 00011 #include "DataFormats/ParticleFlowCandidate/interface/PFCandidate.h" 00012 #include "TMatrixD.h" 00013 00014 00015 00016 namespace metsig{ 00017 class SignPFSpecificAlgo{ 00018 00019 public: 00020 SignPFSpecificAlgo(); 00021 ~SignPFSpecificAlgo(); 00022 00023 00024 void setResolutions( metsig::SignAlgoResolutions *resolutions); 00025 void addPFJets(edm::Handle<edm::View<reco::PFJet> > PFJets); 00026 void addPFCandidate(reco::PFCandidatePtr pf); 00027 void useOriginalPtrs(const edm::ProductID& productID); 00028 TMatrixD getSignifMatrix() const {return algo_.getSignifMatrix();} 00029 00030 00031 private: 00032 metsig::SignAlgoResolutions *resolutions_; 00033 std::set<reco::CandidatePtr> clusteredParticlePtrs_; 00034 metsig::significanceAlgo algo_; 00035 }; 00036 } 00037 00038 #endif