Qwt User's Guide 6.0.2

- Main Page
- Related Pages
- Classes

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Attributes
QwtSeriesData< T > Class Template Reference

`#include <qwt_series_data.h>`

Inheritance diagram for QwtSeriesData< T >:
[legend]

List of all members.

## Public Member Functions
| QwtSeriesData ()
virtual | ~QwtSeriesData ()
virtual QRectF | boundingRect () const =0
virtual T | sample (size_t i) const =0
virtual void | setRectOfInterest (const QRectF &rect)
virtual size_t | size () const =0

## Protected Attributes
QRectF | d_boundingRect

## Detailed Description

### template<typename T>
class QwtSeriesData< T >

Abstract interface for iterating over samples.

Qwt offers several implementations of the QwtSeriesData API, but in situations, where data of an application specific format needs to be displayed, without having to copy it, it is recommended to implement an individual data access.

A subclass of QwtSeriesData<QPointF> must implement:

- size()
  Should return number of data points.

- sample()
  Should return values x and y values of the sample at specific position as QPointF object.

- boundingRect()
  Should return the bounding rectangle of the data series. It is used for autoscaling and might help certain algorithms for displaying the data. You can use qwtBoundingRect() for an implementation but often it is possible to implement a more efficient alogrithm depending on the characteristics of the series. The member d_boundingRect is intended for caching the calculated rectangle.

## Member Function Documentation

template<typename T>

virtual QRectF QwtSeriesData< T >::boundingRect | ( |  | ) | const
| pure virtual

Calculate the bounding rect of all samples

The bounding rect is necessary for autoscaling and can be used for a couple of painting optimizations.

qwtBoundingRect(...) offers slow implementations iterating over the samples. For large sets it is recommended to implement something faster f.e. by caching the bounding rect.

Implemented in QwtSyntheticPointData, QwtCPointerData, QwtPointArrayData, QwtSetSeriesData, QwtIntervalSeriesData, QwtPoint3DSeriesData, and QwtPointSeriesData.

template<typename T>

virtual T QwtSeriesData< T >::sample | ( | size_t | i | ) | const
| pure virtual

Return a sample

Parameters:

  i | Index

Returns:
  Sample at position i

Implemented in QwtSyntheticPointData, QwtCPointerData, QwtPointArrayData, QwtArraySeriesData< T >, QwtArraySeriesData< QwtIntervalSample >, QwtArraySeriesData< QPointF >, QwtArraySeriesData< QwtPoint3D >, and QwtArraySeriesData< QwtSetSample >.

template<typename T >

void QwtSeriesData< T >::setRectOfInterest | ( | const QRectF & | rect | ) |
| virtual

Set a the "rect of interest"

QwtPlotSeriesItem defines the current area of the plot canvas as "rect of interest" ( QwtPlotSeriesItem::updateScaleDiv() ). It can be used to implement different levels of details.

The default implementation does nothing.

Parameters:

  rect | Rectangle of interest

Reimplemented in QwtSyntheticPointData.

template<typename T>

virtual size_t QwtSeriesData< T >::size | ( |  | ) | const
| pure virtual

Returns:
  Number of samples

Implemented in QwtSyntheticPointData, QwtCPointerData, QwtPointArrayData, QwtArraySeriesData< T >, QwtArraySeriesData< QwtIntervalSample >, QwtArraySeriesData< QPointF >, QwtArraySeriesData< QwtPoint3D >, and QwtArraySeriesData< QwtSetSample >.