• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "ui/ozone/public/surface_factory_ozone.h"
6 
7 #include <stdlib.h>
8 
9 #include "base/command_line.h"
10 #include "ui/ozone/public/native_pixmap.h"
11 #include "ui/ozone/public/surface_ozone_canvas.h"
12 #include "ui/ozone/public/surface_ozone_egl.h"
13 
14 namespace ui {
15 
16 // static
17 SurfaceFactoryOzone* SurfaceFactoryOzone::impl_ = NULL;
18 
SurfaceFactoryOzone()19 SurfaceFactoryOzone::SurfaceFactoryOzone() {
20   DCHECK(!impl_) << "There should only be a single SurfaceFactoryOzone.";
21   impl_ = this;
22 }
23 
~SurfaceFactoryOzone()24 SurfaceFactoryOzone::~SurfaceFactoryOzone() {
25   DCHECK_EQ(impl_, this);
26   impl_ = NULL;
27 }
28 
GetInstance()29 SurfaceFactoryOzone* SurfaceFactoryOzone::GetInstance() {
30   DCHECK(impl_) << "No SurfaceFactoryOzone implementation set.";
31   return impl_;
32 }
33 
GetNativeDisplay()34 intptr_t SurfaceFactoryOzone::GetNativeDisplay() {
35   return 0;
36 }
37 
CreateEGLSurfaceForWidget(gfx::AcceleratedWidget widget)38 scoped_ptr<SurfaceOzoneEGL> SurfaceFactoryOzone::CreateEGLSurfaceForWidget(
39     gfx::AcceleratedWidget widget) {
40   NOTIMPLEMENTED();
41   return scoped_ptr<SurfaceOzoneEGL>();
42 }
43 
44 scoped_ptr<SurfaceOzoneEGL>
CreateSurfacelessEGLSurfaceForWidget(gfx::AcceleratedWidget widget)45 SurfaceFactoryOzone::CreateSurfacelessEGLSurfaceForWidget(
46     gfx::AcceleratedWidget widget) {
47   NOTIMPLEMENTED();
48   return scoped_ptr<SurfaceOzoneEGL>();
49 }
50 
CreateCanvasForWidget(gfx::AcceleratedWidget widget)51 scoped_ptr<SurfaceOzoneCanvas> SurfaceFactoryOzone::CreateCanvasForWidget(
52     gfx::AcceleratedWidget widget) {
53   NOTIMPLEMENTED();
54   return scoped_ptr<SurfaceOzoneCanvas>();
55 }
56 
GetEGLSurfaceProperties(const int32 * desired_attributes)57 const int32* SurfaceFactoryOzone::GetEGLSurfaceProperties(
58     const int32* desired_attributes) {
59   return desired_attributes;
60 }
61 
GetOverlayCandidates(gfx::AcceleratedWidget w)62 ui::OverlayCandidatesOzone* SurfaceFactoryOzone::GetOverlayCandidates(
63     gfx::AcceleratedWidget w) {
64   return NULL;
65 }
66 
CreateNativePixmap(gfx::Size size,BufferFormat format)67 scoped_refptr<ui::NativePixmap> SurfaceFactoryOzone::CreateNativePixmap(
68     gfx::Size size,
69     BufferFormat format) {
70   return NULL;
71 }
72 
ScheduleOverlayPlane(gfx::AcceleratedWidget widget,int plane_z_order,gfx::OverlayTransform plane_transform,scoped_refptr<NativePixmap> buffer,const gfx::Rect & display_bounds,const gfx::RectF & crop_rect)73 bool SurfaceFactoryOzone::ScheduleOverlayPlane(
74     gfx::AcceleratedWidget widget,
75     int plane_z_order,
76     gfx::OverlayTransform plane_transform,
77     scoped_refptr<NativePixmap> buffer,
78     const gfx::Rect& display_bounds,
79     const gfx::RectF& crop_rect) {
80   return false;
81 }
82 
CanShowPrimaryPlaneAsOverlay()83 bool SurfaceFactoryOzone::CanShowPrimaryPlaneAsOverlay() {
84   return false;
85 }
86 }  // namespace ui
87