QGIS API Documentation 3.28.0-Firenze (ed3ad0430f)
qgsexiftools.h
Go to the documentation of this file.
1/***************************************************************************
2 qgisexiftools.h
3 ---------------
4 Date : November 2018
5 Copyright : (C) 2018 by Nyall Dawson
6 Email : nyall dot dawson at gmail dot com
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15
16#ifndef QGSEXIFTOOLS_H
17#define QGSEXIFTOOLS_H
18
19#include "qgis_core.h"
20#include "qgspointxy.h"
21
22#include <QObject>
23#include <QString>
24#include <QVariant>
25#include <QVariantMap>
26
32class CORE_EXPORT QgsExifTools
33{
34 Q_GADGET
35
36 public:
37
42 static QVariantMap readTags( const QString &imagePath );
43
48 static QVariant readTag( const QString &imagePath, const QString &key );
49
60 static QgsPoint getGeoTag( const QString &imagePath, bool &ok SIP_OUT );
61
67 Q_INVOKABLE static bool hasGeoTag( const QString &imagePath );
68
75 {
76 public:
77
79 : elevation( std::numeric_limits< double >::quiet_NaN() )
80 {
81 }
82
86 double elevation = 0;
87 };
88
100 static bool geoTagImage( const QString &imagePath, const QgsPointXY &location, const GeoTagDetails &details = QgsExifTools::GeoTagDetails() );
101
102};
103
104#endif // QGSEXIFTOOLS_H
Extended image geotag details.
Definition: qgsexiftools.h:75
Contains utilities for working with EXIF tags in images.
Definition: qgsexiftools.h:33
A class to represent a 2D point.
Definition: qgspointxy.h:59
Point geometry type, with support for z-dimension and m-values.
Definition: qgspoint.h:49
#define SIP_OUT
Definition: qgis_sip.h:58