9 #include <beast/plume/modules/PlumeDigitizerModule.h>
10 #include <beast/plume/dataobjects/PlumeSimHit.h>
11 #include <beast/plume/dataobjects/PlumeHit.h>
13 #include <mdst/dataobjects/MCParticle.h>
14 #include <framework/datastore/StoreArray.h>
15 #include <framework/logging/Logger.h>
16 #include <framework/gearbox/GearDir.h>
24 using namespace plume;
39 setDescription(
"PLUME digitizer module");
46 PlumeDigitizerModule::~PlumeDigitizerModule()
50 void PlumeDigitizerModule::initialize()
52 B2INFO(
"Initializing PlumeDigitizer");
53 m_plumeHits.registerInDataStore();
55 m_plumeSimHits.isRequired();
56 m_particles.isOptional();
64 void PlumeDigitizerModule::beginRun()
69 void PlumeDigitizerModule::event()
73 if (m_plumeSimHits.getEntries() == 0) {
79 for (
int i = 0; i < m_plumeSimHits.getEntries(); i++) {
91 m_plumeHits.appendNew(
PlumeHit(aHit->
getsensorID(), m_nofPixels, m_posmm_u, m_posmm_v, m_posmm_x, m_posmm_y,
100 void PlumeDigitizerModule::setResponseModel()
104 B2INFO(
"PLUME response model is so far empty, which means constant cluster size.");
109 void PlumeDigitizerModule::getXMLData()
117 B2INFO(
"Parameters gotten from PLUME.xml: ");
122 void PlumeDigitizerModule::endRun()
126 void PlumeDigitizerModule::terminate()
ClassPlumeHit - digitization simulated hit for the Microtpc detector.
Class PlumeSimHit - Geant4 simulated hit for the PLUME detector.
float getposIN_x() const
incoming track position x in G4 ref, in mm
float getposOUT_v() const
outcoming track position v in sensor ref, in mm
int getsensorID() const
sensor ID
float getposIN_y() const
incoming track position y in G4 ref, in mm
float getposOUT_u() const
outcoming track position u in sensor ref, in mm
float getposIN_z() const
incoming track position z in G4 ref, in mm
#define REG_MODULE(moduleName)
Register the given module (without 'Module' suffix) with the framework.
Abstract base class for different kinds of events.