QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgsmaprendererjobproxy.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsmaprendererjobproxy.h
3 ------------------------
4 begin : January 2017
5 copyright : (C) 2017 by Paul Blottiere
6 email : paul dot blottiere at oslandia dot com
7***************************************************************************/
8
9/***************************************************************************
10* *
11* This program is free software; you can redistribute it and/or modify *
12* it under the terms of the GNU General Public License as published by *
13* the Free Software Foundation; either version 2 of the License, or *
14* (at your option) any later version. *
15* *
16***************************************************************************/
17
18#ifndef QGSMAPRENDERERJOBPROXY_H
19#define QGSMAPRENDERERJOBPROXY_H
20
21#include "qgsmapsettings.h"
22#include "qgsmaprendererjob.h"
23
25
26namespace QgsWms
27{
28
35 {
36 public:
37
46 bool parallelRendering
47 , int maxThreads
48 , QgsFeatureFilterProvider *featureFilterProvider
49 );
50
57 void render( const QgsMapSettings &mapSettings, QImage *image, const QgsFeedback *feedback );
58
63 QPainter *takePainter();
64
69 QgsMapRendererJob::Errors errors() const { return mErrors; }
70
71 private:
72 bool mParallelRendering;
73 QgsFeatureFilterProvider *mFeatureFilterProvider = nullptr;
74 std::unique_ptr<QPainter> mPainter;
75
76 void getRenderErrors( const QgsMapRendererJob *job );
77
80 };
81
82
83}
84#endif
Abstract interface for use by classes that filter the features or attributes of a layer.
Base class for feedback objects to be used for cancellation of something running in a worker thread.
Definition: qgsfeedback.h:44
Abstract base class for map rendering implementations.
QList< QgsMapRendererJob::Error > Errors
The QgsMapSettings class contains configuration for rendering of the map.
Proxy for sequential or parallel map render job.
QPainter * takePainter()
Takes ownership of the painter used for rendering.
void render(const QgsMapSettings &mapSettings, QImage *image, const QgsFeedback *feedback)
Sequential or parallel map rendering.
QgsMapRendererJob::Errors errors() const
Returns map rendering errors.
QgsMapRendererJobProxy(bool parallelRendering, int maxThreads, QgsFeatureFilterProvider *featureFilterProvider)
Constructor for QgsMapRendererJobProxy.
Median cut implementation.