summaryrefslogtreecommitdiffstats
path: root/cc/io_surface_layer.h
diff options
context:
space:
mode:
Diffstat (limited to 'cc/io_surface_layer.h')
-rw-r--r--cc/io_surface_layer.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/cc/io_surface_layer.h b/cc/io_surface_layer.h
index 638cbb2..f9c4b5f 100644
--- a/cc/io_surface_layer.h
+++ b/cc/io_surface_layer.h
@@ -1,3 +1,38 @@
// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+
+
+#ifndef IOSurfaceLayerChromium_h
+#define IOSurfaceLayerChromium_h
+
+#if USE(ACCELERATED_COMPOSITING)
+
+#include "LayerChromium.h"
+
+namespace cc {
+
+class IOSurfaceLayerChromium : public LayerChromium {
+public:
+ static scoped_refptr<IOSurfaceLayerChromium> create();
+
+ void setIOSurfaceProperties(uint32_t ioSurfaceId, const IntSize&);
+
+ virtual scoped_ptr<CCLayerImpl> createCCLayerImpl() OVERRIDE;
+ virtual bool drawsContent() const OVERRIDE;
+ virtual void pushPropertiesTo(CCLayerImpl*) OVERRIDE;
+
+protected:
+ IOSurfaceLayerChromium();
+
+private:
+ virtual ~IOSurfaceLayerChromium();
+
+ uint32_t m_ioSurfaceId;
+ IntSize m_ioSurfaceSize;
+};
+
+}
+#endif // USE(ACCELERATED_COMPOSITING)
+
+#endif