Mir
Public Types | Public Member Functions | List of all members
mir::examples::WindowManagerTools Class Referenceabstract

The interface through which the policy instructs the controller. These functions assume that the BasicWindowManager data structures can be accessed freely. I.e. should only be invoked by the policy handle_... methods (where any necessary locks are held). More...

#include <server_example_basic_window_manager.h>

Inheritance diagram for mir::examples::WindowManagerTools:
[legend]

Public Types

using SurfaceInfoMap = std::map< std::weak_ptr< scene::Surface >, SurfaceInfo, std::owner_less< std::weak_ptr< scene::Surface >>>
 
using SessionInfoMap = std::map< std::weak_ptr< scene::Session >, SessionInfo, std::owner_less< std::weak_ptr< scene::Session >>>
 

Public Member Functions

virtual auto find_session (std::function< bool(SessionInfo const &info)> const &predicate) -> std::shared_ptr< scene::Session >=0
 
virtual auto info_for (std::weak_ptr< scene::Session > const &session) const -> SessionInfo &=0
 
virtual auto info_for (std::weak_ptr< scene::Surface > const &surface) const -> SurfaceInfo &=0
 
virtual std::shared_ptr< scene::Sessionfocused_session () const =0
 
virtual std::shared_ptr< scene::Surfacefocused_surface () const =0
 
virtual void focus_next_session ()=0
 
virtual void set_focus_to (std::shared_ptr< scene::Session > const &focus, std::shared_ptr< scene::Surface > const &surface)=0
 
virtual auto surface_at (geometry::Point cursor) const -> std::shared_ptr< scene::Surface >=0
 
virtual auto active_display () -> geometry::Rectangle const =0
 
virtual void forget (std::weak_ptr< scene::Surface > const &surface)=0
 
virtual void raise_tree (std::shared_ptr< scene::Surface > const &root)=0
 
virtual ~WindowManagerTools ()=default
 
 WindowManagerTools ()=default
 
 WindowManagerTools (WindowManagerTools const &)=delete
 
WindowManagerToolsoperator= (WindowManagerTools const &)=delete
 

Detailed Description

The interface through which the policy instructs the controller. These functions assume that the BasicWindowManager data structures can be accessed freely. I.e. should only be invoked by the policy handle_... methods (where any necessary locks are held).

Examples:
server_example_window_management.cpp.

Member Typedef Documentation

using mir::examples::WindowManagerTools::SessionInfoMap = std::map<std::weak_ptr<scene::Session>, SessionInfo, std::owner_less<std::weak_ptr<scene::Session>>>
using mir::examples::WindowManagerTools::SurfaceInfoMap = std::map<std::weak_ptr<scene::Surface>, SurfaceInfo, std::owner_less<std::weak_ptr<scene::Surface>>>

Constructor & Destructor Documentation

virtual mir::examples::WindowManagerTools::~WindowManagerTools ( )
virtualdefault
mir::examples::WindowManagerTools::WindowManagerTools ( )
default
mir::examples::WindowManagerTools::WindowManagerTools ( WindowManagerTools const &  )
delete

Member Function Documentation

virtual auto mir::examples::WindowManagerTools::active_display ( ) -> geometry::Rectangle const
pure virtual
virtual auto mir::examples::WindowManagerTools::find_session ( std::function< bool(SessionInfo const &info)> const &  predicate) -> std::shared_ptr< scene::Session >
pure virtual
virtual void mir::examples::WindowManagerTools::focus_next_session ( )
pure virtual
virtual std::shared_ptr<scene::Session> mir::examples::WindowManagerTools::focused_session ( ) const
pure virtual
virtual std::shared_ptr<scene::Surface> mir::examples::WindowManagerTools::focused_surface ( ) const
pure virtual
virtual void mir::examples::WindowManagerTools::forget ( std::weak_ptr< scene::Surface > const &  surface)
pure virtual
virtual auto mir::examples::WindowManagerTools::info_for ( std::weak_ptr< scene::Session > const &  session) const -> SessionInfo &
pure virtual
virtual auto mir::examples::WindowManagerTools::info_for ( std::weak_ptr< scene::Surface > const &  surface) const -> SurfaceInfo &
pure virtual
WindowManagerTools& mir::examples::WindowManagerTools::operator= ( WindowManagerTools const &  )
delete
virtual void mir::examples::WindowManagerTools::raise_tree ( std::shared_ptr< scene::Surface > const &  root)
pure virtual
virtual void mir::examples::WindowManagerTools::set_focus_to ( std::shared_ptr< scene::Session > const &  focus,
std::shared_ptr< scene::Surface > const &  surface 
)
pure virtual
virtual auto mir::examples::WindowManagerTools::surface_at ( geometry::Point  cursor) const -> std::shared_ptr< scene::Surface >
pure virtual

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

Copyright © 2012-2015 Canonical Ltd.
Generated on Thu Sep 8 14:50:19 UTC 2016