5#ifndef MM_DIGITIZATION_MM_STRIPRESPONSE_H
6#define MM_DIGITIZATION_MM_STRIPRESPONSE_H
24 MM_StripResponse(std::vector<std::unique_ptr<MM_IonizationCluster>>& IonizationClusters,
float timeResolution,
float stripPitch,
25 int stripID,
int minstripID,
int maxstripID);
44 std::vector<std::unique_ptr<MM_Electron>>&
getElectrons();
std::map< int, float > m_stripMaxCharge
std::vector< std::unique_ptr< MM_Electron > > & getElectrons()
std::vector< int > m_v_strip
const std::map< int, float > & getTotalCharge() const
const std::vector< std::vector< float > > & getTimeThresholdVec() const
void timeOrderElectrons()
std::map< int, int > m_stripTimeMaxCharge
std::vector< std::vector< float > > m_v_stripTimeThreshold
void calculateSummaries(float chargeThreshold)
const std::map< int, int > & getTimeThreshold() const
const std::vector< float > & getMaxChargeVec() const
std::vector< float > m_v_stripTimeMaxCharge
int getNElectrons() const
std::map< int, std::map< int, float > > m_stripCharges
const std::vector< float > & getTimeMaxChargeVec() const
const std::map< int, int > & getTimeMaxCharge() const
void calculateTimeSeries(float thetaD, int gasgap)
std::vector< float > m_v_stripMaxCharge
void simulateCrossTalk(float crossTalk1, float crossTalk2)
const std::vector< std::vector< float > > & getTotalChargeVec() const
std::map< int, int > m_stripTimeThreshold
float totalCharge() const
const std::map< int, float > & getMaxCharge() const
MM_StripResponse()=default
std::vector< std::vector< float > > m_v_stripTotalCharge
std::vector< std::unique_ptr< MM_Electron > > m_Electrons
std::map< int, float > m_stripTotalCharge
const std::vector< int > & getStripVec() const