QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgsprojecttimesettings.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsprojecttimesettings.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#ifndef QGSPROJECTTIMESETTINGS_H
18#define QGSPROJECTTIMESETTINGS_H
19
20#include "qgis_core.h"
21#include "qgsrange.h"
22#include "qgis.h"
23#include <QObject>
24
25class QDomElement;
27class QDomDocument;
28
36class CORE_EXPORT QgsProjectTimeSettings : public QObject
37{
38 Q_OBJECT
39
40 public:
41
45 QgsProjectTimeSettings( QObject *parent SIP_TRANSFERTHIS = nullptr );
46
50 void reset();
51
63 QgsDateTimeRange temporalRange() const;
64
76 void setTemporalRange( const QgsDateTimeRange &range );
77
82 bool readXml( const QDomElement &element, const QgsReadWriteContext &context );
83
88 QDomElement writeXml( QDomDocument &document, const QgsReadWriteContext &context ) const;
89
97 Qgis::TemporalUnit timeStepUnit() const;
98
106 void setTimeStepUnit( Qgis::TemporalUnit unit );
107
117 double timeStep() const;
118
128 void setTimeStep( double step );
129
135 void setFramesPerSecond( double rate );
136
142 double framesPerSecond() const;
143
149 void setIsTemporalRangeCumulative( bool state );
150
156 bool isTemporalRangeCumulative() const;
157
167 long long totalMovieFrames() const;
168
178 void setTotalMovieFrames( long long frames );
179
180 signals:
181
189
190 private:
191
192 QgsDateTimeRange mRange;
194 double mTimeStep = 1;
195 double mFrameRate = 1;
196 bool mCumulativeTemporalRange = false;
197 long long mTotalMovieFrames = 100;
198};
199
200
201#endif // QGSPROJECTTIMESETTINGS_H
TemporalUnit
Temporal units.
Definition: qgis.h:4231
Contains temporal settings and properties for the project, this may be used when animating maps or sh...
void temporalRangeChanged()
Emitted when the temporal range changes.
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