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 UI_GL_GL_FENCE_H_ 6#define UI_GL_GL_FENCE_H_ 7 8#include "base/basictypes.h" 9#include "ui/gl/gl_export.h" 10 11namespace gfx { 12 13class GL_EXPORT GLFence { 14 public: 15 GLFence(); 16 virtual ~GLFence(); 17 18 static GLFence* Create(); 19 virtual bool HasCompleted() = 0; 20 virtual void ClientWait() = 0; 21 22 protected: 23 static bool IsContextLost(); 24 25 private: 26 DISALLOW_COPY_AND_ASSIGN(GLFence); 27}; 28 29} // namespace gfx 30 31#endif // UI_GL_GL_FENCE_H_ 32