Home | History | Annotate | Download | only in gl
      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_CONTEXT_STUB_H_
      6 #define UI_GL_GL_CONTEXT_STUB_H_
      7 
      8 #include "ui/gl/gl_context.h"
      9 
     10 namespace gfx {
     11 
     12 // A GLContext that does nothing for unit tests.
     13 class GL_EXPORT GLContextStub : public GLContextReal {
     14  public:
     15   GLContextStub();
     16 
     17   // Implement GLContext.
     18   virtual bool Initialize(GLSurface* compatible_surface,
     19                           GpuPreference gpu_preference) OVERRIDE;
     20   virtual void Destroy() OVERRIDE;
     21   virtual bool MakeCurrent(GLSurface* surface) OVERRIDE;
     22   virtual void ReleaseCurrent(GLSurface* surface) OVERRIDE;
     23   virtual bool IsCurrent(GLSurface* surface) OVERRIDE;
     24   virtual void* GetHandle() OVERRIDE;
     25   virtual void SetSwapInterval(int interval) OVERRIDE;
     26   virtual std::string GetExtensions() OVERRIDE;
     27   virtual std::string GetGLRenderer() OVERRIDE;
     28 
     29  protected:
     30   virtual ~GLContextStub();
     31 
     32  private:
     33   DISALLOW_COPY_AND_ASSIGN(GLContextStub);
     34 };
     35 
     36 }  // namespace gfx
     37 
     38 #endif  // UI_GL_GL_CONTEXT_STUB_H_
     39