00001 // JetVoronoiMomentsTool.h 00002 00003 #ifndef JETMOMENTTOOLS_JETVORONOIMOMENTSTOOL_H 00004 #define JETMOMENTTOOLS_JETVORONOIMOMENTSTOOL_H 00005 00014 00015 #include <string> 00016 #include "JetRec/JetModifierBase.h" 00017 #include "xAODJet/Jet.h" 00018 00019 namespace JetVoronoiDiagramHelpers{ 00020 struct Diagram; 00021 } 00022 00023 class JetVoronoiMomentsTool : public JetModifierBase { 00024 ASG_TOOL_CLASS(JetVoronoiMomentsTool,IJetModifier) 00025 00026 public: 00027 00028 // Constructor from tool name 00029 JetVoronoiMomentsTool(const std::string& name); 00030 00031 // Inherited methods to modify a jet container 00032 virtual int modify(xAOD::JetContainer& jets) const; 00033 virtual int modifyJet(xAOD::Jet& jet) const; 00034 00035 private: 00036 00037 // parameters 00038 float m_x_min; 00039 float m_x_max; 00040 float m_y_min; 00041 float m_y_max; 00042 00043 int modifyJet(xAOD::Jet& jet, const JetVoronoiDiagramHelpers::Diagram & voro) const; 00044 00045 }; 00046 00047 #endif 00048