MomentumFilter< T > Node1 MomentumFilter< T > + MomentumFilter() + MomentumFilter() + ~MomentumFilter() + operator=() + isAccepted() + pxMin() + pxMax() + pyMin() + pyMax() + pzMin() and 30 more... Node2 IFilter< T > + IFilter() + IFilter() + ~IFilter() + operator=() + isAccepted() + operator()() Node2->Node1 Node3 IFilterCuts + IFilterCuts() + IFilterCuts() + ~IFilterCuts() + operator=() + setFilter() Node3->Node2 Node4 FilterRange # m_range # m_precision + FilterRange() + FilterRange() + FilterRange() + ~FilterRange() + operator=() + precision() + lower() + upper() + getMin() + getMax() and 10 more... # addRange() Node4->Node1 #m_massRange #m_pzRange #m_pyRange #m_etaRange #m_pxRange #m_ptRange #m_eneRange Node5 PhiFilterRange + PhiFilterRange() + PhiFilterRange() + PhiFilterRange() + ~PhiFilterRange() + operator=() + lower() + upper() + getMin() + getMax() + isInRange() and 7 more... # addRange() Node4->Node5 Node5->Node1 #m_phiRange