00001
00002 #ifndef IMATCHINGTOOL_H
00003 #define IMATCHINGTOOL_H
00004
00005
00006
00007 #include "AsgTools/IAsgTool.h"
00008
00009 namespace xAOD{
00010 class IParticle;
00011 }
00012
00013
00014
00015 namespace Trig {
00016
00017 class MatchingImplementation;
00018
00019 class IMatchingTool : virtual public asg::IAsgTool {
00020 ASG_TOOL_INTERFACE(IMatchingTool)
00021 public:
00022
00024 virtual bool match(const xAOD::IParticle& recoObject, const std::string& chain, double matchThreshold=0.1) = 0;
00026 virtual bool match(const std::vector<const xAOD::IParticle*>& recoObjects, const std::string& chain, double matchThreshold=0.1) = 0;
00027
00028 protected:
00029 virtual MatchingImplementation* impl() = 0;
00030 };
00031
00032 }
00033
00034 #endif