QGIS API Documentation  3.20.0-Odense (decaadbb31)
Public Member Functions | Protected Member Functions | List of all members
QgsMapRendererAbstractCustomPainterJob Class Reference

Abstract base class for map renderer jobs which use custom painters. More...

#include <qgsmaprenderercustompainterjob.h>

Inheritance diagram for QgsMapRendererAbstractCustomPainterJob:
Inheritance graph
[legend]

Public Member Functions

 QgsMapRendererAbstractCustomPainterJob (const QgsMapSettings &settings)
 Constructor for QgsMapRendererAbstractCustomPainterJob, using the given map settings. More...
 
- Public Member Functions inherited from QgsMapRendererJob
 QgsMapRendererJob (const QgsMapSettings &settings)
 
virtual void cancel ()=0
 Stop the rendering job - does not return until the job has terminated. More...
 
virtual void cancelWithoutBlocking ()=0
 Triggers cancellation of the rendering job without blocking. More...
 
Errors errors () const
 List of errors that happened during the rendering job - available when the rendering has been finished. More...
 
const QgsFeatureFilterProviderfeatureFilterProvider () const
 Returns the feature filter provider used by the QgsRenderContext of each LayerRenderJob. More...
 
virtual bool isActive () const =0
 Tell whether the rendering job is currently running in background. More...
 
const QgsMapSettingsmapSettings () const
 Returns map settings with which this job was started. More...
 
QHash< QgsMapLayer *, int > perLayerRenderingTime () const
 Returns the render time (in ms) per layer. More...
 
int renderingTime () const
 Returns the total time 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)
 Set the feature filter provider used by the QgsRenderContext of each LayerRenderJob. More...
 
void setLayerRenderingTimeHints (const QHash< QString, int > &hints)
 Sets approximate render times (in ms) for map layers. More...
 
void start ()
 Start the rendering job and immediately return. More...
 
virtual QgsLabelingResultstakeLabelingResults ()=0
 Gets pointer to internal labeling engine (in order to get access to the results). More...
 
virtual bool usedCachedLabels () const =0
 Returns true if the render job was able to use a cached labeling solution. More...
 
virtual void waitForFinished ()=0
 Block until the job has finished. More...
 

Protected Member Functions

void preparePainter (QPainter *painter, const QColor &backgroundColor=Qt::transparent)
 Prepares the given painter ready for a map render. 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 cleanupSecondPassJobs (LayerRenderJobs &jobs)
 
void logRenderingTime (const LayerRenderJobs &jobs, const LayerRenderJobs &secondPassJobs, const LabelRenderJob &labelJob)
 
LayerRenderJobs prepareJobs (QPainter *painter, QgsLabelingEngine *labelingEngine2, bool deferredPainterSet=false)
 Creates a list of layer rendering jobs and prepares them for later render. More...
 
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...
 
LayerRenderJobs prepareSecondPassJobs (LayerRenderJobs &firstPassJobs, LabelRenderJob &labelJob)
 Prepares jobs for a second pass, if selective masks exist (from labels or symbol layers). More...
 

Additional Inherited Members

- Public Types inherited from QgsMapRendererJob
typedef QList< QgsMapRendererJob::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...
 
static const QString LABEL_PREVIEW_CACHE_ID
 QgsMapRendererCache ID string for cached label image during preview compositions only. More...
 
static const QgsSettingsEntryBool settingsLogCanvasRefreshEvent = QgsSettingsEntryBool( QStringLiteral( "Map/logCanvasRefreshEvent" ), QgsSettings::NoSection, false )
 Settings entry log canvas refresh event. More...
 
- Static Protected Member Functions inherited from QgsMapRendererJob
static QImage composeImage (const QgsMapSettings &settings, const LayerRenderJobs &jobs, const LabelRenderJob &labelJob, const QgsMapRendererCache *cache=nullptr)
 
static void composeSecondPass (LayerRenderJobs &secondPassJobs, LabelRenderJob &labelJob)
 Compose second pass images into first pass images. More...
 
static Q_DECL_DEPRECATED void drawLabeling (const QgsMapSettings &settings, QgsRenderContext &renderContext, QgsLabelingEngine *labelingEngine2, QPainter *painter)
 
static void drawLabeling (QgsRenderContext &renderContext, QgsLabelingEngine *labelingEngine2, QPainter *painter)
 
static QImage layerImageToBeComposed (const QgsMapSettings &settings, const LayerRenderJob &job, const QgsMapRendererCache *cache)
 
- Protected Attributes inherited from QgsMapRendererJob
QgsMapRendererCachemCache = nullptr
 
Errors mErrors
 
QHash< QString, int > mLayerRenderingTimeHints
 Approximate expected layer rendering time per layer, by layer ID. More...
 
QHash< QgsWeakMapLayerPointer, int > mPerLayerRenderingTime
 Render time (in ms) per layer, by layer ID. More...
 
bool mRecordRenderingTime = true
 true if layer rendering time should be recorded. More...
 
QElapsedTimer mRenderingStart
 
int mRenderingTime = 0
 
QgsMapSettings mSettings
 

Detailed Description

Abstract base class for map renderer jobs which use custom painters.

Since
QGIS 3.10

Definition at line 31 of file qgsmaprenderercustompainterjob.h.

Constructor & Destructor Documentation

◆ QgsMapRendererAbstractCustomPainterJob()

QgsMapRendererAbstractCustomPainterJob::QgsMapRendererAbstractCustomPainterJob ( const QgsMapSettings settings)

Constructor for QgsMapRendererAbstractCustomPainterJob, using the given map settings.

Definition at line 31 of file qgsmaprenderercustompainterjob.cpp.

Member Function Documentation

◆ preparePainter()

void QgsMapRendererAbstractCustomPainterJob::preparePainter ( QPainter *  painter,
const QColor &  backgroundColor = Qt::transparent 
)
protected

Prepares the given painter ready for a map render.

The backgroundColor argument specifies the color to use for the map's background.

Definition at line 37 of file qgsmaprenderercustompainterjob.cpp.


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