QGIS API Documentation 3.39.0-Master (3aed037ce22)
Loading...
Searching...
No Matches
qgsrendereditemresults.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsrendereditemresults.h
3 -------------------
4 begin : August 2021
5 copyright : (C) Nyall Dawson
6 email : nyall dot dawson at gmail 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 QGSRENDEREDITEMRESULTS_H
19#define QGSRENDEREDITEMRESULTS_H
20
21#include "qgis_core.h"
22#include "qgis_sip.h"
23#include "qgsrectangle.h"
24#include <memory>
25#include <QList>
26#include <vector>
27#include <unordered_map>
28
32
34class QgsRenderedItemResultsSpatialIndex;
36
42class CORE_EXPORT QgsRenderedItemResults
43{
44 public:
45
54
57
61 QList< QgsRenderedItemDetails * > renderedItems() const;
62
68 QList<const QgsRenderedAnnotationItemDetails *> renderedAnnotationItemsInBounds( const QgsRectangle &bounds ) const;
69
78 void appendResults( const QList< QgsRenderedItemDetails * > &results SIP_TRANSFER, const QgsRenderContext &context );
79
88 void transferResults( QgsRenderedItemResults *other, const QStringList &layerIds );
89
97 void transferResults( QgsRenderedItemResults *other );
98
102 void eraseResultsFromLayers( const QStringList &layerIds );
103
104 private:
105#ifdef SIP_RUN
107#endif
108
109 QgsRectangle mExtent;
110
111 std::unordered_map< QString, std::vector< std::unique_ptr< QgsRenderedItemDetails > > > mDetails;
112 std::unique_ptr< QgsRenderedItemResultsSpatialIndex > mAnnotationItemsIndex;
113
114};
115
116#endif // QGSRENDEREDITEMRESULTS_H
A rectangle specified with double values.
Contains information about the context of a rendering operation.
Contains information about a rendered annotation item.
Base class for detailed information about a rendered item.
Stores collated details of rendered items during a map rendering operation.
QgsRenderedItemResults(const QgsRenderedItemResults &)=delete
QgsRenderedItemResults & operator=(const QgsRenderedItemResults &rh)=delete
#define SIP_TRANSFER
Definition qgis_sip.h:36