00001 // IJetModifier.h 00002 00003 // David Adams 00004 // January 2014 00005 00008 00009 #ifndef IJetModifier_H 00010 #define IJetModifier_H 00011 00012 #include "AsgTools/IAsgTool.h" 00013 #include "xAODJet/JetContainer.h" 00014 #include "JetInterface/IJetPseudojetRetriever.h" 00015 00016 class IJetModifier : virtual public asg::IAsgTool { 00017 ASG_TOOL_INTERFACE(IJetModifier) 00018 00019 public: 00020 00022 IJetModifier(); 00023 00025 virtual ~IJetModifier(); 00026 00029 virtual int modify(xAOD::JetContainer& jets) const =0; 00030 00035 virtual int inputContainerNames(std::vector<std::string>& connames); 00036 00038 virtual const IJetPseudojetRetriever* pseudojetRetriever() const; 00039 00041 virtual void setPseudojetRetriever(const IJetPseudojetRetriever* ppjr); 00042 00043 private: 00044 00046 const IJetPseudojetRetriever* m_ppjr; 00047 00048 }; 00049 00050 #endif