wl_interface

Section: Wayland (3)
Updated: Thu Jan 28 2021
Page Index
 

NAME

wl_interface  

SYNOPSIS


#include <wayland-util.h>  

Data Fields


const char * name

int version

int method_count

const struct wl_message * methods

int event_count

const struct wl_message * events
 

Detailed Description

Protocol object interface

A wl_interface describes the API of a protocol object defined in the Wayland protocol specification. The protocol implementation uses a wl_interface within its marshalling machinery for encoding client requests.

The name of a wl_interface is the name of the corresponding protocol interface, and version represents the version of the interface. The members method_count and event_count represent the number of methods (requests) and events in the respective wl_message members.

For example, consider a protocol interface foo, marked as version 1, with two requests and one event.

<interface name="foo" version="1">
  <request name="a"></request>
  <request name="b"></request>
  <event name="c"></event>
</interface>

Given two wl_message arrays foo_requests and foo_events, a wl_interface for foo might be:

struct wl_interface foo_interface = {
        "foo", 1,
        2, foo_requests,
        1, foo_events
};

Note

The server side of the protocol may define interface implementation types that incorporate the term interface in their name. Take care to not confuse these server-side structs with a wl_interface variable whose name also ends in interface. For example, while the server may define a type struct wl_foo_interface, the client may define a struct wl_interface wl_foo_interface.

See also

wl_message

wl_proxy

Interfaces

Versioning

 

Field Documentation

 

int wl_interface::event_count

Number of events  

const struct wl_message* wl_interface::events

Event signatures  

int wl_interface::method_count

Number of methods (requests)  

const struct wl_message* wl_interface::methods

Method (request) signatures  

const char* wl_interface::name

Interface name  

int wl_interface::version

Interface version

 

Author

Generated automatically by Doxygen for Wayland from the source code.


 

Index

NAME
SYNOPSIS
Data Fields
Detailed Description
Field Documentation
int wl_interface::event_count
const struct wl_message* wl_interface::events
int wl_interface::method_count
const struct wl_message* wl_interface::methods
const char* wl_interface::name
int wl_interface::version
Author