8 #include "boost/shared_ptr.hpp"
14 boost::shared_ptr<Wrapper<std::vector<PCaloHit> >
const> shPtr = edm::getProductByTag<std::vector<PCaloHit> >(ep, tag_);
17 LogDebug(
"MixingModule") <<shPtr->product()->size()<<
" pileup objects added, eventNr "<<eventNr;
18 crFrame_->setPileupPtr(shPtr);
19 crFrame_->addPileups(bcr,
const_cast< std::vector<PCaloHit> *
>(shPtr->product()),eventNr);
26 boost::shared_ptr<Wrapper<std::vector<PSimHit> >
const> shPtr = getProductByTag<std::vector<PSimHit> >(ep, tag_);
28 LogDebug(
"MixingModule") <<shPtr->product()->size()<<
" pileup objects added, eventNr "<<eventNr;
29 crFrame_->setPileupPtr(shPtr);
30 crFrame_->addPileups(bcr,
const_cast< std::vector<PSimHit> *
> (shPtr->product()),eventNr);
37 boost::shared_ptr<Wrapper<std::vector<SimTrack> >
const> shPtr = getProductByTag<std::vector<SimTrack> >(ep, tag_);
40 LogDebug(
"MixingModule") <<shPtr->product()->size()<<
" pileup objects added, eventNr "<<eventNr;
41 crFrame_->setPileupPtr(shPtr);
42 crFrame_->addPileups(bcr,
const_cast< std::vector<SimTrack> *
> (shPtr->product()),eventNr,vertexoffset);
50 boost::shared_ptr<Wrapper<std::vector<SimVertex> >
const> shPtr = getProductByTag<std::vector<SimVertex> >(ep, tag_);
53 LogDebug(
"MixingModule") <<shPtr->product()->size()<<
" pileup objects added, eventNr "<<eventNr;
54 vertexoffset+=shPtr->product()->size();
55 crFrame_->setPileupPtr(shPtr);
56 crFrame_->addPileups(bcr,
const_cast< std::vector<SimVertex> *
> (shPtr->product()),eventNr);
63 boost::shared_ptr<Wrapper<HepMCProduct>
const> shPtr = getProductByTag<HepMCProduct>(ep, tag_);
65 LogDebug(
"MixingModule") <<
"HepMC pileup objects added, eventNr "<<eventNr <<
" Tag " << tag_ << std::endl;
66 crFrame_->setPileupPtr(shPtr);
67 crFrame_->addPileups(bcr,const_cast<HepMCProduct*> (shPtr->product()),eventNr);
75 bool got = e.getByLabel(tag_,result_t);
77 LogDebug(
"MixingModule") <<
" adding HepMCProduct from signal event with "<<tag_;
78 crFrame_->addSignals(result_t.product(),e.id());
80 LogInfo(
"MixingModule") <<
"!!!!!!! Did not get any signal data for HepMCProduct with "<<tag_;
90 got = e.getByLabel(tag_,result_t);
91 t = InputTag(tag_.label(),tag_.instance());
94 LogInfo(
"MixingModule") <<
" Will create a CrossingFrame for HepMCProduct with "
95 <<
" with InputTag= "<< t.encode();
virtual void addPileups(const int bcr, const EventPrincipal &ep, unsigned int eventNr, int vertexoffset)
virtual void addSignals(const edm::Event &e)
virtual bool checkSignal(const edm::Event &e)