SatelliteSource QML Type
Die SatelliteSource-Klasse liefert die Satelliteninformationen. Mehr...
| Import Statement: | import QtPositioning |
| Since: | Qt 6.5 |
Eigenschaften
- active : bool
- name : string
- parameters : list<PluginParameter>
- satellitesInUse : list<geoSatelliteInfo>
- satellitesInView : list<geoSatelliteInfo>
- sourceError : enumeration
- updateInterval : int
- valid : bool
Methoden
- var backendProperty(string name)
- bool setBackendProperty(string name, var value)
- void start()
- void stop()
- void update(int timeout)
Detaillierte Beschreibung
Die Klasse SatelliteSource liefert Informationen über genutzte und sichtbare Satelliten. Diese Klasse ist eine QML-Darstellung von QGeoSatelliteInfoSource.
Wie ihr C++-Pendant unterstützt die Klasse verschiedene Plugins. Verwenden Sie die Eigenschaft name, um den Namen des zu verwendenden Plugins festzulegen, und geben Sie bei Bedarf PluginParameters an. Wenn die Eigenschaft name nicht gesetzt ist, wird ein Standard-Plugin verwendet. Weitere Informationen zu den verfügbaren Plugins finden Sie unter Qt Positioning Plugins.
Verwenden Sie die Eigenschaft valid, um den Status der SatelliteSource zu überprüfen.
Verwenden Sie die Eigenschaft updateInterval, um anzugeben, wie oft Ihre Anwendung die Aktualisierungen der Satelliteninformationen erhalten möchte. Die Methoden start(), stop() und update() können verwendet werden, um den Betrieb der SatelliteSource zu steuern, ebenso wie die Eigenschaft active, die, wenn sie gesetzt ist, einem Aufruf von start() oder stop() entspricht.
Wenn die SatelliteSource aktiv ist, können Aktualisierungen der Satelliteninformationen über die Eigenschaften satellitesInView und satellitesInUse abgerufen werden.
Wenn während der Aktualisierung der Satelliteninformationen ein Fehler auftritt, können Sie mit der Eigenschaft sourceError den aktuellen Fehlercode abrufen.
Beispielverwendung
Das folgende Beispiel zeigt eine SatelliteSource, die das NMEA-Plugin verwendet, um jede Sekunde Satelliteninformationen zu empfangen und die Anzahl der sichtbaren und genutzten Satelliten auf der Konsole auszugeben.
SatelliteSource { id: source name: "nmea" active: true updateInterval: 1000 PluginParameter { name: "nmea.source"; value: "serial:/dev/ttyACM0" } onSatellitesInUseChanged: { console.log("Satellites in use:", source.satellitesInUse.length) } onSatellitesInViewChanged: { console.log("Satellites in view:", source.satellitesInView.length) } }
Siehe auch QGeoSatelliteInfoSource, PluginParameter, und geoSatelliteInfo.
Dokumentation der Eigenschaften
active : bool
Diese Eigenschaft zeigt an, ob die Satellitenquelle aktiv ist. Das Setzen dieser Eigenschaft auf false entspricht dem Aufruf von stop, und das Setzen dieser Eigenschaft auf true entspricht dem Aufruf von start.
Siehe auch start, stop, und update.
name : string
Diese Eigenschaft enthält den eindeutigen internen Namen für das Plugin, das derzeit die Satelliteninformationen liefert.
Das Setzen dieser Eigenschaft veranlasst SatelliteSource, ein bestimmtes Backend-Plugin zu verwenden. Wenn SatelliteSource zu dem Zeitpunkt, an dem die Eigenschaft name geändert wird, aktiv ist, wird es inaktiv. Wenn das angegebene Backend nicht geladen werden kann, wird die Satellitenquelle ungültig.
Eine Änderung der Eigenschaft name kann dazu führen, dass sich auch die Eigenschaft updateInterval ändert.
parameters : list<PluginParameter> [default read-only]
Diese Eigenschaft enthält die Liste der Plugin-Parameter.
Siehe auch PluginParameter.
satellitesInUse : list<geoSatelliteInfo> [read-only]
Diese Eigenschaft enthält die Liste der Satelliten, die derzeit verwendet werden. Es handelt sich dabei um die Satelliten, die für die Ermittlung eines "Fix" verwendet werden, d. h. um die aktuelle Position zu bestimmen.
satellitesInView : list<geoSatelliteInfo> [read-only]
Diese Eigenschaft enthält die Liste der Satelliten, die derzeit im Blickfeld sind.
sourceError : enumeration [read-only]
Diese Eigenschaft enthält den Fehler, der zuletzt beim Backend-Datenanbieter aufgetreten ist.
| Konstante | Beschreibung |
|---|---|
SatelliteSource.AccessError | Der Verbindungsaufbau zum Satelliten-Backend ist fehlgeschlagen, da die Anwendung nicht über die erforderlichen Berechtigungen verfügte. |
SatelliteSource.ClosedError | Das Satelliten-Backend hat die Verbindung geschlossen, was z.B. passiert, wenn der Benutzer die Ortungsdienste ausschaltet. |
SatelliteSource.NoError | Es ist kein Fehler aufgetreten. |
SatelliteSource.UnknownSourceError | Ein nicht identifizierter Fehler ist aufgetreten. |
SatelliteSource.UpdateTimeoutError | Die Satelliteninformationen konnten nicht innerhalb der angegebenen Zeitspanne abgerufen werden. |
updateInterval : int
Diese Eigenschaft enthält das gewünschte Intervall zwischen den Aktualisierungen in Millisekunden.
valid : bool [read-only]
Diese Eigenschaft lautet true, wenn das Objekt SatelliteSource ein gültiges Backend-Plugin zur Bereitstellung von Daten erworben hat, und andernfalls false.
Anwendungen sollten diese Eigenschaft überprüfen, um festzustellen, ob die Bereitstellung von Satelliteninformationen auf der Laufzeitplattform verfügbar und aktiviert ist, und entsprechend reagieren.
Dokumentation der Methode
var backendProperty(string name)
Gibt den Wert der Backend-spezifischen Eigenschaft namens name zurück, falls vorhanden. Andernfalls, auch bei einem Aufruf mit einer nicht initialisierten SatelliteSource, ist der Rückgabewert ungültig.
Siehe auch setBackendProperty().
bool setBackendProperty(string name, var value)
Setzt die Backend-spezifische Eigenschaft namens name auf value. Gibt bei Erfolg true zurück, andernfalls false, auch wenn der Aufruf auf einem nicht initialisierten SatelliteSource erfolgt.
Siehe auch backendProperty().
void start()
Fordert Aktualisierungen von der Satellitenquelle an. Verwendet updateInterval, falls eingestellt, ansonsten Standardintervall. Wenn keine Quelle verfügbar ist, hat diese Methode keine Wirkung.
Siehe auch stop(), update(), und active.
void stop()
Stoppt die Aktualisierungen von der Satellitenquelle. Wenn keine Quelle verfügbar ist oder diese nicht aktiv ist, hat diese Methode keine Wirkung.
Siehe auch start(), update(), und active.
void update(int timeout = 0)
Eine einfache Methode, um eine einzelne Aktualisierung von der Satellitenquelle anzufordern. Wenn keine Quelle verfügbar ist, hat diese Methode keine Wirkung.
Wenn die Satellitenquelle nicht aktiv ist, wird sie so lange aktiviert, wie es dauert, eine Aktualisierung zu empfangen, oder bis die Anfrage eine Zeitüberschreitung aufweist. Die Zeitspanne für die Abfrage ist plugin-spezifisch.
Die timeout wird in Millisekunden angegeben. Wenn timeout gleich Null ist (der Standardwert), wird eine für die Quelle angemessene Zeitspanne vorgegeben.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.