QGIS API Documentation  3.4.15-Madeira (e83d02e274)
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 
24 
25 namespace QgsWms
26 {
27 
35  {
36  public:
37 
46  bool parallelRendering
47  , int maxThreads
48  , QgsFeatureFilterProvider *featureFilterProvider
49  );
50 
56  void render( const QgsMapSettings &mapSettings, QImage *image );
57 
62  QPainter *takePainter();
63 
64  private:
65  bool mParallelRendering;
66  QgsFeatureFilterProvider *mFeatureFilterProvider = nullptr;
67  std::unique_ptr<QPainter> mPainter;
68  };
69 
70 
71 }
72 #endif
void render(const QgsMapSettings &mapSettings, QImage *image)
Sequential or parallel map rendering.
QgsMapRendererJobProxy(bool parallelRendering, int maxThreads, QgsFeatureFilterProvider *featureFilterProvider)
Constructor for QgsMapRendererJobProxy.
The QgsMapSettings class contains configuration for rendering of the map.
QPainter * takePainter()
Takes ownership of the painter used for rendering.
Abstract interface for use by classes that filter the features of a layer.
Median cut implementation.
Proxy for sequential or parallel map render job.