1 // Copyright (c) 2012 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 #ifndef CONTENT_COMMON_GPU_GPU_SURFACE_LOOKUP_H_ 6 #define CONTENT_COMMON_GPU_GPU_SURFACE_LOOKUP_H_ 7 8 #include "ui/gfx/native_widget_types.h" 9 10 namespace content { 11 12 // This class provides an interface to look up window surface handles 13 // that cannot be sent through the IPC channel. 14 class GpuSurfaceLookup { 15 public: 16 GpuSurfaceLookup() { } 17 virtual ~GpuSurfaceLookup() { } 18 19 static GpuSurfaceLookup* GetInstance(); 20 static void InitInstance(GpuSurfaceLookup* lookup); 21 22 virtual gfx::AcceleratedWidget AcquireNativeWidget(int surface_id) = 0; 23 24 private: 25 DISALLOW_COPY_AND_ASSIGN(GpuSurfaceLookup); 26 }; 27 28 } // namespace content 29 30 #endif // CONTENT_COMMON_GPU_GPU_SURFACE_LOOKUP_H_ 31