Marble

GeoDataAbstractView.h
1// SPDX-License-Identifier: LGPL-2.1-or-later
2//
3// SPDX-FileCopyrightText: 2009 Gaurav Gupta <1989.gaurav@googlemail.com>
4//
5
6#ifndef MARBLE_GEODATAABSTRACTVIEW_H
7#define MARBLE_GEODATAABSTRACTVIEW_H
8
9#include "MarbleGlobal.h"
10#include "GeoDataObject.h"
11
12#include "geodata_export.h"
13
14namespace Marble
15{
16class GeoDataCoordinates;
17class GeoDataTimeSpan;
18class GeoDataTimeStamp;
19class GeoDataAbstractViewPrivate;
20
21/**
22 * @see GeoDataLookAt
23 */
24class GEODATA_EXPORT GeoDataAbstractView : public GeoDataObject
25{
26 public:
28
29 ~GeoDataAbstractView() override;
30
32
33 GeoDataAbstractView& operator=( const GeoDataAbstractView &other );
34
35 bool operator==(const GeoDataAbstractView &other) const;
36 inline bool operator!=(const GeoDataAbstractView &other) const { return !(*this == other); }
37
38 virtual GeoDataAbstractView *copy() const = 0;
39
40 const GeoDataTimeSpan& timeSpan() const;
41
42 GeoDataTimeSpan& timeSpan();
43
44 void setTimeSpan( const GeoDataTimeSpan &timeSpan );
45
46 GeoDataTimeStamp& timeStamp();
47
48 const GeoDataTimeStamp& timeStamp() const;
49
50 void setTimeStamp( const GeoDataTimeStamp &timeStamp );
51
52 AltitudeMode altitudeMode() const;
53
54 void setAltitudeMode(const AltitudeMode altitudeMode);
55
56 GeoDataCoordinates coordinates() const;
57
58private:
59 GeoDataAbstractViewPrivate* const d;
60
61protected:
62 bool equals(const GeoDataAbstractView &other) const;
63
64 using GeoDataObject::equals;
65};
66
67} // namespace Marble
68
69#endif
A 3d point representation.
A base class for all geodata objects.
Binds a QML item to a specific geodetic location in screen coordinates.
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:18:17 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.