Nakuja Flight Computer Testing and Simulation Engine (NaFCTSE) 1.0
A testing and verification tool for the Nakuja Rocket Project flight computers
|
Describes a data range given by begin and end index. More...
Public Member Functions | |
QCPDataRange () | |
QCPDataRange (int begin, int end) | |
bool | operator== (const QCPDataRange &other) const |
bool | operator!= (const QCPDataRange &other) const |
int | begin () const |
int | end () const |
int | size () const |
int | length () const |
void | setBegin (int begin) |
void | setEnd (int end) |
bool | isValid () const |
bool | isEmpty () const |
QCPDataRange | bounded (const QCPDataRange &other) const |
QCPDataRange | expanded (const QCPDataRange &other) const |
QCPDataRange | intersection (const QCPDataRange &other) const |
QCPDataRange | adjusted (int changeBegin, int changeEnd) const |
bool | intersects (const QCPDataRange &other) const |
bool | contains (const QCPDataRange &other) const |
Related Symbols | |
(Note that these are not member symbols.) | |
QDebug | operator<< (QDebug d, const QCPDataRange &dataRange) |
Describes a data range given by begin and end index.
QCPDataRange holds two integers describing the begin (setBegin) and end (setEnd) index of a contiguous set of data points. The end index corresponds to the data point just after the last data point of the data range, like in standard iterators.
Data Ranges are not bound to a certain plottable, thus they can be freely exchanged, created and modified. If a non-contiguous data set shall be described, the class QCPDataSelection is used, which holds and manages multiple instances of QCPDataRange. In most situations, QCPDataSelection is thus used.
Both QCPDataRange and QCPDataSelection offer convenience methods to work with them, e.g. bounded, expanded, intersects, intersection, adjusted, contains. Further, addition and subtraction operators (defined in QCPDataSelection) can be used to join/subtract data ranges and data selections (or mixtures), to retrieve a corresponding QCPDataSelection.
QCustomPlot's data selection mechanism is based on QCPDataSelection and QCPDataRange.
QCPDataRange::QCPDataRange | ( | ) |
Creates an empty QCPDataRange, with begin and end set to 0.
QCPDataRange::QCPDataRange | ( | int | begin, |
int | end ) |
Creates a QCPDataRange, initialized with the specified begin and end.
No checks or corrections are made to ensure the resulting range is valid (isValid).
|
inline |
Returns a data range where changeBegin and changeEnd were added to the begin and end indices, respectively.
QCPDataRange QCPDataRange::bounded | ( | const QCPDataRange & | other | ) | const |
Returns a data range that matches this data range, except that parts exceeding other are excluded.
This method is very similar to intersection, with one distinction: If this range and the other range share no intersection, the returned data range will be empty with begin and end set to the respective boundary side of other, at which this range is residing. (intersection would just return a range with begin and end set to 0.)
bool QCPDataRange::contains | ( | const QCPDataRange & | other | ) | const |
Returns whether all data points of other are also contained inside this data range.
QCPDataRange QCPDataRange::expanded | ( | const QCPDataRange & | other | ) | const |
Returns a data range that contains both this data range as well as other.
QCPDataRange QCPDataRange::intersection | ( | const QCPDataRange & | other | ) | const |
Returns the data range which is contained in both this data range and other.
This method is very similar to bounded, with one distinction: If this range and the other range share no intersection, the returned data range will be empty with begin and end set to 0. (bounded would return a range with begin and end set to one of the boundaries of other, depending on which side this range is on.)
bool QCPDataRange::intersects | ( | const QCPDataRange & | other | ) | const |
Returns whether this data range and other share common data points.
|
inline |
|
inline |
Returns whether this range is valid. A valid range has a begin index greater or equal to 0, and an end index greater or equal to the begin index.
|
inline |
Returns the number of data points described by this data range. Equivalent to size.
|
inline |
|
inline |
|
inline |
Returns the number of data points described by this data range. This is equal to the end index minus the begin index.
|
Prints dataRange in a human readable format to the qDebug output.