1 #ifndef TauAnalysis_MCEmbeddingTools_RochesterCorrMuonProducerT_h
2 #define TauAnalysis_MCEmbeddingTools_RochesterCorrMuonProducerT_h
31 #include <TLorentzVector.h>
48 produces<MuonCollection>(
"");
58 std::auto_ptr<MuonCollection> correctedMuonCollection(
new MuonCollection);
64 for (
typename MuonCollection::const_iterator uncorrectedMuon = uncorrectedMuonCollection->begin();
65 uncorrectedMuon != uncorrectedMuonCollection->end(); ++uncorrectedMuon ) {
69 TLorentzVector muonP4(uncorrectedMuon->px(), uncorrectedMuon->py(), uncorrectedMuon->pz(), uncorrectedMuon->energy());
75 T correctedMuon(*uncorrectedMuon);
81 correctedMuonCollection->push_back(correctedMuon);
86 evt.
put(correctedMuonCollection);
T getParameter(std::string const &) const
RochesterCorrMuonProducerT(const edm::ParameterSet &cfg)
void produce(edm::Event &evt, const edm::EventSetup &es)
std::vector< T > MuonCollection
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
void momcor_mc(TLorentzVector &, float, float, int, float &)
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
tuple idx
DEBUGGING if hasattr(process,"trackMonIterativeTracking2012"): print "trackMonIterativeTracking2012 D...
void momcor_data(TLorentzVector &, float, float, int, float &)
~RochesterCorrMuonProducerT()
math::PtEtaPhiMLorentzVector PolarLorentzVector
Lorentz vector.