summaryrefslogtreecommitdiffstats
path: root/src/positioning/doc/src/qtpositioning.qdoc
blob: e4e7f8a4d8283b5f3c68ce948c6e9bfc5d7f9f59 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
/****************************************************************************
**
** Copyright (C) 2019 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:FDL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
** $QT_END_LICENSE$
**
****************************************************************************/

/*!
    \module QtPositioning
    \title Qt Positioning C++ Classes
    \ingroup modules
    \qtcmakepackage Positioning
    \qtvariable positioning

    \brief The Positioning module provides positioning information via QML and C++ interfaces.

    To load the Qt Positioning module, add the following statement to your .qml files

    \snippet doc_src_qtpositioning.qml import

    For C++ projects include the header appropriate for the current use case,
    for example applications using routes may use

    \code
    #include <QGeoCoordinate>
    \endcode

    \include module-use.qdocinc using qt module

    \badcode
    find_package(Qt6 COMPONENTS Positioning REQUIRED)
    target_link_libraries(mytarget PRIVATE Qt6::Positioning)
    \endcode

    \include module-use.qdocinc building with qmake

    \badcode
    QT += positioning
    \endcode

    See more in the \l{Qt Positioning}{Qt Positioning Overview}.

*/



/*!
\page qtpositioning-index.html
\title Qt Positioning
\brief The Qt Positioning API provides positioning information via QML and C++ interfaces.
\ingroup technology-apis

The Qt Positioning API provides positioning information via QML and C++ interfaces.

Currently the API is supported on \l {Qt for Android}{Android},
\l {Qt for iOS}{iOS}, \l {Qt for macOS}{\macos}, \l {Qt for Linux/X11}{Linux},
and \l {Qt for Windows}{Windows} (with GPS receivers exposed as a serial port
providing NMEA sentences or using \c {Windows.Devices.Geolocation}).

\section1 Overview

The Qt Positioning API gives developers the ability to determine a position by
using a variety of possible sources, including satellite, or wifi, or text file,
and so on. That information can then be used to for example determine a position
on a map. In addition satellite information can be retrieved and area based monitoring
can be performed.

\include module-use.qdocinc using qt module

\badcode
find_package(Qt6 COMPONENTS Positioning REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::Positioning)
\endcode

See also the \l {Build with CMake} overview.

\include module-use.qdocinc building with qmake

\badcode
QT += positioning
\endcode

\section2 Getting Started

To load the Qt Positioning module, add the following statement to your .qml files

\snippet doc_src_qtpositioning.qml import

For C++ projects include the header appropriate for the current use case,
for example applications using routes may use

\code
#include <QGeoCoordinate>
\endcode

\section1 Module Evolution

\l {Changes to Qt Positioning} lists important changes in the module API and
functionality that were done for the Qt 6 series of Qt.

\section1 Licenses

Qt Positioning is available under commercial licenses from \l{The Qt Company}.
In addition, it is available under free software licenses. Since Qt 5.4,
these free software licenses are
\l{GNU Lesser General Public License, version 3}, or
the \l{GNU General Public License, version 2}.
See \l{Qt Licensing} for further details.

\section1 Articles and Guides

\list
    \li \l {Positioning (C++)} {Positioning introduction for C++}
    \li \l {Positioning (QML)} {Positioning introduction for QML}
    \li \l {Qt Positioning Plugins}
    \li \l {Interfaces between C++ and QML Code in Qt Positioning}
    \li \l {Qt Positioning on Android}
\endlist

\section1 Reference

\list
    \li \l {Qt Positioning C++ Classes}
    \li \l {Qt Positioning QML Types}
\endlist

\section1 Examples

\list
    \li \l {Qt Positioning Examples}
\endlist

*/