44 : ecalTBInfo_(consumes<
PEcalTBInfo>(edm::
InputTag(
"EcalTBInfoLabel",
"SimEcalTBG4Object"))) {
45 produces<EcalTBHodoscopeRawInfo>();
57 double partXhodo = theEcalTBInfo->evXbeam();
58 double partYhodo = theEcalTBInfo->evYbeam();
60 LogDebug(
"EcalTBHodo") <<
"TB frame vertex (X,Y) for hodoscope simulation: \n"
61 <<
"x = " << partXhodo <<
" y = " << partYhodo;
68 product->setPlanes(nPlanes);
70 for (
int iPlane = 0; iPlane < nPlanes; ++iPlane) {
71 float theCoord = (float)partXhodo;
72 if (iPlane == 1 || iPlane == 3)
73 theCoord = (float)partYhodo;
75 std::vector<int> firedChannels =
theTBHodoGeom_->getFiredFibresInPlane(theCoord, iPlane);
76 unsigned int nChannels = firedChannels.size();
80 planeHit.
addHit(firedChannels[
i]);
83 product->setPlane(static_cast<unsigned int>(iPlane), planeHit);
86 LogDebug(
"EcalTBHodo") << (*product);
const edm::EDGetTokenT< PEcalTBInfo > ecalTBInfo_
#define DEFINE_FWK_MODULE(type)
void addHit(unsigned int i)
std::unique_ptr< EcalTBHodoscopeGeometry > theTBHodoGeom_
void produce(edm::Event &event, const edm::EventSetup &eventSetup) override
Produce digis out of raw data.
~FakeTBHodoscopeRawInfoProducer() override=default
Destructor.
FakeTBHodoscopeRawInfoProducer(const edm::ParameterSet &ps)
Constructor.