blob: 79fec10cb1cdf987556fc42373a1445035dee510 [file] [log] [blame]
daniel@transgaming.com86bdb822012-01-20 18:24:39 +00001//
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.cpp: Implements the gl::Query class
8
9#include "libGLESv2/Query.h"
shannon.woods@transgaming.comb32e1982013-02-28 23:02:59 +000010#include "libGLESv2/renderer/QueryImpl.h"
shannon.woods@transgaming.com486d9e92013-02-28 23:15:41 +000011#include "libGLESv2/renderer/Renderer.h"
daniel@transgaming.com86bdb822012-01-20 18:24:39 +000012
13namespace gl
14{
15
shannon.woods@transgaming.comb32e1982013-02-28 23:02:59 +000016Query::Query(rx::Renderer *renderer, GLenum type, GLuint id) : RefCountObject(id)
daniel@transgaming.com86bdb822012-01-20 18:24:39 +000017{
shannon.woods@transgaming.comb32e1982013-02-28 23:02:59 +000018 mQuery = renderer->createQuery(type);
daniel@transgaming.com86bdb822012-01-20 18:24:39 +000019}
20
21Query::~Query()
22{
shannon.woods@transgaming.comb32e1982013-02-28 23:02:59 +000023 delete mQuery;
daniel@transgaming.com86bdb822012-01-20 18:24:39 +000024}
25
26void Query::begin()
27{
shannon.woods@transgaming.comb32e1982013-02-28 23:02:59 +000028 mQuery->begin();
daniel@transgaming.com86bdb822012-01-20 18:24:39 +000029}
30
31void Query::end()
32{
shannon.woods@transgaming.comb32e1982013-02-28 23:02:59 +000033 mQuery->end();
daniel@transgaming.com86bdb822012-01-20 18:24:39 +000034}
35
36GLuint Query::getResult()
37{
shannon.woods@transgaming.comb32e1982013-02-28 23:02:59 +000038 return mQuery->getResult();
daniel@transgaming.com86bdb822012-01-20 18:24:39 +000039}
40
41GLboolean Query::isResultAvailable()
42{
shannon.woods@transgaming.comb32e1982013-02-28 23:02:59 +000043 return mQuery->isResultAvailable();
daniel@transgaming.com86bdb822012-01-20 18:24:39 +000044}
45
46GLenum Query::getType() const
47{
shannon.woods@transgaming.comb32e1982013-02-28 23:02:59 +000048 return mQuery->getType();
daniel@transgaming.com86bdb822012-01-20 18:24:39 +000049}
50
daniel@transgaming.com86bdb822012-01-20 18:24:39 +000051}