QGIS API Documentation 3.28.0-Firenze (ed3ad0430f)
qgsrasterlayertemporalproperties.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsrasterlayertemporalproperties.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
19#ifndef QGSRASTERLAYERTEMPORALPROPERTIES_H
20#define QGSRASTERLAYERTEMPORALPROPERTIES_H
21
22#include "qgis_core.h"
23#include "qgis_sip.h"
24#include "qgis.h"
25#include "qgsrange.h"
27
36{
37 Q_OBJECT
38
39 public:
40
46 QgsRasterLayerTemporalProperties( QObject *parent SIP_TRANSFERTHIS = nullptr, bool enabled = false );
47
48 bool isVisibleInTemporalRange( const QgsDateTimeRange &range ) const override;
49 QgsDateTimeRange calculateTemporalExtent( QgsMapLayer *layer ) const override SIP_SKIP;
50 QList< QgsDateTimeRange > allTemporalRanges( QgsMapLayer *layer ) const override;
51
57 Qgis::RasterTemporalMode mode() const;
58
64 void setMode( Qgis::RasterTemporalMode mode );
65
69 QgsTemporalProperty::Flags flags() const override;
70
77 Qgis::TemporalIntervalMatchMethod intervalHandlingMethod() const;
78
85 void setIntervalHandlingMethod( Qgis::TemporalIntervalMatchMethod method );
86
97 void setFixedTemporalRange( const QgsDateTimeRange &range );
98
107 const QgsDateTimeRange &fixedTemporalRange() const;
108
109 QDomElement writeXml( QDomElement &element, QDomDocument &doc, const QgsReadWriteContext &context ) override;
110
111 bool readXml( const QDomElement &element, const QgsReadWriteContext &context ) override;
112
114
115 private:
116
118 Qgis::RasterTemporalMode mMode = Qgis::RasterTemporalMode::FixedTemporalRange;
119
122
124 QgsDateTimeRange mFixedRange;
125};
126
127#endif // QGSRASTERLAYERTEMPORALPROPERTIES_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.
RasterTemporalMode
Raster layer temporal modes.
Definition: qgis.h:1273
Base class for handling properties relating to a data provider's temporal capabilities.
Base class for storage of map layer temporal properties.
virtual QDomElement writeXml(QDomElement &element, QDomDocument &doc, const QgsReadWriteContext &context)=0
Writes the properties to a DOM element, to be used later with readXml().
virtual QgsDateTimeRange calculateTemporalExtent(QgsMapLayer *layer) const
Attempts to calculate the overall temporal extent for the specified layer, using the settings defined...
virtual void setDefaultsFromDataProviderTemporalCapabilities(const QgsDataProviderTemporalCapabilities *capabilities)=0
Sets the layers temporal settings to appropriate defaults based on a provider's temporal capabilities...
virtual QList< QgsDateTimeRange > allTemporalRanges(QgsMapLayer *layer) const
Attempts to calculate the overall list of all temporal extents which are contained in the specified l...
virtual bool isVisibleInTemporalRange(const QgsDateTimeRange &range) const
Returns true if the layer should be visible and rendered for the specified time range.
virtual bool readXml(const QDomElement &element, const QgsReadWriteContext &context)=0
Reads temporal properties from a DOM element previously written by writeXml().
Base class for all map layer types.
Definition: qgsmaplayer.h:73
Implementation of map layer temporal properties for raster layers.
The class is used as a container of context for various read/write operations on other objects.
virtual QgsTemporalProperty::Flags flags() const
Returns flags associated to the temporal property.
#define SIP_TRANSFERTHIS
Definition: qgis_sip.h:53
#define SIP_SKIP
Definition: qgis_sip.h:126