27#ifndef QWT_SERIES_DATA_H
28#define QWT_SERIES_DATA_H
30#include "qwtcore_global.h"
31#include "qwt_samples.h"
32#include "qwt_point_3d.h"
43QWTCORE_EXPORT
bool isSampleNanOrInf(
const QPointF& sample);
46QWTCORE_EXPORT
bool isSampleNanOrInf(
const QwtPoint3D& sample);
49QWTCORE_EXPORT
bool isSampleNanOrInf(
const QwtPointPolar& sample);
52QWTCORE_EXPORT
bool isSampleNanOrInf(
const QwtSetSample& sample);
58QWTCORE_EXPORT
bool isSampleNanOrInf(
const QwtOHLCSample& sample);
64QWTCORE_EXPORT
bool isSampleNanOrInf(
const QwtBoxSample& sample);
96#ifndef QWT_PYTHON_WRAPPER
99 virtual size_t size()
const = 0;
109 virtual size_t size()
const
113 virtual T
sample(
size_t i)
const
134template<
typename T >
139template<
typename T >
144template<
typename T >
153template<
typename T >
172 virtual size_t size()
const override;
175 virtual T
sample(
size_t index)
const override;
182template<
typename T >
187template<
typename T >
192template<
typename T >
195 m_samples = std::move(samples);
198template<
typename T >
205template<
typename T >
209 m_samples = std::move(samples);
212template<
typename T >
218template<
typename T >
221 return m_samples.size();
224template<
typename T >
227 return m_samples[
static_cast< int >(i) ];
345 int totalOutlierCount()
const;
419template<
typename T,
typename LessThan >
420inline size_t qwtUpperSampleIndex(
const QwtSeriesData< T >& series,
double value, LessThan lessThan)
422 const size_t count = series.
size();
427 const size_t indexMax = count - 1;
430 if (!lessThan(value, series.
sample(indexMax))) {
438 const size_t half = n >> 1;
439 const size_t indexMid = indexMin + half;
441 if (lessThan(value, series.
sample(indexMid))) {
446 indexMin = indexMid + 1;
Definition qwt_clipper.h:41
Template class for data, that is organized as QVector
Definition qwt_series_data.h:155
virtual T sample(size_t index) const override
Definition qwt_series_data.h:225
virtual size_t size() const override
Definition qwt_series_data.h:219
QwtArraySeriesData()
Constructor
Definition qwt_series_data.h:183
void setSamples(const QVector< T > &samples)
Assign an array of samples
Definition qwt_series_data.h:199
QwtArraySeriesData(const QVector< T > &samples)
Constructor
Definition qwt_series_data.h:188
QVector< T > m_samples
Vector of samples
Definition qwt_series_data.h:179
const QVector< T > samples() const
Definition qwt_series_data.h:213
Interface for iterating over an array of boxplot samples
Definition qwt_series_data.h:321
Interface for iterating over an array of boxplot outlier samples
Definition qwt_series_data.h:336
Outlier values for a single boxplot position
Definition qwt_samples.h:452
Sample for box-and-whisker plot (boxplot) visualization
Definition qwt_samples.h:363
A sample of the types (x1-x2, y) or (x, y1-y2)
Definition qwt_samples.h:74
Interface for iterating over an array of intervals
Definition qwt_series_data.h:263
Open-High-Low-Close sample used in financial charts
Definition qwt_samples.h:210
Interface for iterating over an array of 3D points
Definition qwt_series_data.h:249
QwtPoint3D class defines a 3D point in double coordinates
Definition qwt_point_3d.h:40
A point in polar coordinates
Definition qwt_point_polar.h:45
Interface for iterating over an array of points
Definition qwt_series_data.h:235
Abstract interface for iterating over samples
Definition qwt_series_data.h:88
virtual void setRectOfInterest(const QRectF &rect)
Set a the "rect of interest"
Definition qwt_series_data.h:145
virtual size_t size() const =0
QwtSeriesData()
Constructor
Definition qwt_series_data.h:135
virtual ~QwtSeriesData()
Destructor
Definition qwt_series_data.h:140
QRectF cachedBoundingRect
Can be used to cache a calculated bounding rectangle
Definition qwt_series_data.h:128
virtual T sample(size_t i) const =0
Return a sample
virtual QRectF boundingRect() const =0
Calculate the bounding rect of all samples
A sample of the types (x1...xn, y) or (x, y1..yn)
Definition qwt_samples.h:139
Interface for iterating over an array of set samples
Definition qwt_series_data.h:277
Interface for iterating over an array of OHLC samples
Definition qwt_series_data.h:306
Interface for iterating over an array of vector field samples
Definition qwt_series_data.h:291
Sample used in vector fields
Definition qwt_samples.h:291