[PATCH 3/4] wayland-server: Document wl_signal

Kristian Høgsberg hoegsberg at gmail.com
Wed Sep 11 10:52:54 PDT 2013


On Wed, Aug 28, 2013 at 06:02:01PM -0500, Aaron Faanes wrote:

This all sounds good, thanks.

Kristian

> ---
>  src/wayland-server.h | 37 +++++++++++++++++++++++++++++++++++++
>  1 file changed, 37 insertions(+)
> 
> diff --git a/src/wayland-server.h b/src/wayland-server.h
> index 59fa43a..0e662de 100644
> --- a/src/wayland-server.h
> +++ b/src/wayland-server.h
> @@ -143,22 +143,52 @@ struct wl_listener {
>  	wl_notify_func_t notify;
>  };
>  
> +/** \class wl_signal
> + *
> + * \brief A source of a type of observable event
> + *
> + * Signals are recognized points where significant events can be observed.
> + * Compositors as well as the server can provide signals. Observers are
> + * added through \ref wl_signal_add.
> + */
>  struct wl_signal {
>  	struct wl_list listener_list;
>  };
>  
> +/** Initialize a new \ref wl_signal for use.
> + *
> + * \param signal The signal that will be initialized
> + *
> + * \memberof wl_signal
> + */
>  static inline void
>  wl_signal_init(struct wl_signal *signal)
>  {
>  	wl_list_init(&signal->listener_list);
>  }
>  
> +/** Add the specified listener to this signal.
> + *
> + * \param signal The signal that will emit events to the listener
> + * \param listener The listener to add
> + *
> + * \memberof wl_signal
> + */
>  static inline void
>  wl_signal_add(struct wl_signal *signal, struct wl_listener *listener)
>  {
>  	wl_list_insert(signal->listener_list.prev, &listener->link);
>  }
>  
> +/** Gets the list item for the specified listener.
> + *
> + * \param signal The signal that contains the specified listener
> + * \param notify The listener that is the target of this search
> + * \return the list item that corresponds to the specified listener, or NULL
> + * if none was found
> + *
> + * \memberof wl_signal
> + */
>  static inline struct wl_listener *
>  wl_signal_get(struct wl_signal *signal, wl_notify_func_t notify)
>  {
> @@ -171,6 +201,13 @@ wl_signal_get(struct wl_signal *signal, wl_notify_func_t notify)
>  	return NULL;
>  }
>  
> +/** Emits this signal, notifying all registered listeners.
> + *
> + * \param signal The signal object that will emit the signal
> + * \param data The data that will be emitted with the signal
> + *
> + * \memberof wl_signal
> + */
>  static inline void
>  wl_signal_emit(struct wl_signal *signal, void *data)
>  {
> -- 
> 1.8.3.1
> 
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/wayland-devel


More information about the wayland-devel mailing list