ZDCWaveformLTLinStep Node1 ZDCWaveformLTLinStep + ZDCWaveformLTLinStep() + ZDCWaveformLTLinStep() # doEvaluate() # name() Node2 ZDCWaveformBase # m_tauRise # m_tauFall - m_initialTauRise - m_initialTauFall - m_numAddtlShapePars + ZDCWaveformBase() + ~ZDCWaveformBase() + ZDCWaveformBase() + Duplicate() + evaluate() + evaluateRoot() + evaluateRootNoTF1Par() + operator()() + getTag() + getNameTag() and 12 more... # setAddtlShapeParameters() # setAddtlShapeValues() # setAddtlShapeValues() # doEvaluate() # name() # ZDCWaveformBase() Node2->Node1 Node3 std::map< std::string, unsigned int > + elements Node3->Node2 -m_addtlShapeNames Node4 std::string Node4->Node2 -m_tag Node4->Node3 +keys Node5 std::basic_string< char > Node5->Node4 Node6 std::vector< double > + elements Node6->Node2 #m_addtlShapeValues -m_addtlShapeInitialValues