thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.3.0
Analysis
LWH
AIHistogram1D.h
1
// -*- C++ -*-
2
//
3
// AIHistogram1D.h is a part of ThePEG - Toolkit for HEP Event Generation
4
// Copyright (C) 1999-2019 Leif Lonnblad
5
//
6
// ThePEG is licenced under version 3 of the GPL, see COPYING for details.
7
// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8
//
9
#ifndef LWH_AIHistorgram1D_H
10
#define LWH_AIHistorgram1D_H
11
12
13
16
namespace
AIDA {
17
18
class
IAnnotation;
19
20
class
IBaseHistogram {
21
22
public
:
23
24
virtual
~IBaseHistogram() {}
25
26
virtual
std::string title()
const
= 0;
27
virtual
bool
setTitle(
const
std::string & title) = 0;
28
virtual
int
dimension()
const
= 0;
29
virtual
bool
reset() = 0;
30
virtual
int
entries()
const
= 0;
31
32
};
33
34
class
IHistogram :
virtual
public
IBaseHistogram {
35
36
public
:
37
38
virtual
~IHistogram() {}
39
40
virtual
int
allEntries()
const
= 0;
41
virtual
int
extraEntries()
const
= 0;
42
virtual
double
equivalentBinEntries()
const
= 0;
43
virtual
double
sumBinHeights()
const
= 0;
44
virtual
double
sumAllBinHeights()
const
= 0;
45
virtual
double
sumExtraBinHeights()
const
= 0;
46
virtual
double
minBinHeight()
const
= 0;
47
virtual
double
maxBinHeight()
const
= 0;
48
49
};
50
51
class
IAxis;
52
53
class
IHistogram1D:
virtual
public
IHistogram {
54
55
public
:
56
57
virtual
~IHistogram1D() {}
58
59
virtual
bool
fill(
double
x,
double
weight = 1.) = 0;
60
virtual
double
binMean(
int
index)
const
= 0;
61
virtual
int
binEntries(
int
index)
const
= 0;
62
virtual
double
binHeight(
int
index)
const
= 0;
63
virtual
double
binError(
int
index)
const
= 0;
64
virtual
double
mean()
const
= 0;
65
virtual
double
rms()
const
= 0;
66
virtual
const
IAxis & axis()
const
= 0;
67
virtual
int
coordToIndex(
double
coord)
const
= 0;
68
virtual
bool
add(
const
IHistogram1D & hist) = 0;
69
virtual
bool
scale(
double
scaleFactor) = 0;
70
71
};
72
73
}
74
81
#endif
/* LWH_AIHistorgram1D_H */
Generated on Thu Jun 20 2024 14:47:00 for ThePEG by
1.9.6