MM_ElectronicsResponseSimulation::DataCache Node1 MM_ElectronicsResponseSimulation ::DataCache Node2 std::unique_ptr< VMM _Shaper > + operator->() Node2->Node1 +vmmShaper Node3 VMM_Shaper - m_peakTime - m_lowerTimeWindow - m_upperTimeWindow - m_timeStep - m_inverseTimeStep - m_preCalculationVMMShaper - m_a - m_pole0 - m_re_pole1 - m_im_pole1 and 7 more... + VMM_Shaper() + ~VMM_Shaper() + initialize() + vmmPeakResponse() + vmmThresholdResponse() + hasChargeAboveThreshold() - vmmResponse() - findPeak() - aboveThresholdSimple() Node3->Node2 +ptr Node4 std::vector< int > + elements Node4->Node1 +nStripElectronics Node5 std::vector< float > + elements Node5->Node1 +qStripElectronics +tStripElectronicsAbThr