Mir
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | List of all members
mir::scene::SurfaceStack Class Reference

#include <surface_stack.h>

Inheritance diagram for mir::scene::SurfaceStack:
[legend]

Public Member Functions

 SurfaceStack (std::shared_ptr< SceneReport > const &report)
 
virtual ~SurfaceStack () noexcept(true)
 
compositor::SceneElementSequence scene_elements_for (compositor::CompositorID id) override
 Generate a valid sequence of scene elements based on the current state of the Scene. More...
 
void register_compositor (compositor::CompositorID id) override
 
void unregister_compositor (compositor::CompositorID id) override
 
void for_each (std::function< void(std::shared_ptr< input::Surface > const &)> const &callback)
 
virtual void remove_surface (std::weak_ptr< Surface > const &surface) override
 
virtual void raise (std::weak_ptr< Surface > const &surface) override
 
void add_surface (std::shared_ptr< Surface > const &surface, DepthId depth, input::InputReceptionMode input_mode) override
 
void add_observer (std::shared_ptr< Observer > const &observer) override
 
void remove_observer (std::weak_ptr< Observer > const &observer) override
 
void add_input_visualization (std::shared_ptr< graphics::Renderable > const &overlay)
 
void remove_input_visualization (std::weak_ptr< graphics::Renderable > const &overlay)
 
void emit_scene_changed () override
 
- Public Member Functions inherited from mir::compositor::Scene
virtual ~Scene ()
 
virtual void add_observer (std::shared_ptr< scene::Observer > const &observer)=0
 
- Public Member Functions inherited from mir::input::Scene
virtual ~Scene ()=default
 
virtual void for_each (std::function< void(std::shared_ptr< input::Surface > const &)> const &callback)=0
 
virtual void add_observer (std::shared_ptr< scene::Observer > const &observer)=0
 
- Public Member Functions inherited from mir::scene::SurfaceStackModel
virtual ~SurfaceStackModel ()
 

Additional Inherited Members

- Protected Member Functions inherited from mir::compositor::Scene
 Scene ()=default
 
- Protected Member Functions inherited from mir::input::Scene
 Scene ()=default
 
 Scene (Scene const &)=delete
 
Sceneoperator= (Scene const &)=delete
 
- Protected Member Functions inherited from mir::scene::SurfaceStackModel
 SurfaceStackModel ()=default
 
 SurfaceStackModel (const SurfaceStackModel &)=delete
 
SurfaceStackModeloperator= (const SurfaceStackModel &)=delete
 

Constructor & Destructor Documentation

mir::scene::SurfaceStack::SurfaceStack ( std::shared_ptr< SceneReport > const &  report)
explicit
virtual mir::scene::SurfaceStack::~SurfaceStack ( )
inlinevirtualnoexcept

Member Function Documentation

void mir::scene::SurfaceStack::add_input_visualization ( std::shared_ptr< graphics::Renderable > const &  overlay)
virtual

Implements mir::input::Scene.

void mir::scene::SurfaceStack::add_observer ( std::shared_ptr< Observer > const &  observer)
override
void mir::scene::SurfaceStack::add_surface ( std::shared_ptr< Surface > const &  surface,
DepthId  depth,
input::InputReceptionMode  input_mode 
)
overridevirtual
void mir::scene::SurfaceStack::emit_scene_changed ( )
overridevirtual

Implements mir::input::Scene.

void mir::scene::SurfaceStack::for_each ( std::function< void(std::shared_ptr< input::Surface > const &)> const &  callback)
void mir::scene::SurfaceStack::raise ( std::weak_ptr< Surface > const &  surface)
overridevirtual
void mir::scene::SurfaceStack::register_compositor ( compositor::CompositorID  id)
overridevirtual
void mir::scene::SurfaceStack::remove_input_visualization ( std::weak_ptr< graphics::Renderable > const &  overlay)
virtual

Implements mir::input::Scene.

void mir::scene::SurfaceStack::remove_observer ( std::weak_ptr< Observer > const &  observer)
overridevirtual

Implements mir::input::Scene.

void mir::scene::SurfaceStack::remove_surface ( std::weak_ptr< Surface > const &  surface)
overridevirtual
mc::SceneElementSequence mir::scene::SurfaceStack::scene_elements_for ( compositor::CompositorID  id)
overridevirtual

Generate a valid sequence of scene elements based on the current state of the Scene.

Parameters
[in]idAn arbitrary unique identifier used to distinguish separate compositors which need to receive a sequence for rendering. Calling with the same id will return a new (different) sequence to that user each time. For consistency, all callers need to determine their id in the same way (e.g. always use "this" pointer).
Returns
a sequence of mc::SceneElements for the compositor id. The sequence is in stacking order from back to front.

Implements mir::compositor::Scene.

void mir::scene::SurfaceStack::unregister_compositor ( compositor::CompositorID  id)
overridevirtual

The documentation for this class was generated from the following files:

Copyright © 2012,2013 Canonical Ltd.
Generated on Fri Oct 10 14:07:14 UTC 2014