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.cpp: Implements the gl::Query class
8 
9 #include "libANGLE/Query.h"
10 #include "libANGLE/renderer/QueryImpl.h"
11 
12 namespace gl
13 {
Query(rx::QueryImpl * impl,GLuint id)14 Query::Query(rx::QueryImpl *impl, GLuint id) : RefCountObject(id), mQuery(impl), mLabel()
15 {
16 }
17 
~Query()18 Query::~Query()
19 {
20     SafeDelete(mQuery);
21 }
22 
setLabel(const std::string & label)23 void Query::setLabel(const std::string &label)
24 {
25     mLabel = label;
26 }
27 
getLabel() const28 const std::string &Query::getLabel() const
29 {
30     return mLabel;
31 }
32 
begin()33 Error Query::begin()
34 {
35     return mQuery->begin();
36 }
37 
end()38 Error Query::end()
39 {
40     return mQuery->end();
41 }
42 
queryCounter()43 Error Query::queryCounter()
44 {
45     return mQuery->queryCounter();
46 }
47 
getResult(GLint * params)48 Error Query::getResult(GLint *params)
49 {
50     return mQuery->getResult(params);
51 }
52 
getResult(GLuint * params)53 Error Query::getResult(GLuint *params)
54 {
55     return mQuery->getResult(params);
56 }
57 
getResult(GLint64 * params)58 Error Query::getResult(GLint64 *params)
59 {
60     return mQuery->getResult(params);
61 }
62 
getResult(GLuint64 * params)63 Error Query::getResult(GLuint64 *params)
64 {
65     return mQuery->getResult(params);
66 }
67 
isResultAvailable(bool * available)68 Error Query::isResultAvailable(bool *available)
69 {
70     return mQuery->isResultAvailable(available);
71 }
72 
getType() const73 GLenum Query::getType() const
74 {
75     return mQuery->getType();
76 }
77 
getImplementation()78 rx::QueryImpl *Query::getImplementation()
79 {
80     return mQuery;
81 }
82 
getImplementation() const83 const rx::QueryImpl *Query::getImplementation() const
84 {
85     return mQuery;
86 }
87 }
88