~mir-team/mir/in-process-egl+input-conglomeration

« back to all changes in this revision

Viewing changes to src/client/client_buffer.h

Merged trunk and fixed issues

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
#ifndef MIR_CLIENT_CLIENT_BUFFER_H_
21
21
#define MIR_CLIENT_CLIENT_BUFFER_H_
22
22
 
23
 
#include "mir_native_buffer.h"
 
23
#include "mir_toolkit/mir_native_buffer.h"
 
24
#include "mir_toolkit/common.h"
24
25
#include "mir/geometry/pixel_format.h"
25
26
#include "mir/geometry/size.h"
26
27
 
51
52
class ClientBuffer
52
53
{
53
54
public:
 
55
    virtual ~ClientBuffer() = default;
54
56
    virtual std::shared_ptr<MemoryRegion> secure_for_cpu_write() = 0;
55
57
    virtual geometry::Size size() const = 0;
56
58
    virtual geometry::Stride stride() const = 0;
58
60
    virtual uint32_t age() const = 0;
59
61
    virtual void increment_age() = 0;
60
62
    virtual void mark_as_submitted() = 0;
61
 
 
62
 
    virtual MirNativeBuffer get_native_handle() = 0;
63
 
    virtual std::shared_ptr<MirBufferPackage> get_buffer_package() const = 0;
 
63
    virtual std::shared_ptr<MirNativeBuffer> native_buffer_handle() const = 0;
64
64
};
65
65
 
66
66
}