Mir
Public Member Functions | List of all members
mir::GLibMainLoop Class Reference

#include <glib_main_loop.h>

Inheritance diagram for mir::GLibMainLoop:
[legend]

Public Member Functions

 GLibMainLoop (std::shared_ptr< time::Clock > const &clock)
 
void run () override
 
void stop () override
 
void register_signal_handler (std::initializer_list< int > signals, std::function< void(int)> const &handler) override
 
void register_fd_handler (std::initializer_list< int > fds, void const *owner, std::function< void(int)> const &handler) override
 
void unregister_fd_handler (void const *owner) override
 
void enqueue (void const *owner, ServerAction const &action) override
 
void pause_processing_for (void const *owner) override
 
void resume_processing_for (void const *owner) override
 
std::unique_ptr< mir::time::Alarmcreate_alarm (std::function< void()> const &callback) override
 Create an Alarm that will not fire until scheduled. More...
 
std::unique_ptr< mir::time::Alarmcreate_alarm (std::shared_ptr< LockableCallback > const &callback) override
 Create an Alarm that will not fire until scheduled. More...
 
void reprocess_all_sources ()
 
- Public Member Functions inherited from mir::time::AlarmFactory
virtual ~AlarmFactory ()=default
 
- Public Member Functions inherited from mir::ServerActionQueue
virtual ~ServerActionQueue ()=default
 

Additional Inherited Members

- Protected Member Functions inherited from mir::graphics::EventHandlerRegister
 EventHandlerRegister ()=default
 
virtual ~EventHandlerRegister ()=default
 
 EventHandlerRegister (EventHandlerRegister const &)=delete
 
EventHandlerRegisteroperator= (EventHandlerRegister const &)=delete
 
- Protected Member Functions inherited from mir::time::AlarmFactory
 AlarmFactory ()=default
 
 AlarmFactory (AlarmFactory const &)=delete
 
AlarmFactoryoperator= (AlarmFactory const &)=delete
 
- Protected Member Functions inherited from mir::ServerActionQueue
 ServerActionQueue ()=default
 
 ServerActionQueue (ServerActionQueue const &)=delete
 
ServerActionQueueoperator= (ServerActionQueue const &)=delete
 

Constructor & Destructor Documentation

mir::GLibMainLoop::GLibMainLoop ( std::shared_ptr< time::Clock > const &  clock)

Member Function Documentation

std::unique_ptr<mir::time::Alarm> mir::GLibMainLoop::create_alarm ( std::function< void()> const &  callback)
overridevirtual

Create an Alarm that will not fire until scheduled.

Parameters
callbackFunction to call when the Alarm signals
Returns
A handle to an Alarm that can later be scheduled

Implements mir::time::AlarmFactory.

std::unique_ptr<mir::time::Alarm> mir::GLibMainLoop::create_alarm ( std::shared_ptr< LockableCallback > const &  callback)
overridevirtual

Create an Alarm that will not fire until scheduled.

A LockableCallback allows the user to preserve lock ordering in situations where Alarm methods need to be called under external lock and the callback implementation needs to run code protected by the same lock. An alarm implementation may have internal locks of its own, which maybe acquired during callback dispatching; to preserve lock ordering LockableCallback::lock is invoked during callback dispatch before any internal locks are acquired.

Parameters
callbackFunction to call when the Alarm signals
Returns
A handle to an Alarm that can later be scheduled

Implements mir::time::AlarmFactory.

void mir::GLibMainLoop::enqueue ( void const *  owner,
ServerAction const &  action 
)
overridevirtual
void mir::GLibMainLoop::pause_processing_for ( void const *  owner)
overridevirtual
void mir::GLibMainLoop::register_fd_handler ( std::initializer_list< int >  fds,
void const *  owner,
std::function< void(int)> const &  handler 
)
overridevirtual
void mir::GLibMainLoop::register_signal_handler ( std::initializer_list< int >  signals,
std::function< void(int)> const &  handler 
)
overridevirtual
void mir::GLibMainLoop::reprocess_all_sources ( )
void mir::GLibMainLoop::resume_processing_for ( void const *  owner)
overridevirtual
void mir::GLibMainLoop::run ( )
overridevirtual

Implements mir::MainLoop.

void mir::GLibMainLoop::stop ( )
overridevirtual

Implements mir::MainLoop.

void mir::GLibMainLoop::unregister_fd_handler ( void const *  owner)
overridevirtual

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

Copyright © 2012-2015 Canonical Ltd.
Generated on Thu Oct 8 16:20:16 UTC 2015