Horizon
horizon-eda-1.3.0
src
util
accumulator.hpp
1
#pragma once
2
3
namespace
horizon {
4
template
<
typename
T>
class
Accumulator
{
5
public
:
6
Accumulator
() : value()
7
{
8
}
9
void
accumulate(
const
T &v)
10
{
11
value = (value * n + v) / (n + 1);
12
n++;
13
}
14
T get()
15
{
16
return
value;
17
}
18
size_t
get_n()
19
{
20
return
n;
21
}
22
23
private
:
24
T value;
25
size_t
n = 0;
26
};
27
}
// namespace horizon
horizon::Accumulator
Definition:
accumulator.hpp:4
Generated by
1.8.20