00001
00002
00003
00004
00005
00007
00008 #ifndef MCEVENTWEIGHT_H
00009 #define MCEVENTWEIGHT_H 1
00010
00011
00012 #include "ReweightUtils/WeightToolBase.h"
00013
00014
00015 class McEventWeight : public WeightToolBase
00016 {
00018 ASG_TOOL_CLASS2( McEventWeight, IWeightTool, IObservableTool )
00019
00020 public:
00022 McEventWeight( const std::string& name );
00023
00025 virtual ~McEventWeight() {};
00026
00028 virtual double evaluate( const xAOD::IParticle* part ) const override;
00029
00031 virtual double getWeight() const override;
00032
00033
00034 private:
00035
00036 double computeWeight(const xAOD::EventInfo*) const;
00037
00038 unsigned int m_McEventWeightIndex;
00039
00040 std::string m_eventInfoName;
00041 bool m_useTruthEvents = false;
00042
00043 };
00044
00045 #endif //> !MCEVENTWEIGHT_H