image_transport_surface_linux.cc revision 90dce4d38c5ff5333bea97d859d4e484e27edf0c
1// Copyright 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 "content/common/gpu/image_transport_surface.h" 6 7namespace content { 8 9// static 10scoped_refptr<gfx::GLSurface> ImageTransportSurface::CreateNativeSurface( 11 GpuChannelManager* manager, 12 GpuCommandBufferStub* stub, 13 const gfx::GLSurfaceHandle& handle) { 14 DCHECK(handle.handle); 15 DCHECK(handle.transport_type == gfx::NATIVE_DIRECT || 16 handle.transport_type == gfx::NATIVE_TRANSPORT); 17 scoped_refptr<gfx::GLSurface> surface = 18 gfx::GLSurface::CreateViewGLSurface(false, handle.handle); 19 if (!surface) 20 return surface; 21 return scoped_refptr<gfx::GLSurface>(new PassThroughImageTransportSurface( 22 manager, stub, surface.get(), handle.is_transport())); 23} 24 25} // namespace content 26