17#ifndef QGSPROFILERENDERER_H
18#define QGSPROFILERENDERER_H
27#include <QFutureWatcher>
88 QStringList sourceIds()
const;
94 void startGeneration();
107 void generateSynchronously();
113 void cancelGeneration();
120 void cancelGenerationWithoutBlocking();
123 void waitForFinished();
126 bool isActive()
const;
138 void invalidateAllRefinableSources();
165 void regenerateInvalidatedResults();
177 QImage renderToImage(
int width,
int height,
double distanceMin,
double distanceMax,
double zMin,
double zMax,
const QString &sourceId = QString(),
double devicePixelRatio = 1.0 );
184 void render(
QgsRenderContext &context,
double width,
double height,
double distanceMin,
double distanceMax,
double zMin,
double zMax,
const QString &sourceId = QString() );
215 void onGeneratingFinished();
223 std::unique_ptr< QgsAbstractProfileResults > results;
224 std::unique_ptr< QgsAbstractProfileResults > invalidatedResults;
225 bool complete =
false;
229 static void generateProfileStatic( std::unique_ptr< ProfileJob > &job );
232 std::vector< std::unique_ptr< QgsAbstractProfileGenerator > > mGenerators;
236 std::vector< std::unique_ptr< ProfileJob > > mJobs;
238 QFuture<void> mFuture;
239 QFutureWatcher<void> mFutureWatcher;
241 enum { Idle, Generating } mStatus = Idle;
ProfileExportType
Types of export for elevation profiles.
Abstract base class for objects which generate elevation profiles.
Abstract base class for storage of elevation profiles.
Interface for classes which can generate elevation profiles.
QgsRange which stores a range of double values.
Base class for feedback objects to be used for cancellation of something running in a worker thread.
Encapsulates the context in which an elevation profile is to be generated.
Encapsulates the context of identifying profile results.
Generates and renders elevation profile plots.
void generationFinished()
Emitted when the profile generation is finished (or canceled).
Encapsulates a point on a distance-elevation profile.
Encapsulates properties and constraints relating to fetching elevation profiles from different source...
Encapsulates the context of snapping a profile point.
Encapsulates results of snapping a profile point.
Contains information about the context of a rendering operation.