weston/doc/sphinx/toc/libweston/images/create_output.msc
Philipp Zabel c6e47d177a libweston: consolidate weston_compositor_create_output(_with_head)
Add a struct weston_head parameter to weston_compositor_create_output()
and fold weston_compositor_create_output_with_head() into it.

See: https://gitlab.freedesktop.org/wayland/weston/-/issues/268

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
2022-06-10 09:27:43 +00:00

31 lines
980 B
Text

#!/usr/bin/mscgen -Tpng
msc {
hscale="1.5";
c [label = "compositor"], w [label = "libweston core"],
b [label = "backend"];
|||;
--- [label = "Compositor creates an output for a head"];
c box c [label = "Have an existing head to process."];
c => w [label = "weston_compositor_create_output()"];
w => b [label = "weston_backend::create_output()"];
w << b [label = "an empty output, no hw resources"];
w => b [label = "weston_output::attach_head()"];
w << b [label = "success"];
c << w [label = "success"];
c abox c [label = "optionally more heads with weston_output_attach_head() for hardware clone mode."];
c :> w [label = "weston_output_set_scale()"];
c :> w [label = "weston_output_set_transform()"];
c :> b [label = "backend specific settings via plugin API"];
c => w [label = "weston_output_enable()"];
w => b [label = "weston_output::enable()"];
b box b [label = "hw resource allocation"];
w << b [label = "success"];
c << w [label = "success"];
}