waffle_native man page

waffle_native, waffle_native_display, waffle_native_config, waffle_native_context, waffle_native_window — Containers for underlying native objects


#include <waffle.h>

union waffle_native_display {
    struct waffle_gbm_display *gbm;
    struct waffle_glx_display *glx;
    struct waffle_wayland_display *wayland;
    struct waffle_x11_egl_display *x11_egl;

union waffle_native_config {
    struct waffle_gbm_config *gbm;
    struct waffle_glx_config *glx;
    struct waffle_wayland_config *wayland;
    struct waffle_x11_egl_config *x11_egl;

union waffle_native_context {
    struct waffle_gbm_context *gbm;
    struct waffle_glx_context *glx;
    struct waffle_wayland_context *wayland;
    struct waffle_x11_egl_context *x11_egl;

union waffle_native_window {
    struct waffle_gbm_window *gbm;
    struct waffle_glx_window *glx;
    struct waffle_wayland_window *wayland;
    struct waffle_x11_egl_window *x11_egl;


Each of the waffle_${obj}_get_native() functions returns a correspondingly named union waffle_native_${obj}*. For example, waffle_window_get_native() returns union waffle_native_window*

For each platform, the header <waffle_${platform}.h> defines the native container structs. For example, <waffle_glx.h> defines the structs waffle_glx_${obj}.

Observerve that native container structs are not defined for all platforms that waffle supports. In particular, waffle supports Android (WAFFLE_PLATFORM_ANDROID) and MacOS via CGL (WAFFLE_PLATFORM_CGL), but no container structs are defined for those platforms. Presently, waffle does not expose the native objects for those platforms due to implementation difficulties.


Please report bugs or and feature requests to https://github.com/waffle-gl/waffle/iss….

See Also

waffle(7), waffle_gbm(3), waffle_glx(3), waffle_wayland(3), waffle_x11_egl(3)


Chad Versace <chad.versace@linux.intel.com>


Referenced By

waffle(7), waffle_config(3), waffle_context(3), waffle_display(3), waffle_gbm(3), waffle_glx(3), waffle_wayland(3), waffle_window(3), waffle_x11_egl(3).

Explore man page connections for waffle_native(3).

waffle_native_config(3), waffle_native_context(3), waffle_native_display(3) and waffle_native_window(3) are aliases of waffle_native(3).

waffle Waffle Manual 02/29/2016