The wl_registry interface

## Data Structures

struct | wl_registry_listener

## Macros

#define | WL_REGISTRY_GLOBAL_SINCE_VERSION 1
#define | WL_REGISTRY_GLOBAL_REMOVE_SINCE_VERSION 1
#define | WL_REGISTRY_BIND_SINCE_VERSION 1

## Functions

static int | wl_registry_add_listener (struct wl_registry *wl_registry, const struct wl_registry_listener *listener, void *data)
static void | wl_registry_set_user_data (struct wl_registry *wl_registry, void *user_data)
static void * | wl_registry_get_user_data (struct wl_registry *wl_registry)
static void | wl_registry_destroy (struct wl_registry *wl_registry)
static void * | wl_registry_bind (struct wl_registry *wl_registry, uint32_t name, const struct wl_interface *interface, uint32_t version)

## Detailed Description

The singleton global registry object. The server has a number of global objects that are available to all clients. These objects typically represent an actual object in the server (for example, an input device) or they are singleton objects that provide extension functionality.

When a client creates a registry object, the registry object will emit a global event for each global currently in the registry. Globals come and go as a result of device or monitor hotplugs, reconfiguration or other events, and the registry will send out global and global_remove events to keep the client up to date with the changes. To mark the end of the initial burst of events, the client can use the wl_display.sync request immediately after calling wl_display.get_registry.

A client can bind to a global object by using the bind request. This creates a client-side handle that lets the object emit events to the client and lets the client invoke requests on the object.

## Macro Definition Documentation

## WL_REGISTRY_BIND_SINCE_VERSION

#define WL_REGISTRY_BIND_SINCE_VERSION 1

Definition at line 1039 of file wayland-client-protocol.h.

## WL_REGISTRY_GLOBAL_REMOVE_SINCE_VERSION

#define WL_REGISTRY_GLOBAL_REMOVE_SINCE_VERSION 1

Definition at line 1034 of file wayland-client-protocol.h.

## WL_REGISTRY_GLOBAL_SINCE_VERSION

#define WL_REGISTRY_GLOBAL_SINCE_VERSION 1

Definition at line 1030 of file wayland-client-protocol.h.

## Function Documentation

## wl_registry_add_listener()

static int wl_registry_add_listener | ( | struct wl_registry * | wl_registry,
|  | const struct wl_registry_listener * | listener,
|  | void * | data
| ) |  |

inline static

Definition at line 1018 of file wayland-client-protocol.h.

{
return wl_proxy_add_listener((struct wl_proxy *) wl_registry,
(void (**)(void)) listener, data);
}
data
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: SDL_opengl.h:1974

## wl_registry_bind()

static void* wl_registry_bind | ( | struct wl_registry * | wl_registry,
|  | uint32_t | name,
|  | const struct wl_interface * | interface,
|  | uint32_t | version
| ) |  |

inline static

Binds a new, client-created object to the server using the specified name as the identifier.

Definition at line 1075 of file wayland-client-protocol.h.

References NULL, and WL_REGISTRY_BIND.

{
struct wl_proxy *id;
id = wl_proxy_marshal_constructor_versioned((struct wl_proxy *) wl_registry,
WL_REGISTRY_BIND, interface, version, name, interface->name, version, NULL);
return (void *) id;
}
id
GLuint id
Definition: SDL_opengl_glext.h:528
name
GLuint const GLchar * name
Definition: SDL_opengl_glext.h:660
WL_REGISTRY_BIND
#define WL_REGISTRY_BIND
Definition: wayland-client-protocol.h:1025
NULL
#define NULL
Definition: begin_code.h:164

## wl_registry_destroy()

static void wl_registry_destroy | ( | struct wl_registry * | wl_registry | ) |

inline static

Definition at line 1063 of file wayland-client-protocol.h.

{
wl_proxy_destroy((struct wl_proxy *) wl_registry);
}

## wl_registry_get_user_data()

static void* wl_registry_get_user_data | ( | struct wl_registry * | wl_registry | ) |

inline static

Definition at line 1050 of file wayland-client-protocol.h.

{
return wl_proxy_get_user_data((struct wl_proxy *) wl_registry);
}

## wl_registry_set_user_data()

static void wl_registry_set_user_data | ( | struct wl_registry * | wl_registry,
|  | void * | user_data
| ) |  |

inline static

Definition at line 1043 of file wayland-client-protocol.h.

{
wl_proxy_set_user_data((struct wl_proxy *) wl_registry, user_data);
}