CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_2_9/src/RecoJets/JetProducers/plugins/SubEventGenJetProducer.h

Go to the documentation of this file.
00001 #ifndef RecoJets_JetProducers_SubEventGenJetProducer_h
00002 #define RecoJets_JetProducers_SubEventGenJetProducer_h
00003 
00004 /* *********************************************************
00005   \class SubEventGenJetProducer
00006 
00007   \brief Jet producer to produce jets from 
00008   \causally independent sub-events inside one event 
00009   \(for heavy ions or pile up)
00010 
00011  ************************************************************/
00012 
00013 #include <vector>
00014 #include "RecoJets/JetProducers/plugins/VirtualJetProducer.h"
00015 #include "DataFormats/JetReco/interface/GenJetCollection.h"
00016 
00017 namespace cms
00018 {
00019   class SubEventGenJetProducer : public VirtualJetProducer
00020   {
00021   public:
00022 
00023     SubEventGenJetProducer(const edm::ParameterSet& ps);
00024     virtual ~SubEventGenJetProducer() {}
00025     void produce(edm::Event&, const edm::EventSetup&);
00026     void runAlgorithm(edm::Event&, const edm::EventSetup&);
00027     
00028   protected:
00029    std::vector<std::vector<fastjet::PseudoJet> > subInputs_;
00030    std::vector<reco::GenJet>* subJets_;
00031    std::vector<int> hydroTag_;
00032    std::vector<int> nSubParticles_;
00033    bool ignoreHydro_;
00034 
00035   protected:
00036 
00037     // overridden inputTowers method. Resets fjCompoundJets_ and 
00038     // calls VirtualJetProducer::inputTowers
00039     virtual void inputTowers();
00040   };
00041 
00042 
00043 
00044   
00045 }
00046 
00047 
00048 #endif