MCPcopy Create free account
hub / github.com/CopterExpress/clover / update

Method update

clover_simulation/src/throttling_camera.cpp:44–58  ·  view source on GitHub ↗

* Add a sample and recalculate average and standard deviation. * * @param sample New sampled value. * @return New average value. */

Source from the content-addressed store, hash-verified

42 * @return New average value.
43 */
44 double update(double sample)
45 {
46 samples.push_back(sample);
47 if (samples.size() > maxSamples)
48 {
49 samples.pop_front();
50 }
51 average = std::accumulate(samples.begin(), samples.end(), 0.0) / samples.size();
52 double stdevSquared = std::accumulate(samples.begin(), samples.end(), 0.0,
53 [&](double sum, double xi) {
54 return sum + (xi - average) * (xi - average);
55 }) / samples.size();
56 stdev = std::sqrt(stdevSquared);
57 return average;
58 }
59
60 /**
61 * Get current average value of all samples.

Callers 2

OnNewFrameMethod · 0.45

Calls 1

endMethod · 0.45

Tested by

no test coverage detected