Marble

OsmObjectManager.h
1 // SPDX-License-Identifier: LGPL-2.1-or-later
2 //
3 // SPDX-FileCopyrightText: 2015 Stanciu Marius-Valeriu <[email protected]>
4 //
5 
6 #ifndef MARBLE_OSMOBJECTMANAGER_H
7 #define MARBLE_OSMOBJECTMANAGER_H
8 
9 #include <marble_export.h>
10 #include <QtGlobal>
11 
12 namespace Marble
13 {
14 
15 class GeoDataPlacemark;
16 
17 /**
18  * @brief The OsmObjectManager class is used to assign osmData to placemarks that
19  * do not have them at write time. Objects with no osmData usually consist of
20  * new placemarks created in the editor and placemarks loaded from KML files.
21  */
22 class MARBLE_EXPORT OsmObjectManager
23 {
24 public:
25 
26  /**
27  * @brief initializeOsmData assigns valid osmData
28  * to a placemark that does not have it.
29  */
30  static void initializeOsmData( GeoDataPlacemark *placemark );
31 
32  /**
33  * @brief registerId is used to keep track of the minimum id @see m_minId
34  */
35  static void registerId( qint64 id );
36 
37 private:
38  /**
39  * @brief newly created placemarks are assigned negative unique IDs.
40  * In order to assure there are no duplicate IDs, they are assigned the
41  * minId - 1 id.
42  */
43  static qint64 m_minId;
44 };
45 
46 }
47 
48 #endif
49 
The OsmObjectManager class is used to assign osmData to placemarks that do not have them at write tim...
Binds a QML item to a specific geodetic location in screen coordinates.
a class representing a point of interest on the map
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Tue Nov 28 2023 03:53:37 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.