~mir-team/mir/trunk

« back to all changes in this revision

Viewing changes to include/server/mir/shell/surface_factory.h

  • Committer: Tarmac
  • Author(s): Alan Griffiths
  • Date: 2013-04-25 23:50:01 UTC
  • mfrom: (526.2.22 mir1)
  • Revision ID: tarmac-20130425235001-c3b3x2yyb3eldyx1
frontend, shell, tests: surface-states updated to avoid supplying dependencies through public member functions.

Approved by PS Jenkins bot, Chris Halse Rogers, Robert Ancell, Kevin DuBois.

Show diffs side-by-side

added added

removed removed

Lines of Context:
19
19
#ifndef MIR_SHELL_SURFACE_FACTORY_H_
20
20
#define MIR_SHELL_SURFACE_FACTORY_H_
21
21
 
 
22
#include "mir/frontend/surface_id.h"
22
23
#include <memory>
23
24
 
24
25
namespace mir
25
26
{
 
27
namespace events
 
28
{
 
29
class EventSink;
 
30
}
26
31
namespace frontend
27
32
{
28
33
struct SurfaceCreationParameters;
34
39
class SurfaceFactory
35
40
{
36
41
public:
37
 
    virtual std::shared_ptr<Surface> create_surface(const frontend::SurfaceCreationParameters& params) = 0;
 
42
    virtual std::shared_ptr<Surface> create_surface(
 
43
        frontend::SurfaceCreationParameters const& params,
 
44
        frontend::SurfaceId id,
 
45
        std::shared_ptr<events::EventSink> const& sink) = 0;
38
46
 
39
47
protected:
40
48
    virtual ~SurfaceFactory() {}