QLowEnergyConnectionParameters Class
Die Klasse QLowEnergyConnectionParameters wird verwendet, wenn eine Aktualisierung der Parameter einer Bluetooth LE Verbindung angefordert oder gemeldet wird. Mehr...
Header: | #include <QLowEnergyConnectionParameters> |
qmake: | QT += bluetooth |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QLowEnergyConnectionParameters ist Teil von Implicitly Shared Classes.
Öffentliche Funktionen
QLowEnergyConnectionParameters() | |
QLowEnergyConnectionParameters(const QLowEnergyConnectionParameters &other) | |
~QLowEnergyConnectionParameters() | |
int | latency() const |
double | maximumInterval() const |
double | minimumInterval() const |
void | setIntervalRange(double minimum, double maximum) |
void | setLatency(int latency) |
void | setSupervisionTimeout(int timeout) |
int | supervisionTimeout() const |
void | swap(QLowEnergyConnectionParameters &other) |
QLowEnergyConnectionParameters & | operator=(const QLowEnergyConnectionParameters &other) |
Verwandte Nicht-Mitglieder
bool | operator!=(const QLowEnergyConnectionParameters &p1, const QLowEnergyConnectionParameters &p2) |
bool | operator==(const QLowEnergyConnectionParameters &p1, const QLowEnergyConnectionParameters &p2) |
Detaillierte Beschreibung
Die Verbindungsparameter beeinflussen, wie oft sich ein Master- und ein Slave-Gerät miteinander synchronisieren. Im Allgemeinen bedeutet ein geringeres Verbindungsintervall und eine geringere Latenzzeit eine schnellere Kommunikation, aber auch einen höheren Stromverbrauch. Wie diese Kriterien gegeneinander abgewogen werden sollen, hängt stark vom konkreten Anwendungsfall ab.
Android erlaubt die Anpassung dieses Parametersatzes nur indirekt. Die Plattform unterteilt die Verbindungsparameter in drei Kategorien (hohe, niedrige und ausgewogene Priorität). Jede Kategorie impliziert einen vordefinierten Satz von Werten für minimumInterval(), maximumInterval() und latency(). Zusätzlich können die Wertebereiche jeder Kategorie von einem Android-Gerät zum nächsten variieren. Qt verwendet die minimumInterval(), um die Zielkategorie wie folgt zu bestimmen:
minimumInterval() | Android Priorität |
---|---|
Intervall < 30 | VERBINDUNG_PRIORITÄT_HOCH |
30 <= Intervall <= 100 | VERBINDUNGS_PRIORITÄT_AUSGEGLICHEN |
Intervall > 100 | VERBINDUNGS_PRIORITÄT_NIEDRIGE_LEISTUNG |
Die Angabe supervisionTimeout() kann unter Android nicht geändert werden und wird daher ignoriert.
Siehe auch QLowEnergyController::requestConnectionUpdate und QLowEnergyController::connectionUpdated.
Dokumentation der Mitgliedsfunktionen
QLowEnergyConnectionParameters::QLowEnergyConnectionParameters()
Konstruiert ein neues Objekt dieser Klasse. Alle Werte werden auf gültige Standardwerte initialisiert.
QLowEnergyConnectionParameters::QLowEnergyConnectionParameters(const QLowEnergyConnectionParameters &other)
Konstruiert ein neues Objekt dieser Klasse, das eine Kopie von other ist.
[noexcept]
QLowEnergyConnectionParameters::~QLowEnergyConnectionParameters()
Zerstört dieses Objekt.
int QLowEnergyConnectionParameters::latency() const
Gibt die Slave-Latenzzeit der Verbindung zurück.
Siehe auch setLatency().
double QLowEnergyConnectionParameters::maximumInterval() const
Gibt das maximale Verbindungsintervall in Millisekunden zurück. Der Standardwert ist 4000.
Hinweis: Wenn dieses Objekt über QLowEnergyController::connectionUpdated() gesendet wurde, ist dieser Wert derselbe wie minimumInterval() und bezieht sich auf das tatsächliche Verbindungsintervall.
Siehe auch setIntervalRange().
double QLowEnergyConnectionParameters::minimumInterval() const
Gibt das minimale Verbindungsintervall in Millisekunden zurück. Der Standardwert ist 7,5.
Hinweis: Wenn dieses Objekt über QLowEnergyController::connectionUpdated() ausgegeben wurde, ist dieser Wert derselbe wie maximumInterval() und bezieht sich auf das tatsächliche Verbindungsintervall.
Siehe auch setIntervalRange().
void QLowEnergyConnectionParameters::setIntervalRange(double minimum, double maximum)
Legt den Bereich fest, in dem das Verbindungsintervall liegen soll. Der tatsächliche Wert wird von der Steuerung festgelegt. Sowohl minimum als auch maximum werden in Millisekunden angegeben. Wenn maximum kleiner als minimum ist, wird es auf den Wert von minimum gesetzt. Das kleinste mögliche Verbindungsintervall beträgt 7,5 Millisekunden, das größte 4000 Millisekunden.
Siehe auch minimumInterval() und maximumInterval().
void QLowEnergyConnectionParameters::setLatency(int latency)
Setzt die Slave-Latenzzeit der Verbindung (d. h. die Anzahl der Verbindungsereignisse, die ein Slave-Gerät ignorieren darf) auf latency. Der Mindestwert ist 0, der Höchstwert 499.
Siehe auch latency().
void QLowEnergyConnectionParameters::setSupervisionTimeout(int timeout)
Setzt den Timeout für die Verbindungsüberwachung auf timeout Millisekunden. Für diesen Wert gibt es mehrere Einschränkungen: Er muss im Bereich [100,32000] liegen und er muss größer sein als (1 + latency()) * 2 * maximumInterval().
Unter Android ist diese Zeitüberschreitung nicht einstellbar und wird daher ignoriert.
Siehe auch supervisionTimeout().
int QLowEnergyConnectionParameters::supervisionTimeout() const
Gibt die Zeitüberschreitung der Verbindungsüberwachung der Verbindung in Millisekunden zurück.
Siehe auch setSupervisionTimeout().
[noexcept]
void QLowEnergyConnectionParameters::swap(QLowEnergyConnectionParameters &other)
Tauscht dieses Objekt mit other aus.
QLowEnergyConnectionParameters &QLowEnergyConnectionParameters::operator=(const QLowEnergyConnectionParameters &other)
Macht dieses Objekt zu einer Kopie von other und gibt den neuen Wert dieses Objekts zurück.
Verwandte Nicht-Mitglieder
bool operator!=(const QLowEnergyConnectionParameters &p1, const QLowEnergyConnectionParameters &p2)
Gibt true
zurück, wenn p1 und p2 in Bezug auf ihren öffentlichen Zustand nicht gleich sind, andernfalls false
.
bool operator==(const QLowEnergyConnectionParameters &p1, const QLowEnergyConnectionParameters &p2)
Gibt true
zurück, wenn p1 und p2 in Bezug auf ihren öffentlichen Zustand gleich sind, andernfalls false
.
© 2025 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.