12 #include <boost/regex.hpp>
73 nRun(0), nAll(0), nGood(0) {
93 edm::LogInfo(
"HcalIsoTrack") <<
"Parameters read from config file \n"
94 <<
"\t minP of muon " << pMuonMin_
96 <<
" " << labelBS_ <<
" " << labelVtx_
97 <<
" " << labelEB_ <<
" " << labelEE_
102 produces<reco::BeamSpot>(labelBS_.
encode());
103 produces<reco::VertexCollection>(labelVtx_.
encode());
104 produces<EcalRecHitCollection>(labelEB_.
encode());
105 produces<EcalRecHitCollection>(labelEE_.
encode());
106 produces<HBHERecHitCollection>(labelHBHE_.
encode());
107 produces<reco::MuonCollection>(labelMuon_.encode());
116 LogDebug(
"HcalHBHEMuon") <<
"Run " << iEvent.
id().
run() <<
" Event "
117 << iEvent.
id().
event() <<
" Luminosity "
124 if (!triggerResults.
isValid()) {
148 if (!barrelRecHitsHandle.
isValid()) {
156 if (!endcapRecHitsHandle.
isValid()) {
178 LogDebug(
"HcalHBHEMuon") <<
"Has obtained all the collections";
186 *outputTriggerResults = trigres;
193 for (reco::VertexCollection::const_iterator vtr=vtx.begin(); vtr!=vtx.end(); ++vtr)
194 outputVColl->push_back(*vtr);
198 outputEBColl->push_back(*ehit);
202 outputEEColl->push_back(*ehit);
205 for (std::vector<HBHERecHit>::const_iterator hhit=hbhecoll.
begin(); hhit!=hbhecoll.
end(); ++hhit)
206 outputHBHEColl->push_back(*hhit);
210 for (reco::MuonCollection::const_iterator
muon=muons.begin();
muon!=muons.end(); ++
muon)
211 outputMColl->push_back(*
muon);
227 <<
nAll <<
" events from " <<
nRun <<
" runs";
241 bool ok = (muons.size() > 0) ? (muons[0].
p() >
pMuonMin_) :
false;
T getParameter(std::string const &) const
EventNumber_t event() const
bool select(const reco::MuonCollection &)
AlCaHBHEMuonProducer(const edm::ParameterSet &)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
#define DEFINE_FWK_MODULE(type)
virtual void produce(edm::Event &, const edm::EventSetup &)
edm::EDGetTokenT< EcalRecHitCollection > tok_EE_
std::vector< T >::const_iterator const_iterator
int bunchCrossing() const
edm::InputTag labelTriggerResults_
edm::LuminosityBlockNumber_t luminosityBlock() const
std::vector< Vertex > VertexCollection
collection of Vertex objects
edm::EDGetTokenT< edm::TriggerResults > tok_trigRes_
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
std::vector< Muon > MuonCollection
collection of Muon objects
double dydz() const
dydz slope
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
edm::EDGetTokenT< HBHERecHitCollection > tok_HBHE_
double BeamWidthX() const
beam width X
static std::string const triggerResults
double dxdz() const
dxdz slope
const_iterator end() const
T const * product() const
double sigmaZ() const
sigma z
edm::EDGetTokenT< EcalRecHitCollection > tok_EB_
edm::EDGetTokenT< reco::BeamSpot > tok_BS_
double covariance(int i, int j) const
(i,j)-th element of error matrix
edm::EDGetTokenT< reco::VertexCollection > tok_Vtx_
const Point & position() const
position
edm::EDGetTokenT< reco::MuonCollection > tok_Muon_
virtual void beginRun(edm::Run const &, edm::EventSetup const &)
const_iterator begin() const
BeamType type() const
return beam type
virtual void endRun(edm::Run const &, edm::EventSetup const &)