QGIS API Documentation 3.28.0-Firenze (ed3ad0430f)
qgsrasterdataprovidertemporalcapabilities.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsrasterdataprovidertemporalcapabilities.h
3 ---------------
4 begin : February 2020
5 copyright : (C) 2020 by Samweli Mwakisambwe
6 email : samweli at kartoza dot com
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18#ifndef QGSRASTERDATAPROVIDERTEMPORALCAPABILITIES_H
19#define QGSRASTERDATAPROVIDERTEMPORALCAPABILITIES_H
20
21#include "qgis_core.h"
22#include "qgis_sip.h"
23#include "qgsrange.h"
24#include "qgsinterval.h"
26
39{
40 public:
41
47 QgsRasterDataProviderTemporalCapabilities( bool enabled = false );
48
54 Qgis::RasterTemporalCapabilityFlags flags() const;
55
61 void setFlags( Qgis::RasterTemporalCapabilityFlags flags );
62
69 Qgis::TemporalIntervalMatchMethod intervalHandlingMethod() const;
70
77 void setIntervalHandlingMethod( Qgis::TemporalIntervalMatchMethod method );
78
84 void setAvailableTemporalRange( const QgsDateTimeRange &range );
85
91 const QgsDateTimeRange &availableTemporalRange() const;
92
103 void setAllAvailableTemporalRanges( const QList< QgsDateTimeRange > &ranges );
104
115 QList< QgsDateTimeRange > allAvailableTemporalRanges() const;
116
123 void setAvailableReferenceTemporalRange( const QgsDateTimeRange &range );
124
131 const QgsDateTimeRange &availableReferenceTemporalRange() const;
132
137 const QgsDateTimeRange &requestedTemporalRange() const;
138
146 QgsInterval defaultInterval() const;
147
155 void setDefaultInterval( const QgsInterval &interval );
156
167 void setRequestedTemporalRange( const QgsDateTimeRange &range ) SIP_SKIP;
168
169 private:
170
179 QgsDateTimeRange mAvailableTemporalRange;
180
185 QList< QgsDateTimeRange > mAllAvailableTemporalRanges;
186
188 QgsDateTimeRange mRequestedRange;
189
193 QgsDateTimeRange mAvailableReferenceRange;
194
195 QgsInterval mDefaultInterval;
196
199
200 Qgis::RasterTemporalCapabilityFlags mFlags;
201
203 friend class TestQgsRasterDataProviderTemporalCapabilities;
204
205};
206
207#endif // QGSRASTERDATAPROVIDERTEMPORALCAPABILITIES_H
TemporalIntervalMatchMethod
Method to use when resolving a temporal range to a data provider layer or band.
Definition: qgis.h:1286
@ MatchUsingWholeRange
Use an exact match to the whole temporal range.
Base class for handling properties relating to a data provider's temporal capabilities.
A representation of the interval between two datetime values.
Definition: qgsinterval.h:42
Implementation of data provider temporal properties for QgsRasterDataProviders.
Implementation of threaded rendering for raster layers.
#define SIP_SKIP
Definition: qgis_sip.h:126