QGIS API Documentation  3.24.2-Tisler (13c1a02865)
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 
119  private:
120  QDateTime mReferenceTime;
121  QgsDateTimeRange mTimeExtent;
124  bool mIsValid = false;
125 };
126 
127 #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