10 #ifndef QWT_SERIES_DATA_H
11 #define QWT_SERIES_DATA_H 1
13 #include "qwt_global.h"
14 #include "qwt_samples.h"
15 #include "qwt_point_3d.h"
16 #include "qwt_point_polar.h"
57 virtual size_t size()
const = 0;
64 virtual T
sample(
size_t i )
const = 0;
101 d_boundingRect( 0.0, 0.0, -1.0, -1.0 )
105 template <
typename T>
110 template <
typename T>
121 template <
typename T>
141 const QVector<T>
samples()
const;
144 virtual size_t size()
const;
152 virtual T
sample(
size_t index )
const;
159 template <
typename T>
164 template <
typename T>
170 template <
typename T>
177 template <
typename T>
183 template <
typename T>
186 return d_samples.size();
189 template <
typename T>
192 return d_samples[
static_cast<int>( i ) ];
200 const QVector<QPointF> & = QVector<QPointF>() );
210 const QVector<QwtPoint3D> & = QVector<QwtPoint3D>() );
219 const QVector<QwtIntervalSample> & = QVector<QwtIntervalSample>() );
229 const QVector<QwtSetSample> & = QVector<QwtSetSample>() );
241 const QVector<QwtOHLCSample> & = QVector<QwtOHLCSample>() );
246 QWT_EXPORT QRectF qwtBoundingRect(
249 QWT_EXPORT QRectF qwtBoundingRect(
252 QWT_EXPORT QRectF qwtBoundingRect(
255 QWT_EXPORT QRectF qwtBoundingRect(
258 QWT_EXPORT QRectF qwtBoundingRect(
261 QWT_EXPORT QRectF qwtBoundingRect(
322 template <
typename T,
typename LessThan>
324 double value, LessThan lessThan )
326 const int indexMax = series.
size() - 1;
328 if ( indexMax < 0 || !lessThan( value, series.
sample( indexMax ) ) )
336 const int half = n >> 1;
337 const int indexMid = indexMin + half;
339 if ( lessThan( value, series.
sample( indexMid ) ) )
345 indexMin = indexMid + 1;