diff options
Diffstat (limited to 'doc/sphinx/toc/libweston/images/destroy-output.msc')
-rw-r--r-- | doc/sphinx/toc/libweston/images/destroy-output.msc | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/doc/sphinx/toc/libweston/images/destroy-output.msc b/doc/sphinx/toc/libweston/images/destroy-output.msc new file mode 100644 index 00000000..fc477fff --- /dev/null +++ b/doc/sphinx/toc/libweston/images/destroy-output.msc @@ -0,0 +1,29 @@ +#!/usr/bin/mscgen -Tpng + +msc { + hscale="1.5"; + + c [label = "compositor"], w [label = "libweston core"], + b [label = "backend"]; + + |||; + + --- [label = "Compositor destroys an output for a head"]; + + c box c [label = "A head is found disconnected, is being destroyed, or something else needs it disabled."]; + + c => w [label = "weston_head_get_output()"]; + c << w [label = "weston_output"]; + + c box c [label = "decide the output needs to be destroyed"]; + + c => w [label = "weston_output_destroy()"]; + w => b [label = "weston_output::destroy()"]; + w <= b [label = "weston_output_release()"]; + w <= w [label = "weston_head_detach()"]; + w :> b [label = "weston_output::detach_head()"]; + w >> b [label = "release return"]; + b box b [label = "free(output)"]; + w << b; + c << w; +} |