mirror of
https://github.com/GoldenCheetah/GoldenCheetah.git
synced 2026-02-13 16:18:42 +00:00
Upgrade to QWT 6.0.1, but still uses a locally patched copy since support for 8 axes has not been included, despite it being a relatively simple patch. Fixes #634. Fixes #567.
36 lines
715 B
C++
36 lines
715 B
C++
#ifndef _CIRCULAR_BUFFER_H_
|
|
#define _CIRCULAR_BUFFER_H_
|
|
|
|
#include <qwt_series_data.h>
|
|
#include <qvector.h>
|
|
|
|
class CircularBuffer: public QwtSeriesData<QPointF>
|
|
{
|
|
public:
|
|
CircularBuffer(double interval = 10.0, size_t numPoints = 1000);
|
|
void fill(double interval, size_t numPoints);
|
|
|
|
void setReferenceTime(double);
|
|
double referenceTime() const;
|
|
|
|
virtual size_t size() const;
|
|
virtual QPointF sample(size_t i) const;
|
|
|
|
virtual QRectF boundingRect() const;
|
|
|
|
void setFunction(double(*y)(double));
|
|
|
|
private:
|
|
double (*d_y)(double);
|
|
|
|
double d_referenceTime;
|
|
double d_interval;
|
|
QVector<double> d_values;
|
|
|
|
double d_step;
|
|
int d_startIndex;
|
|
double d_offset;
|
|
};
|
|
|
|
#endif
|