17#ifndef QGSPROFILERENDERER_H
18#define QGSPROFILERENDERER_H
27#include <QFutureWatcher>
77 QStringList sourceIds()
const;
83 void startGeneration();
89 void cancelGeneration();
96 void cancelGenerationWithoutBlocking();
99 void waitForFinished();
102 bool isActive()
const;
114 void invalidateAllRefinableSources();
141 void regenerateInvalidatedResults();
153 QImage renderToImage(
int width,
int height,
double distanceMin,
double distanceMax,
double zMin,
double zMax,
const QString &sourceId = QString() );
160 void render(
QgsRenderContext &context,
double width,
double height,
double distanceMin,
double distanceMax,
double zMin,
double zMax,
const QString &sourceId = QString() );
184 void onGeneratingFinished();
192 std::unique_ptr< QgsAbstractProfileResults > results;
193 std::unique_ptr< QgsAbstractProfileResults > invalidatedResults;
194 bool complete =
false;
198 static void generateProfileStatic( std::unique_ptr< ProfileJob > &job );
201 std::vector< std::unique_ptr< QgsAbstractProfileGenerator > > mGenerators;
205 std::vector< std::unique_ptr< ProfileJob > > mJobs;
207 QFuture<void> mFuture;
208 QFutureWatcher<void> mFutureWatcher;
210 enum { Idle, Generating } mStatus = Idle;
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.