CP::ILinearFakeBkgTool Node1 CP::ILinearFakeBkgTool + getEventWeight() Node7 CP::BaseLinearFakeBkgTool # m_yields # m_cachedWeights # m_histogramYieldsRange + BaseLinearFakeBkgTool() + ~BaseLinearFakeBkgTool() + initialize() + getEventWeight() + getTotalYield() + register1DHistogram() + register2DHistogram() + register3DHistogram() + assignYieldRange() + saveProgress() # incrementTotalYield() # getEventWeightCustom() - getEventWeightCommon() - mergeSubjobs() Node1->Node7 Node2 CP::IFakeBkgTool + addEvent() + addEvent() + getTotalYield() + register1DHistogram() + register2DHistogram() + register3DHistogram() + saveProgress() + getSystDescriptor() + defaultSelection() + defaultProcess() Node2->Node1 Node3 CP::ISystematicsTool + isAffectedBySystematic() + applySystematicVariation() Node3->Node2 Node4 CP::IReentrantSystematicsTool + affectingSystematics() + recommendedSystematics() Node4->Node3 Node5 asg::IAsgTool + ~IAsgTool() + print() Node5->Node4 Node8 CP::ApplyE2YFakeRate - m_e2y_option + ApplyE2YFakeRate() + ~ApplyE2YFakeRate() + initialize() # addEventCustom() # getEventWeightCustom() # clientForDB() Node7->Node8 Node9 CP::ApplyFakeFactor + ApplyFakeFactor() + ~ApplyFakeFactor() + initialize() # addEventCustom() # getEventWeightCustom() # clientForDB() - eventSatisfiesCriteria() Node7->Node9 Node10 CP::AsymptMatrixTool # m_components # m_derivatives + AsymptMatrixTool() + ~AsymptMatrixTool() + initialize() # addEventCustom() # getEventWeightCustom() # clientForDB() Node7->Node10