1 #ifndef __PUSubtractor__
2 #define __PUSubtractor__
5 #include "boost/shared_ptr.hpp"
6 #include "fastjet/PseudoJet.hh"
7 #include "fastjet/ClusterSequence.hh"
8 #include "fastjet/ClusterSequenceArea.hh"
9 #include "fastjet/GhostedAreaSpec.hh"
27 typedef boost::shared_ptr<fastjet::RangeDefinition>
RangeDefPtr;
28 typedef boost::shared_ptr<fastjet::JetDefinition>
JetDefPtr;
35 std::vector<fastjet::PseudoJet>&
towers,
36 std::vector<fastjet::PseudoJet>&
output);
46 virtual double getCone(
double cone,
double eta,
double phi,
double& et,
double& pu);
58 std::vector<edm::Ptr<reco::Candidate> >*
inputs_;
virtual void calculateOrphanInput(std::vector< fastjet::PseudoJet > &orphanInput)
boost::shared_ptr< fastjet::JetDefinition > JetDefPtr
std::vector< double > jetOffset_
virtual double getMeanAtTower(const reco::CandidatePtr &in) const
boost::shared_ptr< fastjet::ClusterSequence > ClusterSequencePtr
int getNwithJets(const reco::CandidatePtr &in) const
std::vector< fastjet::PseudoJet > * fjJets_
std::map< int, double > esigma_
std::map< int, int > geomtowers_
std::vector< fastjet::PseudoJet > fjOriginalInputs_
virtual double getPileUpEnergy(int ijet) const
virtual double getPileUpAtTower(const reco::CandidatePtr &in) const
static std::string const input
int ieta(const reco::CandidatePtr &in) const
virtual void offsetCorrectJets()
std::vector< fastjet::PseudoJet > * fjInputs_
std::map< int, int > ntowersWithJets_
boost::shared_ptr< fastjet::GhostedAreaSpec > ActiveAreaSpecPtr
virtual void subtractPedestal(std::vector< fastjet::PseudoJet > &coll)
edmplugin::PluginFactory< PileUpSubtractor *(const edm::ParameterSet &, edm::ConsumesCollector &&)> PileUpSubtractorFactory
int iphi(const reco::CandidatePtr &in) const
ActiveAreaSpecPtr fjActiveArea_
virtual double getSigmaAtTower(const reco::CandidatePtr &in) const
ClusterSequencePtr fjClusterSeq_
boost::shared_ptr< fastjet::RangeDefinition > RangeDefPtr
virtual void setDefinition(JetDefPtr const &jetDef)
CaloGeometry const * geo_
std::map< int, double > emean_
PileUpSubtractor(const edm::ParameterSet &iConfig, edm::ConsumesCollector &&iC)
virtual void calculatePedestal(std::vector< fastjet::PseudoJet > const &coll)
virtual void setupGeometryMap(edm::Event &iEvent, const edm::EventSetup &iSetup)
virtual double getCone(double cone, double eta, double phi, double &et, double &pu)
virtual void reset(std::vector< edm::Ptr< reco::Candidate > > &input, std::vector< fastjet::PseudoJet > &towers, std::vector< fastjet::PseudoJet > &output)
std::vector< HcalDetId > allgeomid_
JetDefPtr fjJetDefinition_
std::vector< edm::Ptr< reco::Candidate > > * inputs_
int getN(const reco::CandidatePtr &in) const
boost::shared_ptr< fastjet::JetDefinition > JetDefPtr
virtual ~PileUpSubtractor()