Handle account removal correctly on all platforms.
[chromium-blink-merge.git] / gpu / command_buffer / service / async_pixel_transfer_manager_mac.cc
blob8c19b57d2fbed911a9688e594ce57e50b586588c
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.
5 #include "gpu/command_buffer/service/async_pixel_transfer_manager.h"
7 #include "base/debug/trace_event.h"
8 #include "gpu/command_buffer/service/async_pixel_transfer_manager_idle.h"
9 #include "gpu/command_buffer/service/async_pixel_transfer_manager_stub.h"
10 #include "ui/gl/gl_implementation.h"
12 namespace gpu {
14 AsyncPixelTransferManager* AsyncPixelTransferManager::Create(
15 gfx::GLContext* context) {
16 TRACE_EVENT0("gpu", "AsyncPixelTransferManager::Create");
17 switch (gfx::GetGLImplementation()) {
18 case gfx::kGLImplementationOSMesaGL:
19 case gfx::kGLImplementationDesktopGL:
20 case gfx::kGLImplementationAppleGL:
21 return new AsyncPixelTransferManagerIdle;
22 case gfx::kGLImplementationMockGL:
23 return new AsyncPixelTransferManagerStub;
24 default:
25 NOTREACHED();
26 return NULL;
30 } // namespace gpu