---
name: "wayland_server_zwp_tablet_pad_ring_v2_t"
section: "3"
platform: "linux"
package: "waylandpp-dev"
version: "1.0.0-6+b2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/wayland_server_zwp_tablet_pad_ring_v2_t"
---

# wayland\_server\_zwp\_tablet\_pad\_ring\_v2\_t(3)

pad ring

## NAME

wayland::server::zwp\_tablet\_pad\_ring\_v2\_t - pad ring

## SYNOPSIS

`#include <wayland-server-protocol-unstable.hpp>`

Inherits wayland::server::resource\_t.

### Public Member Functions

std::function\< void(std::string, uint32\_t)\> & **on\_set\_feedback** ()\
 set compositor feedback  std::function\< void()\> & **on\_destroy** ()\
 destroy the ring object  void **source** (zwp\_tablet\_pad\_ring\_v2\_source const &source, bool post=true)\
 ring event source  void **angle** (double degrees, bool post=true)\
 angle changed  void **stop** (bool post=true)\
 interaction stopped  void **frame** (uint32\_t time, bool post=true)\
 end of a ring event sequence  bool **proxy\_has\_object** () const\
 Check whether this wrapper actually wraps an object.  void **post\_no\_memory** () const\
 uint32\_t **get\_id** () const\
 client\_t **get\_client** () const\
 unsigned int **get\_version** () const\
 std::string **get\_class** ()\

### Static Public Attributes

static constexpr std::uint32\_t **source\_since\_version** = 1\
 Minimum protocol version required for the **source** function.  static constexpr std::uint32\_t **angle\_since\_version** = 1\
 Minimum protocol version required for the **angle** function.  static constexpr std::uint32\_t **stop\_since\_version** = 1\
 Minimum protocol version required for the **stop** function.  static constexpr std::uint32\_t **frame\_since\_version** = 1\
 Minimum protocol version required for the **frame** function.

## Detailed Description

pad ring

A circular interaction area, such as the touch ring on the Wacom Intuos Pro series tablets.

Events on a ring are logically grouped by the wl\_tablet\_pad\_ring.frame event.

Definition at line **5633** of file **wayland-server-protocol-unstable.hpp**.

## Member Function Documentation

### void zwp\_tablet\_pad\_ring\_v2\_t::angle (double degrees, bool post = `true`)

angle changed

**Parameters**

*degrees* the current angle in degrees

Sent whenever the angle on a ring changes.

The angle is provided in degrees clockwise from the logical north of the ring in the pad's current rotation.

Definition at line **6716** of file **wayland-server-protocol-unstable.cpp**.

### void zwp\_tablet\_pad\_ring\_v2\_t::frame (uint32\_t time, bool post = `true`)

end of a ring event sequence

**Parameters**

*time* timestamp with millisecond granularity

Indicates the end of a set of ring events that logically belong together. A client is expected to accumulate the data in all events within the frame before proceeding.

All wp\_tablet\_pad\_ring events before a wp\_tablet\_pad\_ring.frame event belong logically together. For example, on termination of a finger interaction on a ring the compositor will send a wp\_tablet\_pad\_ring.source event, a wp\_tablet\_pad\_ring.stop event and a wp\_tablet\_pad\_ring.frame event.

A wp\_tablet\_pad\_ring.frame event is sent for every logical event group, even if the group only contains a single wp\_tablet\_pad\_ring event. Specifically, a client may get a sequence: angle, frame, angle, frame, etc.

Definition at line **6726** of file **wayland-server-protocol-unstable.cpp**.

### std::string wayland::server::resource\_t::get\_class ()` [inherited]`

Retrieve the interface name (class) of a resource object.

**Returns**

Interface name of the resource object.

### client\_t wayland::server::resource\_t::get\_client () const` [inherited]`

Get the associated client

**Returns**

the client that owns the resource.

### uint32\_t wayland::server::resource\_t::get\_id () const` [inherited]`

Get the internal ID of the resource

**Returns**

the internal ID of the resource

### unsigned int wayland::server::resource\_t::get\_version () const` [inherited]`

Get interface version

**Returns**

Interface version this resource has been constructed with.

### std::function\< void()\> & zwp\_tablet\_pad\_ring\_v2\_t::on\_destroy ()

destroy the ring object This destroys the client's resource for this ring object.

Definition at line **6705** of file **wayland-server-protocol-unstable.cpp**.

### std::function\< void(std::string, uint32\_t)\> & zwp\_tablet\_pad\_ring\_v2\_t::on\_set\_feedback ()

set compositor feedback

**Parameters**

*description* ring description \
 *serial* serial of the mode switch event

Request that the compositor use the provided feedback string associated with this ring. This request should be issued immediately after a wp\_tablet\_pad\_group.mode\_switch event from the corresponding group is received, or whenever the ring is mapped to a different action. See wp\_tablet\_pad\_group.mode\_switch for more details.

Clients are encouraged to provide context-aware descriptions for the actions associated with the ring; compositors may use this information to offer visual feedback about the button layout (eg. on-screen displays).

The provided string 'description' is a UTF-8 encoded string to be associated with this ring, and is considered user-visible; general internationalization rules apply.

The serial argument will be that of the last wp\_tablet\_pad\_group.mode\_switch event received for the group of this ring. Requests providing other serials than the most recent one will be ignored.

Definition at line **6699** of file **wayland-server-protocol-unstable.cpp**.

### void wayland::server::resource\_t::post\_no\_memory () const` [inherited]`

Post 'not enough memory' error to the client

If the compositor has not enough memory to fulfill a certail request of the client, this function can be called to notify the client of this circumstance.

### bool wayland::server::resource\_t::proxy\_has\_object () const` [inherited]`

Check whether this wrapper actually wraps an object.

**Returns**

true if there is an underlying object, false if this wrapper is empty

### void zwp\_tablet\_pad\_ring\_v2\_t::source (zwp\_tablet\_pad\_ring\_v2\_source const & source, bool post = `true`)

ring event source

**Parameters**

*source* the event source

Source information for ring events.

This event does not occur on its own. It is sent before a wp\_tablet\_pad\_ring.frame event and carries the source information for all events within that frame.

The source specifies how this event was generated. If the source is wp\_tablet\_pad\_ring.source.finger, a wp\_tablet\_pad\_ring.stop event will be sent when the user lifts the finger off the device.

This event is optional. If the source is unknown for an interaction, no event is sent.

Definition at line **6711** of file **wayland-server-protocol-unstable.cpp**.

### void zwp\_tablet\_pad\_ring\_v2\_t::stop (bool post = `true`)

interaction stopped Stop notification for ring events.

For some wp\_tablet\_pad\_ring.source types, a wp\_tablet\_pad\_ring.stop event is sent to notify a client that the interaction with the ring has terminated. This enables the client to implement kinetic scrolling. See the wp\_tablet\_pad\_ring.source documentation for information on when this event may be generated.

Any wp\_tablet\_pad\_ring.angle events with the same source after this event should be considered as the start of a new interaction.

Definition at line **6721** of file **wayland-server-protocol-unstable.cpp**.

## Member Data Documentation

### constexpr std::uint32\_t wayland::server::zwp\_tablet\_pad\_ring\_v2\_t::angle\_since\_version = 1` [static]`, ` [constexpr]`

Minimum protocol version required for the **angle** function.

Definition at line **5730** of file **wayland-server-protocol-unstable.hpp**.

### constexpr std::uint32\_t wayland::server::zwp\_tablet\_pad\_ring\_v2\_t::frame\_since\_version = 1` [static]`, ` [constexpr]`

Minimum protocol version required for the **frame** function.

Definition at line **5774** of file **wayland-server-protocol-unstable.hpp**.

### constexpr std::uint32\_t wayland::server::zwp\_tablet\_pad\_ring\_v2\_t::source\_since\_version = 1` [static]`, ` [constexpr]`

Minimum protocol version required for the **source** function.

Definition at line **5715** of file **wayland-server-protocol-unstable.hpp**.

### constexpr std::uint32\_t wayland::server::zwp\_tablet\_pad\_ring\_v2\_t::stop\_since\_version = 1` [static]`, ` [constexpr]`

Minimum protocol version required for the **stop** function.

Definition at line **5750** of file **wayland-server-protocol-unstable.hpp**.

## Author

Generated automatically by Doxygen for Wayland++ from the source code.
