QGIS API Documentation
2.8.2-Wien
|
This class is responsible for keeping cache of rendered images of individual layers. More...
#include <qgsmaprenderercache.h>
Public Member Functions | |
QgsMapRendererCache () | |
QImage | cacheImage (QString layerId) |
get cached image for the specified layer ID. Returns null image if it is not cached. | |
void | clear () |
invalidate the cache contents | |
void | clearCacheImage (QString layerId) |
remove layer from the cache | |
bool | init (QgsRectangle extent, double scale) |
initialize cache: set new parameters and erase cache if parameters have changed | |
void | setCacheImage (QString layerId, const QImage &img) |
set cached image for the specified layer ID |
Protected Slots | |
void | layerRequestedRepaint () |
remove layer (that emitted the signal) from the cache |
Protected Member Functions | |
void | clearInternal () |
invalidate cache contents (without locking) |
Protected Attributes | |
QMap< QString, QImage > | mCachedImages |
QgsRectangle | mExtent |
QMutex | mMutex |
double | mScale |
This class is responsible for keeping cache of rendered images of individual layers.
Once a layer has rendered image stored in the cache (using setCacheImage(...)), the cache listens to repaintRequested() signals from layer. If triggered, the cache removes the rendered image (and disconnects from the layer).
The class is thread-safe (multiple classes can access the same instance safely).
Definition at line 37 of file qgsmaprenderercache.h.
QgsMapRendererCache::QgsMapRendererCache | ( | ) |
Definition at line 21 of file qgsmaprenderercache.cpp.
QImage QgsMapRendererCache::cacheImage | ( | QString | layerId | ) |
get cached image for the specified layer ID. Returns null image if it is not cached.
Definition at line 80 of file qgsmaprenderercache.cpp.
void QgsMapRendererCache::clear | ( | ) |
invalidate the cache contents
Definition at line 26 of file qgsmaprenderercache.cpp.
void QgsMapRendererCache::clearCacheImage | ( | QString | layerId | ) |
remove layer from the cache
Definition at line 93 of file qgsmaprenderercache.cpp.
|
protected |
invalidate cache contents (without locking)
Definition at line 32 of file qgsmaprenderercache.cpp.
bool QgsMapRendererCache::init | ( | QgsRectangle | extent, |
double | scale | ||
) |
initialize cache: set new parameters and erase cache if parameters have changed
Definition at line 49 of file qgsmaprenderercache.cpp.
|
protectedslot |
remove layer (that emitted the signal) from the cache
Definition at line 86 of file qgsmaprenderercache.cpp.
void QgsMapRendererCache::setCacheImage | ( | QString | layerId, |
const QImage & | img | ||
) |
set cached image for the specified layer ID
Definition at line 67 of file qgsmaprenderercache.cpp.
|
protected |
Definition at line 72 of file qgsmaprenderercache.h.
|
protected |
Definition at line 70 of file qgsmaprenderercache.h.
|
protected |
Definition at line 69 of file qgsmaprenderercache.h.
|
protected |
Definition at line 71 of file qgsmaprenderercache.h.