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  scoped_refptr<gfx::GLSurface> surface =
17      gfx::GLSurface::CreateViewGLSurface(handle.handle);
18  if (!surface.get())
19    return surface;
20  return scoped_refptr<gfx::GLSurface>(new PassThroughImageTransportSurface(
21      manager, stub, surface.get()));
22}
23
24}  // namespace content
25