1 #ifndef RecoJets_JetProducers_plugins_VirtualJetProducer_h 2 #define RecoJets_JetProducers_plugins_VirtualJetProducer_h 24 #include "fastjet/JetDefinition.hh" 25 #include "fastjet/ClusterSequence.hh" 26 #include "fastjet/ClusterSequenceArea.hh" 27 #include "fastjet/PseudoJet.hh" 28 #include "fastjet/GhostedAreaSpec.hh" 32 #include <boost/shared_ptr.hpp> 51 static const char *
const names[];
61 return fTag == JetType::PFJet;
64 return fTag == JetType::GenJet;
67 return fTag == JetType::TrackJet;
70 return fTag == JetType::PFClusterJet;
73 return fTag == JetType::BasicJet;
88 typedef boost::shared_ptr<fastjet::JetDefinition::Plugin>
PluginPtr;
89 typedef boost::shared_ptr<fastjet::JetDefinition>
JetDefPtr;
92 typedef boost::shared_ptr<fastjet::RangeDefinition>
RangeDefPtr;
115 virtual void inputTowers();
121 virtual void copyConstituents(
const std::vector<fastjet::PseudoJet>&fjConstituents,
135 void offsetCorrectJets(std::vector<fastjet::PseudoJet> & orphanInput);
146 template<
typename T >
149 template<
typename T>
152 template<
typename T>
157 virtual std::vector<reco::CandidatePtr>
158 getConstituents(
const std::vector<fastjet::PseudoJet>&fjConstituents);
197 std::vector<edm::Ptr<reco::Candidate> >
inputs_;
boost::shared_ptr< fastjet::AreaDefinition > AreaDefinitionPtr
std::string jetType() const
reco::Particle::Point vertex_
virtual void addHTTTopJetTagInfoCollection(edm::Event &iEvent, const edm::EventSetup &iSetup, edm::OrphanHandle< reco::BasicJetCollection > &oh)
static const HistoName names[]
edm::EDGetTokenT< reco::CandidateView > input_candidateview_token_
std::vector< fastjet::PseudoJet > fjJets_
edm::EDGetTokenT< std::vector< edm::FwdPtr< pat::PackedCandidate > > > input_packedcandidatefwdptr_token_
Base class for all types of Jets.
boost::shared_ptr< fastjet::JetDefinition::Plugin > PluginPtr
std::string puSubtractorName_
std::vector< double > puCenters_
bool makeGenJet(const JetType::Type &fTag)
bool makeBasicJet(const JetType::Type &fTag)
static std::string const input
boost::shared_ptr< fastjet::RangeDefinition > RangeDefPtr
bool makeTrackJet(const JetType::Type &fTag)
bool makePFJet(const JetType::Type &fTag)
std::vector< fastjet::PseudoJet > fjInputs_
std::string jetCollInstanceName_
boost::shared_ptr< PileUpSubtractor > subtractor_
std::vector< edm::Ptr< reco::Candidate > > inputs_
ClusterSequencePtr fjClusterSeq_
math::XYZPoint Point
point in the space
std::string jetAlgorithm_
boost::shared_ptr< fastjet::JetDefinition > JetDefPtr
bool useDeterministicSeed_
std::auto_ptr< AnomalousTower > anomalousTowerDef_
ActiveAreaSpecPtr fjActiveArea_
bool makePFClusterJet(const JetType::Type &fTag)
bool fromHTTTopJetProducer_
edm::EDGetTokenT< reco::VertexCollection > input_vertex_token_
edm::EDGetTokenT< std::vector< edm::FwdPtr< reco::PFCandidate > > > input_candidatefwdptr_token_
boost::shared_ptr< fastjet::GhostedAreaSpec > ActiveAreaSpecPtr
AreaDefinitionPtr fjAreaDefinition_
bool makeCaloJet(const JetType::Type &fTag)
bool doFastJetNonUniform_
boost::shared_ptr< fastjet::ClusterSequence > ClusterSequencePtr
JetDefPtr fjJetDefinition_