Mir
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
mir::graphics::nested::NestedPlatform Class Reference

#include <nested_platform.h>

Inheritance diagram for mir::graphics::nested::NestedPlatform:
Inheritance graph
[legend]

Public Member Functions

 NestedPlatform (std::shared_ptr< HostConnection > const &connection, std::shared_ptr< input::EventFilter > const &event_handler, std::shared_ptr< DisplayReport > const &display_report, std::shared_ptr< NativePlatform > const &native_platform)
 
 ~NestedPlatform () noexcept
 
std::shared_ptr
< GraphicBufferAllocator
create_buffer_allocator (std::shared_ptr< BufferInitializer > const &buffer_initializer) override
 Creates the buffer allocator subsystem. More...
 
std::shared_ptr< Displaycreate_display (std::shared_ptr< DisplayConfigurationPolicy > const &initial_conf_policy, std::shared_ptr< GLConfig > const &gl_config)
 Creates the display subsystem. More...
 
std::shared_ptr
< PlatformIPCPackage
get_ipc_package () override
 Gets the IPC package for the platform. More...
 
std::shared_ptr< InternalClientcreate_internal_client () override
 Creates the in-process client support object. More...
 
void fill_ipc_package (BufferIPCPacker *packer, Buffer const *Buffer) const override
 Fills the IPC package for a buffer. More...
 
EGLNativeDisplayType egl_native_display () const
 
- Public Member Functions inherited from mir::graphics::Platform
 Platform ()=default
 
 Platform (const Platform &p)=delete
 
Platformoperator= (const Platform &p)=delete
 
virtual ~Platform ()
 
- Public Member Functions inherited from mir::graphics::BasicPlatform
virtual ~BasicPlatform ()=default
 

Additional Inherited Members

- Protected Member Functions inherited from mir::graphics::BasicPlatform
 BasicPlatform ()=default
 
 BasicPlatform (BasicPlatform const &)=delete
 
BasicPlatformoperator= (BasicPlatform const &)=delete
 

Constructor & Destructor Documentation

mir::graphics::nested::NestedPlatform::NestedPlatform ( std::shared_ptr< HostConnection > const &  connection,
std::shared_ptr< input::EventFilter > const &  event_handler,
std::shared_ptr< DisplayReport > const &  display_report,
std::shared_ptr< NativePlatform > const &  native_platform 
)
mir::graphics::nested::NestedPlatform::~NestedPlatform ( )
noexcept

Member Function Documentation

std::shared_ptr< mg::GraphicBufferAllocator > mir::graphics::nested::NestedPlatform::create_buffer_allocator ( std::shared_ptr< BufferInitializer > const &  buffer_initializer)
overridevirtual

Creates the buffer allocator subsystem.

Parameters
[in]buffer_initializerthe object responsible for initializing the buffers

Implements mir::graphics::Platform.

std::shared_ptr< mg::Display > mir::graphics::nested::NestedPlatform::create_display ( std::shared_ptr< DisplayConfigurationPolicy > const &  initial_conf_policy,
std::shared_ptr< GLConfig > const &  gl_config 
)
virtual

Creates the display subsystem.

Implements mir::graphics::Platform.

std::shared_ptr< mg::InternalClient > mir::graphics::nested::NestedPlatform::create_internal_client ( )
overridevirtual

Creates the in-process client support object.

Implements mir::graphics::Platform.

EGLNativeDisplayType mir::graphics::nested::NestedPlatform::egl_native_display ( ) const
virtual
void mir::graphics::nested::NestedPlatform::fill_ipc_package ( BufferIPCPacker packer,
Buffer const *  buffer 
) const
overridevirtual

Fills the IPC package for a buffer.

The Buffer IPC package will be sent to clients when receiving a buffer. The implementation must use the provided packer object to perform the packing.

Parameters
[in]packerthe object providing the packing functionality
[in]bufferthe buffer to fill the IPC package for

Implements mir::graphics::Platform.

std::shared_ptr< mg::PlatformIPCPackage > mir::graphics::nested::NestedPlatform::get_ipc_package ( )
overridevirtual

Gets the IPC package for the platform.

The IPC package will be sent to clients when they connect.

Implements mir::graphics::Platform.


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

Copyright © 2012,2013 Canonical Ltd.
Generated on Fri Apr 11 21:14:53 UTC 2014