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.