QGIS API Documentation  2.99.0-Master (3450a9f)
Public Member Functions | List of all members
QgsMapRendererParallelJob Class Reference

Job implementation that renders all layers in parallel. More...

#include <qgsmaprendererparalleljob.h>

Inheritance diagram for QgsMapRendererParallelJob:
Inheritance graph
[legend]

Public Member Functions

 QgsMapRendererParallelJob (const QgsMapSettings &settings)
 
 ~QgsMapRendererParallelJob ()
 
virtual void cancel () override
 Stop the rendering job - does not return until the job has terminated. More...
 
virtual void cancelWithoutBlocking () override
 Triggers cancelation of the rendering job without blocking. More...
 
virtual bool isActive () const override
 Tell whether the rendering job is currently running in background. More...
 
virtual QImage renderedImage () override
 Get a preview/resulting image. More...
 
virtual void start () override
 Start the rendering job and immediately return. More...
 
virtual QgsLabelingResultstakeLabelingResults () override
 Get pointer to internal labeling engine (in order to get access to the results). More...
 
virtual bool usedCachedLabels () const override
 Returns true if the render job was able to use a cached labeling solution. More...
 
virtual void waitForFinished () override
 Block until the job has finished. More...
 
- Public Member Functions inherited from QgsMapRendererQImageJob
 QgsMapRendererQImageJob (const QgsMapSettings &settings)
 
- Public Member Functions inherited from QgsMapRendererJob
 QgsMapRendererJob (const QgsMapSettings &settings)
 
Errors errors () const
 List of errors that happened during the rendering job - available when the rendering has been finished. More...
 
const QgsFeatureFilterProviderfeatureFilterProvider () const
 
const QgsMapSettingsmapSettings () const
 Return map settings with which this job was started. More...
 
int renderingTime () const
 Find out how long it took to finish the job (in milliseconds) More...
 
void setCache (QgsMapRendererCache *cache)
 Assign a cache to be used for reading and storing rendered images of individual layers. More...
 
void setFeatureFilterProvider (const QgsFeatureFilterProvider *f)
 
void setRequestedGeometryCacheForLayers (const QStringList &layerIds)
 Set which vector layers should be cached while rendering. More...
 

Additional Inherited Members

- Public Types inherited from QgsMapRendererJob
typedef QList< ErrorErrors
 
- Signals inherited from QgsMapRendererJob
void finished ()
 emitted when asynchronous rendering is finished (or canceled). More...
 
void renderingLayersFinished ()
 Emitted when the layers are rendered. More...
 
- Static Public Attributes inherited from QgsMapRendererJob
static const QString LABEL_CACHE_ID
 QgsMapRendererCache ID string for cached label image. More...
 
- Protected Member Functions inherited from QgsMapRendererJob
void cleanupJobs (LayerRenderJobs &jobs)
 
void cleanupLabelJob (LabelRenderJob &job)
 Handles clean up tasks for a label job, including deletion of images and storing cached label results. More...
 
void logRenderingTime (const LayerRenderJobs &jobs, const LabelRenderJob &labelJob)
 
LayerRenderJobs prepareJobs (QPainter *painter, QgsLabelingEngine *labelingEngine2)
 
bool prepareLabelCache () const
 Prepares the cache for storing the result of labeling. More...
 
LabelRenderJob prepareLabelingJob (QPainter *painter, QgsLabelingEngine *labelingEngine2, bool canUseLabelCache=true)
 Prepares a labeling job. More...
 
- Static Protected Member Functions inherited from QgsMapRendererJob
static QImage composeImage (const QgsMapSettings &settings, const LayerRenderJobs &jobs, const LabelRenderJob &labelJob)
 
static void drawLabeling (const QgsMapSettings &settings, QgsRenderContext &renderContext, QgsLabelingEngine *labelingEngine2, QPainter *painter)
 
- Protected Attributes inherited from QgsMapRendererJob
QgsMapRendererCachemCache = nullptr
 
Errors mErrors
 
QTime mRenderingStart
 
int mRenderingTime = 0
 
QgsMapSettings mSettings
 

Detailed Description

Job implementation that renders all layers in parallel.

The resulting map image can be retrieved with renderedImage() function. It is safe to call that function while rendering is active to see preview of the map.

Since
QGIS 2.4

Definition at line 30 of file qgsmaprendererparalleljob.h.

Constructor & Destructor Documentation

◆ QgsMapRendererParallelJob()

QgsMapRendererParallelJob::QgsMapRendererParallelJob ( const QgsMapSettings settings)

Definition at line 28 of file qgsmaprendererparalleljob.cpp.

◆ ~QgsMapRendererParallelJob()

QgsMapRendererParallelJob::~QgsMapRendererParallelJob ( )

Definition at line 34 of file qgsmaprendererparalleljob.cpp.

Member Function Documentation

◆ cancel()

void QgsMapRendererParallelJob::cancel ( )
overridevirtual

Stop the rendering job - does not return until the job has terminated.

Does nothing if the rendering is not active.

Implements QgsMapRendererJob.

Definition at line 73 of file qgsmaprendererparalleljob.cpp.

◆ cancelWithoutBlocking()

void QgsMapRendererParallelJob::cancelWithoutBlocking ( )
overridevirtual

Triggers cancelation of the rendering job without blocking.

The render job will continue to operate until it is able to cancel, at which stage the finished() signal will be emitted. Does nothing if the rendering is not active.

Implements QgsMapRendererJob.

Definition at line 109 of file qgsmaprendererparalleljob.cpp.

◆ isActive()

bool QgsMapRendererParallelJob::isActive ( ) const
overridevirtual

Tell whether the rendering job is currently running in background.

Implements QgsMapRendererJob.

Definition at line 167 of file qgsmaprendererparalleljob.cpp.

◆ renderedImage()

QImage QgsMapRendererParallelJob::renderedImage ( )
overridevirtual

Get a preview/resulting image.

Implements QgsMapRendererQImageJob.

Definition at line 185 of file qgsmaprendererparalleljob.cpp.

◆ start()

void QgsMapRendererParallelJob::start ( )
overridevirtual

Start the rendering job and immediately return.

Does nothing if the rendering is already in progress.

Implements QgsMapRendererJob.

Definition at line 42 of file qgsmaprendererparalleljob.cpp.

◆ takeLabelingResults()

QgsLabelingResults * QgsMapRendererParallelJob::takeLabelingResults ( )
overridevirtual

Get pointer to internal labeling engine (in order to get access to the results).

This should not be used if cached labeling was redrawn - see usedCachedLabels().

See also
usedCachedLabels()

Implements QgsMapRendererJob.

Definition at line 177 of file qgsmaprendererparalleljob.cpp.

◆ usedCachedLabels()

bool QgsMapRendererParallelJob::usedCachedLabels ( ) const
overridevirtual

Returns true if the render job was able to use a cached labeling solution.

If so, any previously stored labeling results (see takeLabelingResults()) should be retained.

See also
takeLabelingResults()
Since
QGIS 3.0

Implements QgsMapRendererJob.

Definition at line 172 of file qgsmaprendererparalleljob.cpp.

◆ waitForFinished()

void QgsMapRendererParallelJob::waitForFinished ( )
overridevirtual

Block until the job has finished.

Implements QgsMapRendererJob.

Definition at line 131 of file qgsmaprendererparalleljob.cpp.


The documentation for this class was generated from the following files: