ATLAS Offline Software
Loading...
Searching...
No Matches
IAsgSelectionTool.h
Go to the documentation of this file.
1
2
3/*
4 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
5*/
6
7// IAsgSelectionTool.h
8// Header file for class IAsgSelectionTool
9// Author: Karsten Koeneke <karsten.koeneke@cern.ch>
11#ifndef PATCORE_IASGSELECTIONTOOL_H
12#define PATCORE_IASGSELECTIONTOOL_H 1
13
14// FrameWork includes
15#include "AsgTools/IAsgTool.h"
16
17// Include the return object
18#include "PATCore/AcceptInfo.h"
19#include "PATCore/AcceptData.h"
20
21// Forward declaration
22namespace xAOD{
23 class IParticle;
24}
25
27 : virtual public asg::IAsgTool
28{
31
32
33
34 // Public methods:
36 public:
37
39 // Const methods:
41
43 virtual const asg::AcceptInfo& getAcceptInfo( ) const = 0;
44
45
47 virtual asg::AcceptData accept( const xAOD::IParticle* /*part*/ ) const = 0;
48
49
50};
51
52#endif //> !PATCORE_IASGSELECTIONTOOL_H
#define ASG_TOOL_INTERFACE(CLASSNAME)
virtual asg::AcceptData accept(const xAOD::IParticle *) const =0
The main accept method: the actual cuts are applied here.
virtual const asg::AcceptInfo & getAcceptInfo() const =0
Declare the interface ID for this pure-virtual interface class to the Athena framework.
Base class for the dual-use tool interface classes.
Definition IAsgTool.h:41
Class providing the definition of the 4-vector interface.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.