ATLAS Offline Software
Loading...
Searching...
No Matches
IClassificationTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
6
7
8#ifndef ICLASSIFICATIONTOOL_H_
9#define ICLASSIFICATIONTOOL_H_
10
11#include <AsgTools/IAsgTool.h>
12#include <xAODBase/IParticle.h>
13
14namespace CP
15{
16
19class IClassificationTool : virtual public asg::IAsgTool
20{
22
23public:
24 virtual ~IClassificationTool() = default;
25
27 virtual StatusCode classify(const xAOD::IParticle &particle,
28 unsigned int &classification) const = 0;
29};
30
31} // namespace CP
32
33#endif // ICLASSIFICATIONTOOL_H_
#define ASG_TOOL_INTERFACE(CLASSNAME)
a tool interface to classify particles into multiple categories by assigning them an unsigned integer
virtual StatusCode classify(const xAOD::IParticle &particle, unsigned int &classification) const =0
classify a particle and pass the classification as an integer
virtual ~IClassificationTool()=default
Base class for the dual-use tool interface classes.
Definition IAsgTool.h:41
Class providing the definition of the 4-vector interface.
Select isolated Photons, Electrons and Muons.