JetMETCorrections
InterpolationTables
interface
AbsVisitor.h
Go to the documentation of this file.
1
#ifndef NPSTAT_ABSVISITOR_HH_
2
#define NPSTAT_ABSVISITOR_HH_
3
14
namespace
npstat
{
18
template
<
typename
Input,
typename
Result>
19
struct
AbsVisitor
{
20
inline
virtual
~AbsVisitor
() {}
21
23
virtual
void
clear
() = 0;
24
26
virtual
void
process
(
const
Input
&
value
) = 0;
27
29
virtual
Result
result
() = 0;
30
};
31
37
template
<
typename
Input>
38
class
VisitCounter
:
public
AbsVisitor
<Input, unsigned long> {
39
public
:
40
inline
VisitCounter
() :
counter_
(0UL) {}
41
inline
virtual
~VisitCounter
() {}
42
43
inline
void
clear
() {
counter_
= 0UL; }
44
inline
void
process
(
const
Input
&) { ++
counter_
; }
45
inline
unsigned
long
result
() {
return
counter_
; }
46
47
private
:
48
unsigned
long
counter_
;
49
};
50
}
// namespace npstat
51
52
#endif // ABSVISITOR_HH_
npstat::VisitCounter::process
void process(const Input &)
Definition:
AbsVisitor.h:44
npstat::AbsVisitor
Definition:
AbsVisitor.h:19
npstat::AbsVisitor::~AbsVisitor
virtual ~AbsVisitor()
Definition:
AbsVisitor.h:20
npstat::VisitCounter::~VisitCounter
virtual ~VisitCounter()
Definition:
AbsVisitor.h:41
npstat::VisitCounter::counter_
unsigned long counter_
Definition:
AbsVisitor.h:48
Input
#define Input(cl)
Definition:
vmac.h:190
npstat
Definition:
AbsArrayProjector.h:14
npstat::VisitCounter
Definition:
AbsVisitor.h:38
npstat::AbsVisitor::process
virtual void process(const Input &value)=0
npstat::VisitCounter::VisitCounter
VisitCounter()
Definition:
AbsVisitor.h:40
value
Definition:
value.py:1
npstat::VisitCounter::clear
void clear()
Definition:
AbsVisitor.h:43
npstat::AbsVisitor::clear
virtual void clear()=0
npstat::AbsVisitor::result
virtual Result result()=0
npstat::VisitCounter::result
unsigned long result()
Definition:
AbsVisitor.h:45
Generated for CMSSW Reference Manual by
1.8.16