19 #ifndef MIR_GRAPHICS_GBM_GBM_DISPLAY_BUFFER_H_
20 #define MIR_GRAPHICS_GBM_GBM_DISPLAY_BUFFER_H_
47 std::shared_ptr<DisplayReport>
const& listener,
48 std::vector<std::shared_ptr<KMSOutput>>
const& outputs,
51 EGLContext shared_context);
60 void post_update(std::shared_ptr<graphics::Buffer> bypass_buf)
override;
64 BufferObject* get_front_buffer_object();
65 BufferObject* get_buffer_object(
struct gbm_bo *bo);
66 bool schedule_and_wait_for_page_flip(BufferObject* bufobj);
68 BufferObject* last_flipped_bufobj;
69 std::shared_ptr<graphics::Buffer> last_flipped_bypass_buf;
70 std::shared_ptr<GBMPlatform>
const platform;
71 std::shared_ptr<DisplayReport>
const listener;
74 std::vector<std::shared_ptr<KMSOutput>> outputs;
78 std::atomic<bool> needs_set_crtc;