19 #ifndef QGSTEMPORALNAVIGATIONOBJECT_H
20 #define QGSTEMPORALNAVIGATIONOBJECT_H
22 #include "qgis_core.h"
71 void setAnimationState( AnimationState state );
78 AnimationState animationState()
const;
85 void setNavigationMode(
const NavigationMode mode );
102 void setTemporalExtents(
const QgsDateTimeRange &extents );
110 QgsDateTimeRange temporalExtents()
const;
120 void setCurrentFrameNumber(
long long frame );
127 long long currentFrameNumber()
const;
151 QgsDateTimeRange dateTimeRangeForFrameNumber(
long long frame )
const;
161 void setFramesPerSecond(
double rate );
171 double framesPerSecond()
const;
178 void setTemporalRangeCumulative(
bool state );
185 bool temporalRangeCumulative()
const;
190 long long totalFrameCount()
const;
197 bool isLooping()
const;
204 void setLooping(
bool loop );
209 long long findBestFrameNumberForFrameStart(
const QDateTime &frameStart )
const;
228 void temporalExtentsChanged( const QgsDateTimeRange &extent );
284 void rewindToStart();
299 QgsDateTimeRange mTemporalExtents;
304 long long mCurrentFrameNumber = 0;
310 double mFramesPerSecond = 1;
313 QTimer *mNewFrameTimer =
nullptr;
318 bool mLoopAnimation = false;
320 bool mCumulativeTemporalRange = false;
322 int mBlockUpdateTemporalRangeSignal = 0;
Abstract interface for generating an expression context scope.
virtual QgsExpressionContextScope * createExpressionContextScope() const =0
This method needs to be reimplemented in all classes which implement this interface and return an exp...
Single scope for storing variables and functions for use within a QgsExpressionContext.
A representation of the interval between two datetime values.
Base class for all map layer types.
A controller base class for temporal objects, contains a signal for notifying updates of the objects ...
Implements a temporal controller based on a frame by frame navigation and animation.
NavigationMode
Represents the current temporal navigation mode.
@ NavigationOff
Temporal navigation is disabled.
@ FixedRange
Temporal navigation relies on a fixed datetime range.
@ Animated
Temporal navigation relies on frames within a datetime range.
AnimationState
Represents the current animation state.
@ Forward
Animation is playing forward.
@ Reverse
Animation is playing in reverse.
@ Idle
Animation is paused.
NavigationMode navigationMode() const
Returns the currenttemporal navigation mode.
Helper functions for various unit types.