33 #include "CLHEP/Random/RandFlat.h"
36 class HepRandomEngine;
41 produces<RPCDigiCollection>();
42 produces<RPCDigitizerSimLinks>(
"RPCDigiSimLink");
49 if ( ! rng.isAvailable()) {
51 <<
"RPCDigitizer requires the RandomNumberGeneratorService\n"
52 "which is not present in the configuration file. You must add the service\n"
53 "in the configuration file or remove the modules that require it.";
91 LogDebug (
"RPCDigiProducer")<<
"[RPCDigiProducer::produce] got the CLHEP::HepRandomEngine engine from the edm::Event.streamID() and edm::Service<edm::RandomNumberGenerator>";
92 LogDebug (
"RPCDigiProducer")<<
"[RPCDigiProducer::produce] test the CLHEP::HepRandomEngine by firing once RandFlat ---- this must be the first time in SimMuon/RPCDigitizer";
93 LogDebug (
"RPCDigiProducer")<<
"[RPCDigiProducer::produce] to activate the test go in RPCDigiProducer.cc and uncomment the line below";
103 std::auto_ptr<MixCollection<PSimHit> >
115 e.
put(RPCDigitSimLink,
"RPCDigiSimLink");
T getParameter(std::string const &) const
std::string collection_for_XF
bool getByToken(EDGetToken token, Handle< PROD > &result) const
RPCDigiProducer(const edm::ParameterSet &ps)
void setGeometry(const RPCGeometry *geom)
sets geometry
void setGeometry(const RPCGeometry *geom)
sets geometry
RPCSimSetUp * theRPCSimSetUp
void setRPCSimSetUp(RPCSimSetUp *simsetup)
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
MuonDigiCollection< RPCDetId, RPCDigi > RPCDigiCollection
void doAction(MixCollection< PSimHit > &simHits, RPCDigiCollection &rpcDigis, RPCDigiSimLinks &rpcDigiSimLink, CLHEP::HepRandomEngine *)
virtual ~RPCDigiProducer()
T const * product() const
RPCDigitizer::RPCDigiSimLinks RPCDigitizerSimLinks
virtual CLHEP::HepRandomEngine & getEngine(StreamID const &) const =0
Use this engine in event methods.
virtual void produce(edm::Event &e, const edm::EventSetup &c) override
StreamID streamID() const
virtual void beginRun(const edm::Run &, const edm::EventSetup &) override
RPCDigitizer * theDigitizer
void setRPCSetUp(const std::vector< RPCStripNoises::NoiseItem > &vnoise, const std::vector< float > &vcls)
edm::EDGetTokenT< CrossingFrame< PSimHit > > crossingFrameToken