ZDCWaveformFermiExpTail Node1 ZDCWaveformFermiExpTail + ZDCWaveformFermiExpTail() + ZDCWaveformFermiExpTail() + setTailParameter() - doEvaluate() - name() Node2 ZDCWaveformFermiExp + ZDCWaveformFermiExp() + ZDCWaveformFermiExp() + ZDCWaveformFermiExp() # doEvaluate() # name() Node2->Node1 Node3 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() Node3->Node2 Node4 std::map< std::string, unsigned int > + elements Node4->Node3 -m_addtlShapeNames Node5 std::string Node5->Node3 -m_tag Node5->Node4 +keys Node6 std::basic_string< char > Node6->Node5 Node7 std::vector< double > + elements Node7->Node3 #m_addtlShapeValues -m_addtlShapeInitialValues