SDL  2.0
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 voidwl_registry_get_user_data (struct wl_registry *wl_registry)
 
static void wl_registry_destroy (struct wl_registry *wl_registry)
 
static voidwl_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 1051 of file wayland-client-protocol.h.

◆ WL_REGISTRY_GLOBAL_REMOVE_SINCE_VERSION

#define WL_REGISTRY_GLOBAL_REMOVE_SINCE_VERSION   1

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

◆ WL_REGISTRY_GLOBAL_SINCE_VERSION

#define WL_REGISTRY_GLOBAL_SINCE_VERSION   1

Definition at line 1042 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 
)
inlinestatic

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

1032 {
1033  return wl_proxy_add_listener((struct wl_proxy *) wl_registry,
1034  (void (**)(void)) listener, data);
1035 }
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 
)
inlinestatic

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

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

References NULL, and WL_REGISTRY_BIND.

1088 {
1089  struct wl_proxy *id;
1090 
1091  id = wl_proxy_marshal_constructor_versioned((struct wl_proxy *) wl_registry,
1092  WL_REGISTRY_BIND, interface, version, name, interface->name, version, NULL);
1093 
1094  return (void *) id;
1095 }
GLuint id
GLuint const GLchar * name
#define WL_REGISTRY_BIND
#define NULL
Definition: begin_code.h:164

◆ wl_registry_destroy()

static void wl_registry_destroy ( struct wl_registry *  wl_registry)
inlinestatic

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

1076 {
1077  wl_proxy_destroy((struct wl_proxy *) wl_registry);
1078 }

◆ wl_registry_get_user_data()

static void* wl_registry_get_user_data ( struct wl_registry *  wl_registry)
inlinestatic

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

1063 {
1064  return wl_proxy_get_user_data((struct wl_proxy *) wl_registry);
1065 }

◆ wl_registry_set_user_data()

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

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

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