QTapReading Class
The QTapReading class represents one reading from the tap sensor. More...
Header: | #include <QTapReading> |
qmake: | QT += sensors |
Since: | Qt 5.1 |
Inherits: | QSensorReading |
This class was introduced in Qt 5.1.
Public Types
enum | TapDirection { Undefined, X, Y, Z, X_Pos, …, Z_Both } |
Properties
- doubleTap : const bool
- tapDirection : const TapDirection
Public Functions
bool | isDoubleTap() const |
void | setDoubleTap(bool doubleTap) |
void | setTapDirection(TapDirection tapDirection) |
TapDirection | tapDirection() const |
Detailed Description
QTapReading Units
The tap sensor registers tap events along the 3 axes that originate from the phone. The axes are arranged as follows.
By default it returns only double tap events. The QTapSensor::returnDoubleTapEvents property must be set to false to return individual tap events.
Member Type Documentation
enum QTapReading::TapDirection
The tap direction is indicated using flags. Applications should check for the presence of a particular flag as multiple flags may be set at once.
The X, Y and Z flags allow an app to check for taps along an axis without caring about the direction.
if (reading->tapDirection()&QTapReading::X) { ... }
The *_Pos and *_Neg flags allow checking for taps in a specific direction. Note that some devices cannot determine the direction of a tap and will set both the _Pos and _Neg flag for the detected axis. Previous versions of the API did not allow this. Applications that check for the _Pos and _Neg flags as values should be updated so they can work with all devices.
For example, if you have code like
if (reading->tapDirection() == QTapReading::X_Pos) { ... }
you can rewrite it as
if (reading->tapDirection()&QTapReading::X_Pos) { ... }
Constant | Value | Description |
---|---|---|
QTapReading::Undefined | 0 | This value means that the direction is unknown. |
QTapReading::X | 0x0001 | This flag is set if the tap was along the X axis. |
QTapReading::Y | 0x0002 | This flag is set if the tap was along the Y axis. |
QTapReading::Z | 0x0004 | This flag is set if the tap was along the Z axis. |
QTapReading::X_Pos | 0x0011 | This flag is set if the tap was towards the positive X direction. |
QTapReading::Y_Pos | 0x0022 | This flag is set if the tap was towards the positive Y direction. |
QTapReading::Z_Pos | 0x0044 | This flag is set if the tap was towards the positive Z direction. |
QTapReading::X_Neg | 0x0101 | This flag is set if the tap was towards the negative X direction. |
QTapReading::Y_Neg | 0x0202 | This flag is set if the tap was towards the negative Y direction. |
QTapReading::Z_Neg | 0x0404 | This flag is set if the tap was towards the negative Z direction. |
QTapReading::X_Both | 0x0111 | Equivalent to X_Pos|X_Neg . Returned by devices that cannot detect the direction of a tap. |
QTapReading::Y_Both | 0x0222 | Equivalent to Y_Pos|Y_Neg . Returned by devices that cannot detect the direction of a tap. |
QTapReading::Z_Both | 0x0444 | Equivalent to Z_Pos|Z_Neg . Returned by devices that cannot detect the direction of a tap. |
Property Documentation
doubleTap : const bool
This property holds a value indicating if there was a single or double tap.
- true - double tap
- false - single tap
Access functions:
bool | isDoubleTap() const |
See also QTapReading Units.
tapDirection : const TapDirection
This property holds the direction of the tap.
Access functions:
TapDirection | tapDirection() const |
See also QTapReading Units.
Member Function Documentation
void QTapReading::setDoubleTap(bool doubleTap)
Sets the double tap status of the reading to doubleTap.
See also isDoubleTap().
void QTapReading::setTapDirection(TapDirection tapDirection)
Sets the tap direction to tapDirection.
See also tapDirection().