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 19 SurfaceFactoryOzone::SurfaceFactoryOzone() { 20 DCHECK(!impl_) << "There should only be a single SurfaceFactoryOzone."; 21 impl_ = this; 22 } 23 24 SurfaceFactoryOzone::~SurfaceFactoryOzone() { 25 DCHECK_EQ(impl_, this); 26 impl_ = NULL; 27 } 28 29 SurfaceFactoryOzone* SurfaceFactoryOzone::GetInstance() { 30 DCHECK(impl_) << "No SurfaceFactoryOzone implementation set."; 31 return impl_; 32 } 33 34 intptr_t SurfaceFactoryOzone::GetNativeDisplay() { 35 return 0; 36 } 37 38 scoped_ptr<SurfaceOzoneEGL> SurfaceFactoryOzone::CreateEGLSurfaceForWidget( 39 gfx::AcceleratedWidget widget) { 40 NOTIMPLEMENTED(); 41 return scoped_ptr<SurfaceOzoneEGL>(); 42 } 43 44 scoped_ptr<SurfaceOzoneEGL> 45 SurfaceFactoryOzone::CreateSurfacelessEGLSurfaceForWidget( 46 gfx::AcceleratedWidget widget) { 47 NOTIMPLEMENTED(); 48 return scoped_ptr<SurfaceOzoneEGL>(); 49 } 50 51 scoped_ptr<SurfaceOzoneCanvas> SurfaceFactoryOzone::CreateCanvasForWidget( 52 gfx::AcceleratedWidget widget) { 53 NOTIMPLEMENTED(); 54 return scoped_ptr<SurfaceOzoneCanvas>(); 55 } 56 57 const int32* SurfaceFactoryOzone::GetEGLSurfaceProperties( 58 const int32* desired_attributes) { 59 return desired_attributes; 60 } 61 62 ui::OverlayCandidatesOzone* SurfaceFactoryOzone::GetOverlayCandidates( 63 gfx::AcceleratedWidget w) { 64 return NULL; 65 } 66 67 scoped_refptr<ui::NativePixmap> SurfaceFactoryOzone::CreateNativePixmap( 68 gfx::Size size, 69 BufferFormat format) { 70 return NULL; 71 } 72 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 83 bool SurfaceFactoryOzone::CanShowPrimaryPlaneAsOverlay() { 84 return false; 85 } 86 } // namespace ui 87