ATLAS Offline Software
PhysicsAnalysis
AnalysisCommon
AnalysisAssociation
AnalysisAssociation
IAssocFilter.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// IAssocFilter.h
7
// Header file for class IAssocFilter
8
// Author: S.Binet<binet@cern.ch>
10
#ifndef ANALYSISASSOCIATION_IASSOCFILTER_H
11
#define ANALYSISASSOCIATION_IASSOCFILTER_H
12
21
// STL includes
22
23
24
// Gaudi includes
25
26
// AnalysisUtils includes
27
#include "
AnalysisUtils/IFilterCuts.h
"
28
29
// Forward declaration
30
31
template
<
typename
OBJ,
typename
ASSO>
32
class
IAssocFilter
:
public
IFilterCuts
33
{
34
36
// Public methods:
38
public
:
39
42
IAssocFilter
();
43
46
IAssocFilter
(
const
IAssocFilter<OBJ,ASSO>
& rhs );
47
48
// Constructor with parameters:
49
52
virtual
~IAssocFilter
();
53
56
IAssocFilter
&
operator=
(
const
IAssocFilter<OBJ,ASSO>
& rhs );
57
59
// Const methods:
61
66
virtual
bool
isAccepted
(
const
OBJ *
object
,
67
const
ASSO * associated )
const
=0;
68
70
// Non-const methods:
72
76
virtual
void
reset
()=0;
77
79
// Protected data:
81
protected
:
82
83
};
84
86
// Inline methods:
88
template
<
typename
OBJ,
typename
ASSO>
89
IAssocFilter<OBJ, ASSO>::IAssocFilter
() :
90
IFilterCuts
()
91
{}
92
93
template
<
typename
OBJ,
typename
ASSO>
94
IAssocFilter<OBJ, ASSO>::IAssocFilter
(
const
IAssocFilter<OBJ, ASSO>
& rhs ) :
95
IFilterCuts
(rhs)
96
{}
97
98
template
<
typename
OBJ,
typename
ASSO>
99
IAssocFilter<OBJ, ASSO>::~IAssocFilter
()
100
{}
101
102
template
<
typename
OBJ,
typename
ASSO>
103
IAssocFilter<OBJ, ASSO>
&
104
IAssocFilter<OBJ, ASSO>::operator=
(
const
IAssocFilter<OBJ, ASSO>
& rhs )
105
{
106
if
(
this
!= &rhs ) {
107
IFilterCuts::operator=
(rhs);
108
}
109
return
*
this
;
110
}
111
112
#endif //> ANALYSISASSOCIATION_IASSOCFILTER_H
IAssocFilter::isAccepted
virtual bool isAccepted(const OBJ *object, const ASSO *associated) const =0
Main filter method.
IAssocFilter::reset
virtual void reset()=0
Reset the range cuts for the internal variables (px,py,...) After calling this method,...
IAssocFilter
Definition:
IAssocFilter.h:33
IAssocFilter::IAssocFilter
IAssocFilter()
Default constructor:
Definition:
IAssocFilter.h:89
IAssocFilter::~IAssocFilter
virtual ~IAssocFilter()
Destructor:
Definition:
IAssocFilter.h:99
IFilterCuts.h
IAssocFilter::IAssocFilter
IAssocFilter(const IAssocFilter< OBJ, ASSO > &rhs)
Copy constructor:
Definition:
IAssocFilter.h:94
IFilterCuts::operator=
IFilterCuts & operator=(const IFilterCuts &rhs)
Assignment operator:
Definition:
IFilterCuts.h:78
IAssocFilter::operator=
IAssocFilter & operator=(const IAssocFilter< OBJ, ASSO > &rhs)
Assignment operator:
Definition:
IAssocFilter.h:104
IFilterCuts
IFilterCuts is a class which is used internally by the filters to copy their cut properties one to ...
Definition:
IFilterCuts.h:21
Generated on Fri Jul 5 2024 21:17:11 for ATLAS Offline Software by
1.8.18