QGIS API Documentation 3.29.0-Master (8c80f25a4f)
qgsmeshlayertemporalproperties.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsmeshlayertemporalproperties.h
3 -----------------------
4 begin : March 2020
5 copyright : (C) 2020 by Vincent Cloarec
6 email : vcloarec at gmail 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 QGSMESHLAYERTEMPORALPROPERTIES_H
19#define QGSMESHLAYERTEMPORALPROPERTIES_H
20
23
24
52{
53 Q_OBJECT
54
55 public:
56
63 QgsMeshLayerTemporalProperties( QObject *parent SIP_TRANSFERTHIS = nullptr, bool enabled = true );
64
65 public:
66
67 QDomElement writeXml( QDomElement &element, QDomDocument &doc, const QgsReadWriteContext &context ) override;
68 bool readXml( const QDomElement &element, const QgsReadWriteContext &context ) override;
70 QgsDateTimeRange calculateTemporalExtent( QgsMapLayer *layer ) const override SIP_SKIP;
71
75 QgsDateTimeRange timeExtent() const;
76
80 QDateTime referenceTime() const;
81
89 void setReferenceTime( const QDateTime &referenceTime, const QgsDataProviderTemporalCapabilities *capabilities );
90
95
101 void setMatchingMethod( const QgsMeshDataProviderTemporalCapabilities::MatchingTemporalDatasetMethod &matchingMethod );
102
108 bool isValid() const;
109
117 void setIsValid( bool isValid );
118
124 bool alwaysLoadReferenceTimeFromSource() const;
125
133 void setAlwaysLoadReferenceTimeFromSource( bool autoReloadFromProvider );
134
135 private:
136 QDateTime mReferenceTime;
137 QgsDateTimeRange mTimeExtent;
140 bool mIsValid = false;
141 bool mAlwaysLoadReferenceTimeFromSource = false;
142};
143
144#endif // QGSMESHLAYERTEMPORALPROPERTIES_H
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 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
MatchingTemporalDatasetMethod
Method for selection of temporal mesh dataset from a range time.
Implementation of map layer temporal properties for mesh layers.
The class is used as a container of context for various read/write operations on other objects.
#define SIP_TRANSFERTHIS
Definition: qgis_sip.h:53
#define SIP_SKIP
Definition: qgis_sip.h:126