ATLAS Offline Software
Loading...
Searching...
No Matches
IMatchingTool.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef IMATCHINGTOOL_H
8#define IMATCHINGTOOL_H
9
10
11// Framework include(s):
12#include "AsgTools/IAsgTool.h"
13
14namespace xAOD{
15 class IParticle;
16}
17
18
19
20namespace Trig {
21
23
24class IMatchingTool : virtual public asg::IAsgTool {
26public:
27
29 virtual bool match(const xAOD::IParticle& recoObject, const std::string& chain, double matchThreshold=0.1, bool rerun=false) const = 0;
31 virtual bool match(const std::vector<const xAOD::IParticle*>& recoObjects, const std::string& chain, double matchThreshold=0.1, bool rerun=false) const = 0;
32
33protected:
34 virtual const MatchingImplementation* impl() const = 0;
35};
36
37}
38
39#endif
#define ASG_TOOL_INTERFACE(CLASSNAME)
virtual const MatchingImplementation * impl() const =0
virtual bool match(const xAOD::IParticle &recoObject, const std::string &chain, double matchThreshold=0.1, bool rerun=false) const =0
single object trigger matching. matchThreshold is typically the deltaR requirement to obtain positive...
virtual bool match(const std::vector< const xAOD::IParticle * > &recoObjects, const std::string &chain, double matchThreshold=0.1, bool rerun=false) const =0
multi-object trigger matching
Base class for the dual-use tool interface classes.
Definition IAsgTool.h:41
Class providing the definition of the 4-vector interface.
The common trigger namespace for trigger analysis tools.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.