27#include "digikam_config.h"
30#ifdef HAVE_GEOLOCATION
35 class GeoDataCoordinates;
56 Q_DECLARE_FLAGS(HasFlags, HasFlag)
66 GeoCoordinates(const
double inLat, const
double inLon, const
double inAlt);
75 bool hasCoordinates() const;
76 bool hasLatitude() const;
77 bool hasLongitude() const;
79 void setLatLon(const
double inLat, const
double inLon);
81 bool hasAltitude() const;
82 HasFlags hasFlags() const;
84 void setAlt(const
double inAlt);
89 QString altString() const;
90 QString latString() const;
91 QString lonString() const;
92 QString geoUrl() const;
96 static
GeoCoordinates fromGeoUrl(const QString& url,
bool* const parsedOkay =
nullptr);
97 static
Pair makePair(const qreal lat1, const qreal lon1, const qreal lat2, const qreal lon2);
99#ifdef HAVE_GEOLOCATION
101 Marble::GeoDataCoordinates toMarbleCoordinates()
const;
102 static GeoCoordinates fromMarbleCoordinates(
const Marble::GeoDataCoordinates& marbleCoordinates);
111 HasFlags m_hasFlags = HasNothing;
117Q_DECLARE_OPERATORS_FOR_FLAGS(Digikam::GeoCoordinates::HasFlags)
120Q_DECLARE_METATYPE(
Digikam::GeoCoordinates)
121Q_DECLARE_METATYPE(
Digikam::GeoCoordinates::Pair)
122Q_DECLARE_METATYPE(
Digikam::GeoCoordinates::PairList)
124DIGIKAM_EXPORT QDebug operator<<(QDebug debug, const
Digikam::GeoCoordinates& coordinate);
Definition geocoordinates.h:44
QPair< GeoCoordinates, GeoCoordinates > Pair
Definition geocoordinates.h:59
QList< GeoCoordinates > List
Definition geocoordinates.h:58
HasFlag
Definition geocoordinates.h:48
QList< GeoCoordinates::Pair > PairList
Definition geocoordinates.h:60
Q_DECLARE_TYPEINFO(Digikam::GeoCoordinates, Q_MOVABLE_TYPE)
Definition datefolderview.cpp:34