| Index: ui/ozone/platform/dri/gbm_buffer.h
|
| diff --git a/ui/ozone/platform/dri/gbm_buffer.h b/ui/ozone/platform/dri/gbm_buffer.h
|
| index a13fa356f8e8380fe37a165fb3d926943cdeff52..2dd5740fbd9c5a5888da5ae914457b079e6a10fd 100644
|
| --- a/ui/ozone/platform/dri/gbm_buffer.h
|
| +++ b/ui/ozone/platform/dri/gbm_buffer.h
|
| @@ -8,6 +8,7 @@
|
| #include "base/macros.h"
|
| #include "base/memory/scoped_ptr.h"
|
| #include "ui/gfx/geometry/size.h"
|
| +#include "ui/ozone/platform/dri/scanout_surface.h"
|
| #include "ui/ozone/public/native_pixmap.h"
|
| #include "ui/ozone/public/surface_factory_ozone.h"
|
|
|
| @@ -18,18 +19,22 @@ namespace ui {
|
|
|
| class DriWrapper;
|
|
|
| -class GbmBuffer : public NativePixmap {
|
| +class GbmBuffer : public ScanoutSurface {
|
| public:
|
| GbmBuffer(gbm_device* device, DriWrapper* dri, const gfx::Size& size);
|
| + virtual ~GbmBuffer();
|
|
|
| bool InitializeBuffer(SurfaceFactoryOzone::BufferFormat format, bool scanout);
|
|
|
| - // NativePixmap:
|
| - virtual void* GetEGLClientBuffer() OVERRIDE;
|
| - virtual int GetDmaBufFd() OVERRIDE;
|
| + // ScanoutSurface:
|
| + virtual bool Initialize() OVERRIDE;
|
| + virtual uint32_t GetFramebufferId() const OVERRIDE;
|
| + virtual uint32_t GetHandle() const OVERRIDE;
|
| + virtual gfx::Size Size() const OVERRIDE;
|
| + virtual void PreSwapBuffers() OVERRIDE;
|
| + virtual void SwapBuffers() OVERRIDE;
|
|
|
| - protected:
|
| - virtual ~GbmBuffer();
|
| + gbm_bo* bo() { return bo_; }
|
|
|
| private:
|
| gbm_device* gbm_device_;
|
| @@ -43,6 +48,21 @@ class GbmBuffer : public NativePixmap {
|
| gfx::Size size_;
|
| };
|
|
|
| +class GbmPixmap : public NativePixmap {
|
| + public:
|
| + GbmPixmap(gbm_device* device, DriWrapper* dri, const gfx::Size& size);
|
| + virtual ~GbmPixmap();
|
| +
|
| + // NativePixmap:
|
| + virtual void* GetEGLClientBuffer() OVERRIDE;
|
| + virtual int GetDmaBufFd() OVERRIDE;
|
| +
|
| + GbmBuffer* buffer() { return &buffer_; }
|
| +
|
| + private:
|
| + GbmBuffer buffer_;
|
| +};
|
| +
|
| } // namespace ui
|
|
|
| #endif // UI_OZONE_PLATFORM_DRI_GBM_BUFFER_H_
|
|
|