QLowEnergyConnectionParameters Class

The QLowEnergyConnectionParameters class is used when requesting or reporting an update of the parameters of a Bluetooth LE connection. 更多...

头: #include <QLowEnergyConnectionParameters>
qmake: QT += bluetooth
Since: Qt 5.7

公共函数

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 )

详细描述

The QLowEnergyConnectionParameters class is used when requesting or reporting an update of the parameters of a Bluetooth LE connection.

The connection parameters influence how often a master and a slave device synchronize with each other. In general, a lower connection interval and latency means faster communication, but also higher power consumption. How these criteria should be weighed against each other is highly dependent on the concrete use case.

Android only indirectly permits the adjustment of this parameter set. The platform separates the connection parameters into three categories (hight, low & balanced priority). Each category implies a predefined set of values for minimumInterval (), maximumInterval () 和 latency (). Additionally, the value ranges of each category can vary from one Android device to the next. Qt uses the minimumInterval () to determine the target category as follows:

minimumInterval () Android priority
interval < 30 CONNECTION_PRIORITY_HIGH
30 <= interval <= 100 CONNECTION_PRIORITY_BALANCED
interval > 100 CONNECTION_PRIORITY_LOW_POWER

The supervisionTimeout () cannot be changed on Android and is therefore ignored.

另请参阅 QLowEnergyController::requestConnectionUpdate and QLowEnergyController::connectionUpdated .

成员函数文档编制

QLowEnergyConnectionParameters:: QLowEnergyConnectionParameters ()

Constructs a new object of this class. All values are initialized to valid defaults.

QLowEnergyConnectionParameters:: QLowEnergyConnectionParameters (const QLowEnergyConnectionParameters & other )

Constructs a new object of this class that is a copy of other .

QLowEnergyConnectionParameters:: ~QLowEnergyConnectionParameters ()

销毁此对象。

int QLowEnergyConnectionParameters:: latency () const

Returns the slave latency of the connection.

另请参阅 setLatency ().

double QLowEnergyConnectionParameters:: maximumInterval () const

Returns the maximum connection interval in milliseconds. The default is 4000.

注意: If this object was emitted via QLowEnergyController::connectionUpdated (), then this value is the same as minimumInterval () and refers to the actual connection interval.

另请参阅 setIntervalRange ().

double QLowEnergyConnectionParameters:: minimumInterval () const

Returns the minimum connection interval in milliseconds. The default is 7.5.

注意: If this object was emitted via QLowEnergyController::connectionUpdated (), then this value is the same as maximumInterval () and refers to the actual connection interval.

另请参阅 setIntervalRange ().

void QLowEnergyConnectionParameters:: setIntervalRange ( double minimum , double maximum )

Sets the range in which the connection interval should be. The actual value will be decided by the controller. Both minimum and maximum are given in milliseconds. If maximum 小于 minimum , it will be set to the value of minimum . The smallest possible connection interval is 7.5 milliseconds, the largest one is 4000 milliseconds.

另请参阅 minimumInterval () 和 maximumInterval ().

void QLowEnergyConnectionParameters:: setLatency ( int latency )

Sets the slave latency of the connection (that is, the number of connection events that a slave device is allowed to ignore) to latency . The minimum value is 0, the maximum is 499.

另请参阅 latency ().

void QLowEnergyConnectionParameters:: setSupervisionTimeout ( int timeout )

Sets the link supervision timeout to timeout milliseconds. There are several constraints on this value: It must be in the range [100,32000] and it must be larger than (1 + latency ()) * 2 * maximumInterval ().

On Android, this timeout is not adjustable and therefore ignored.

另请参阅 supervisionTimeout ().

int QLowEnergyConnectionParameters:: supervisionTimeout () const

Returns the link supervision timeout of the connection in milliseconds.

另请参阅 setSupervisionTimeout ().

void QLowEnergyConnectionParameters:: swap ( QLowEnergyConnectionParameters & other )

Swaps this object with other .

QLowEnergyConnectionParameters &QLowEnergyConnectionParameters:: operator= (const QLowEnergyConnectionParameters & other )

Makes this object a copy of other and returns the new value of this object.