The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

PointerPointProperties.HasUsage | hasUsage method

Gets a value that indicates whether the input data from the pointer device contains the specified Human Interface Device (HID) usage information.


var boolean = pointerPointProperties.hasUsage(usagePage, usageId);



Type: Number [JavaScript] | System.UInt32 [.NET] | uint32 [C++]

The HID usage page of the pointer device.

Usage pages specify the class of device. For example, touch digitizers (0x0D) and generic input (0x01).


Type: Number [JavaScript] | System.UInt32 [.NET] | uint32 [C++]

Indicates a usage in a usage page.

Usage IDs specify a device or property in the usagePage. For example, for touch digitizers this includes tip switch (0x42) to indicate finger contact or tip pressure (0x30).

Return value

Type: Boolean [JavaScript] | System.Boolean [.NET] | Platform::Boolean [C++]

True if the input data includes usage information; otherwise false.


The core of the Microsoft interactive input device architecture is based on the Universal Serial Bus (USB) standard Device Class Definition for HIDs, which is defined by the USB Implementers Forum, Inc.

The USB HID standard defines the configuration and communication protocols for HIDs, such as keyboards, mouse devices, joysticks, and virtual reality devices, that humans use to enter data directly into a computer. (For detailed information about the USB HID standard, see the USB Implementers Forum website.)

Although the core of the Windows input architecture is based on the USB HID standard, the architecture is not limited to USB devices. The input architecture also supports serial port devices, i8042 port devices, and proprietary input devices.

PointerPoint and PointerPointProperties expose common HID usages directly.

Use HasUsage to query for additional, custom, and device-specific usages or when you need to verify that a device actually supports a property (where PointerPoint and PointerPointProperties return a default value).

The following table lists the HID usages that are exposed directly through PointerPoint and PointerPointProperties.

PropertyUsage PageUsage
Position (X) 0x010x30
Position (Y) 0x010x31
RawPosition (X) 0x010x30
RawPosition (Y) 0x010x31
IsInContact 0x0D0x42 (tip) or 0x45 (eraser tip)
Pressure 0x0D0x30
IsInverted 0x0D0x3C
IsEraser 0x0D0x45
Orientation 0x0D0x3F
XTilt 0x0D0x3D
YTilt 0x0D0x3E
Twist 0x0D0x41
ContactRect (Width) 0x0D0x48
ContactRect (Height) 0x0D0x49
ContactRectRaw (Width) 0x0D0x48
ContactRectRaw (Height) 0x0D0x49
TouchConfidence 0x0D0x47
IsInRange 0x0D0x32


Requirements (Windows 10 device family)

Device family

Universal, introduced version 10.0.10240.0

API contract

Windows.Foundation.UniversalApiContract, introduced version 1.0


Windows::UI::Input [C++]



Requirements (Windows 8.x and Windows Phone 8.x)

Minimum supported client

Windows 8

Minimum supported server

Windows Server 2012

Minimum supported phone

Windows Phone 8.1 [Windows Phone Silverlight 8.1 and Windows Runtime apps]


Windows::UI::Input [C++]



See also

HID Information