Home | History | Annotate | Download | only in libGLESv2
      1 //
      2 // Copyright (c) 2012 The ANGLE Project Authors. All rights reserved.
      3 // Use of this source code is governed by a BSD-style license that can be
      4 // found in the LICENSE file.
      5 //
      6 
      7 // Query.h: Defines the gl::Query class
      8 
      9 #ifndef LIBGLESV2_QUERY_H_
     10 #define LIBGLESV2_QUERY_H_
     11 
     12 #define GL_APICALL
     13 #include <GLES2/gl2.h>
     14 
     15 #include "common/angleutils.h"
     16 #include "common/RefCountObject.h"
     17 
     18 namespace rx
     19 {
     20 class Renderer;
     21 class QueryImpl;
     22 }
     23 
     24 namespace gl
     25 {
     26 
     27 class Query : public RefCountObject
     28 {
     29   public:
     30     Query(rx::Renderer *renderer, GLenum type, GLuint id);
     31     virtual ~Query();
     32 
     33     void begin();
     34     void end();
     35 
     36     GLuint getResult();
     37     GLboolean isResultAvailable();
     38 
     39     GLenum getType() const;
     40 
     41   private:
     42     DISALLOW_COPY_AND_ASSIGN(Query);
     43 
     44     rx::QueryImpl *mQuery;
     45 };
     46 
     47 }
     48 
     49 #endif   // LIBGLESV2_QUERY_H_
     50