QGIS/python/core/qgsrange.sip
Nyall Dawson 23de9a0224 Rework QgsRange to better handle temporal ranges
Make a new QgsTemporalRange template class for specific
temporal classes.

Add QgsDateTimeRange class.
2017-04-19 18:45:17 +10:00

83 lines
2.1 KiB
Plaintext

class QgsDoubleRange
{
%TypeHeaderCode
#include <qgsrange.h>
%End
public:
QgsDoubleRange( double lower, double upper, bool includeLower = true, bool includeUpper = true );
double lower() const;
double upper() const;
bool includeLower() const;
bool includeUpper() const;
bool isEmpty() const;
bool isSingleton() const;
bool contains( const QgsDoubleRange &other ) const;
bool contains( double element ) const;
bool overlaps( const QgsDoubleRange &other ) const;
};
class QgsIntRange
{
%TypeHeaderCode
#include <qgsrange.h>
%End
public:
QgsIntRange( int lower, int upper, bool includeLower = true, bool includeUpper = true );
int lower() const;
int upper() const;
bool includeLower() const;
bool includeUpper() const;
bool isEmpty() const;
bool isSingleton() const;
bool contains( const QgsIntRange &other ) const;
bool contains( int element ) const;
bool overlaps( const QgsIntRange &other ) const;
};
class QgsDateRange
{
%TypeHeaderCode
#include <qgsrange.h>
%End
public:
QgsDateRange( const QDate &lower = QDate(), const QDate &upper = QDate(), bool includeLower = true, bool includeUpper = true );
QDate begin() const;
QDate end() const;
bool includeBeginning() const;
bool includeEnd() const;
bool isEmpty() const;
bool isInstant() const;
bool isInfinite() const;
bool contains( const QgsDateRange &other ) const;
bool contains( const QDate &element ) const;
bool overlaps( const QgsDateRange &other ) const;
};
class QgsDateTimeRange
{
%TypeHeaderCode
#include <qgsrange.h>
%End
public:
QgsDateTimeRange( const QDateTime &lower = QDateTime(), const QDateTime &upper = QDateTime(), bool includeLower = true, bool includeUpper = true );
QDateTime begin() const;
QDateTime end() const;
bool includeBeginning() const;
bool includeEnd() const;
bool isEmpty() const;
bool isInstant() const;
bool isInfinite() const;
bool contains( const QgsDateTimeRange &other ) const;
bool contains( const QDateTime &element ) const;
bool overlaps( const QgsDateTimeRange &other ) const;
};