QGIS API Documentation
2.12.0-Lyon
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
src
core
qgscrscache.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgscrscache.h
3
--------------
4
begin : September 6th, 2011
5
copyright : (C) 2011 by Marco Hugentobler
6
email : marco dot hugentobler at sourcepole dot ch
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 QGSCRSCACHE_H
19
#define QGSCRSCACHE_H
20
21
#include "
qgscoordinatereferencesystem.h
"
22
#include <QHash>
23
24
class
QgsCoordinateTransform
;
25
28
class
CORE_EXPORT
QgsCoordinateTransformCache
29
{
30
public
:
31
static
QgsCoordinateTransformCache
* instance();
32
~
QgsCoordinateTransformCache
();
39
const
QgsCoordinateTransform
* transform(
const
QString
& srcAuthId,
const
QString
& destAuthId,
int
srcDatumTransform = -1,
int
destDatumTransform = -1 );
41
void
invalidateCrs(
const
QString
& crsAuthId );
42
43
private
:
44
static
QgsCoordinateTransformCache
* mInstance;
45
QMultiHash< QPair< QString, QString >
,
QgsCoordinateTransform
* > mTransforms;
//same auth_id pairs might have different datum transformations
46
};
47
48
class
CORE_EXPORT
QgsCRSCache
49
{
50
public
:
51
static
QgsCRSCache
* instance();
52
~
QgsCRSCache
();
54
const
QgsCoordinateReferenceSystem
& crsByAuthId(
const
QString
& authid );
55
const
QgsCoordinateReferenceSystem
& crsByEpsgId(
long
epsg );
56
57
void
updateCRSCache(
const
QString
&authid );
58
59
protected
:
60
QgsCRSCache
();
61
62
private
:
63
QHash< QString, QgsCoordinateReferenceSystem >
mCRS;
65
QgsCoordinateReferenceSystem
mInvalidCRS;
66
};
67
68
#endif // QGSCRSCACHE_H
QHash< QString, QgsCoordinateReferenceSystem >
QString
QgsCRSCache
Definition:
qgscrscache.h:48
QgsCoordinateReferenceSystem
Class for storing a coordinate reference system (CRS)
Definition:
qgscoordinatereferencesystem.h:50
QgsCoordinateTransform
Class for doing transforms between two map coordinate systems.
Definition:
qgscoordinatetransform.h:52
qgscoordinatereferencesystem.h
QMultiHash
QgsCoordinateTransformCache
Cache coordinate transform by authid of source/dest transformation to avoid the overhead of initialis...
Definition:
qgscrscache.h:28
Generated on Sat Oct 24 2015 04:11:23 for QGIS API Documentation by
1.8.9.1