16#ifndef QGSTEMPORALUTILS_H
17#define QGSTEMPORALUTILS_H
78 return !( *
this == other );
89 QString toString()
const;
97 long long toSeconds()
const;
102 QDateTime addToDateTime(
const QDateTime &dateTime )
const;
Base class for feedback objects to be used for cancellation of something running in a worker thread.
A representation of the interval between two datetime values.
Interface for map decorations.
Contains configuration for rendering maps.
Encapsulates a QGIS project, including sets of map layers and their styles, layouts,...
Contains utility methods for working with temporal layers and projects.
static QList< QDateTime > calculateDateTimesUsingDuration(const QDateTime &start, const QDateTime &end, const QString &duration, bool &ok, bool &maxValuesExceeded, int maxValues=-1)
Calculates a complete list of datetimes between start and end, using the specified ISO8601 duration s...
static QgsDateTimeRange calculateTemporalRangeForProject(QgsProject *project)
Calculates the temporal range for a project.
static bool exportAnimation(const QgsMapSettings &mapSettings, const AnimationExportSettings &settings, QString &error, QgsFeedback *feedback=nullptr)
Exports animation frames by rendering the map to multiple destination images.
static QList< QgsDateTimeRange > usedTemporalRangesForProject(QgsProject *project)
Calculates all temporal ranges which are in use for a project.
static QDateTime calculateFrameTime(const QDateTime &start, const long long frame, const QgsInterval &interval)
Calculates the frame time for an animation.
static QList< QDateTime > calculateDateTimesFromISO8601(const QString &string, bool &ok, bool &maxValuesExceeded, int maxValues=-1)
Calculates a complete list of datetimes from a ISO8601 string containing a duration (eg "2021-03-23T0...
Contains utility methods for working with temporal layers and projects.
bool operator!=(const QgsTimeDuration &other) const
bool operator==(const QgsTimeDuration &other) const
bool isNull() const
Returns true if the duration is null, i.e.
QgsTemporalRange< QDateTime > QgsDateTimeRange
QgsRange which stores a range of date times.
Contains settings relating to exporting animations.
double frameRate
Target animation frame rate in frames per second.
bool temporalRangeCumulative
The animation temporal range cumulative settings.
QgsDateTimeRange animationRange
Dictates the overall temporal range of the animation.
QList< QgsDateTimeRange > availableTemporalRanges
Contains the list of all available temporal ranges which have data available.
QgsInterval frameDuration
Duration of individual export frames.
QString fileNameTemplate
The filename template for exporting the frames.
QString outputDirectory
Destination directory for created image files.
QList< QgsMapDecoration * > decorations
List of decorations to draw onto exported frames.