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 07b8bac0620c6af41a5cf825fabaf28226e11a3e..b455db33c38106d3e77e51fd996212e8c2359b16 100644 |
--- a/ui/ozone/platform/dri/gbm_buffer.h |
+++ b/ui/ozone/platform/dri/gbm_buffer.h |
@@ -8,7 +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/platform/dri/gbm_buffer_base.h" |
#include "ui/ozone/public/native_pixmap.h" |
#include "ui/ozone/public/surface_factory_ozone.h" |
@@ -19,49 +19,38 @@ namespace ui { |
class DriWrapper; |
-class GbmBuffer : public ScanoutSurface { |
+class GbmBuffer : public GbmBufferBase { |
public: |
- GbmBuffer(gbm_device* device, DriWrapper* dri, const gfx::Size& size); |
- virtual ~GbmBuffer(); |
- |
- bool InitializeBuffer(SurfaceFactoryOzone::BufferFormat format, bool scanout); |
- |
- // 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; |
- |
- gbm_bo* bo() { return bo_; } |
+ static scoped_refptr<GbmBuffer> CreateBuffer( |
+ DriWrapper* dri, |
+ gbm_device* device, |
+ SurfaceFactoryOzone::BufferFormat format, |
+ const gfx::Size& size, |
+ bool scanout); |
private: |
- gbm_device* gbm_device_; |
- gbm_bo* bo_; |
- |
- uint32_t handle_; |
- uint32_t framebuffer_; |
- |
- DriWrapper* dri_; |
+ GbmBuffer(DriWrapper* dri, gbm_bo* bo, bool scanout); |
+ virtual ~GbmBuffer(); |
- gfx::Size size_; |
+ DISALLOW_COPY_AND_ASSIGN(GbmBuffer); |
}; |
class GbmPixmap : public NativePixmap { |
public: |
- GbmPixmap(gbm_device* device, DriWrapper* dri, const gfx::Size& size); |
+ GbmPixmap(scoped_refptr<GbmBuffer> buffer); |
// NativePixmap: |
virtual void* GetEGLClientBuffer() OVERRIDE; |
virtual int GetDmaBufFd() OVERRIDE; |
- GbmBuffer* buffer() { return &buffer_; } |
+ scoped_refptr<GbmBuffer> buffer() { return buffer_; } |
private: |
virtual ~GbmPixmap(); |
- GbmBuffer buffer_; |
+ scoped_refptr<GbmBuffer> buffer_; |
+ |
+ DISALLOW_COPY_AND_ASSIGN(GbmPixmap); |
}; |
} // namespace ui |