~andreas-pokorny/mir/activate-pointer-acceleration

« back to all changes in this revision

Viewing changes to src/client/buffer_stream.h

  • Committer: Christopher James Halse Rogers
  • Date: 2015-02-12 05:55:17 UTC
  • mfrom: (2314 development-branch)
  • mto: This revision was merged to the branch mainline in revision 2326.
  • Revision ID: christopher.halse.rogers@canonical.com-20150212055517-4ebh62tbmq4co2m8
Merge trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
18
18
 
19
19
#ifndef MIR_CLIENT_BUFFER_STREAM_H
20
20
#define MIR_CLIENT_BUFFER_STREAM_H
21
 
 
 
21
 
22
22
#include "mir_protobuf.pb.h"
23
23
 
24
24
#include "mir_wait_handle.h"
44
44
{
45
45
class ClientBufferFactory;
46
46
class ClientBuffer;
47
 
class EGLNativeWindowFactory;
 
47
class ClientPlatform;
48
48
class PerfReport;
49
49
struct MemoryRegion;
50
50
 
59
59
public:
60
60
    BufferStream(mir::protobuf::DisplayServer& server,
61
61
        BufferStreamMode mode,
62
 
        std::shared_ptr<ClientBufferFactory> const& buffer_factory,
63
 
        std::shared_ptr<EGLNativeWindowFactory> const& native_window_factory,
 
62
        std::shared_ptr<ClientPlatform> const& native_window_factory,
64
63
        protobuf::BufferStream const& protobuf_bs,
65
64
        std::shared_ptr<PerfReport> const& perf_report,
66
65
        std::string const& surface_name);
82
81
    void request_and_wait_for_next_buffer() override;
83
82
    // TODO: In this context it seems like a wart that this is a "SurfaceAttribute"
84
83
    void request_and_wait_for_configure(MirSurfaceAttrib attrib, int) override;
 
84
 
 
85
    MirNativeBuffer* get_current_buffer_package() override;
 
86
 
 
87
    MirPlatformType platform_type() override;
85
88
    
86
89
protected:
87
90
    BufferStream(BufferStream const&) = delete;
99
102
    mir::protobuf::DisplayServer& display_server;
100
103
 
101
104
    BufferStreamMode const mode;
102
 
    std::shared_ptr<EGLNativeWindowFactory> const native_window_factory;
 
105
    std::shared_ptr<ClientPlatform> const client_platform;
103
106
 
104
107
    mir::protobuf::BufferStream protobuf_bs;
105
108
    mir::client::ClientBufferDepository buffer_depository;