blob: e1b8f020ae457656da103a01ec37f44a3c2fc4cc [file] [log] [blame]
Geoff Langff5b2d52016-09-07 11:32:23 -04001//
2// Copyright (c) 2016 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// queryutils.h: Utilities for querying values from GL objects
8
9#ifndef LIBANGLE_QUERYUTILS_H_
10#define LIBANGLE_QUERYUTILS_H_
11
12#include "angle_gl.h"
13#include "common/angleutils.h"
14
15namespace gl
16{
17class Buffer;
18class Framebuffer;
19class Program;
Geoff Lang740d9022016-10-07 11:20:52 -040020class Renderbuffer;
Geoff Langc1984ed2016-10-07 12:41:00 -040021class Sampler;
Geoff Langd7d0ed32016-10-07 11:33:51 -040022class Shader;
Geoff Langc1984ed2016-10-07 12:41:00 -040023class Texture;
Geoff Langff5b2d52016-09-07 11:32:23 -040024
25void QueryFramebufferAttachmentParameteriv(const Framebuffer *framebuffer,
26 GLenum attachment,
27 GLenum pname,
28 GLint *params);
29void QueryBufferParameteriv(const Buffer *buffer, GLenum pname, GLint *params);
30void QueryProgramiv(const Program *program, GLenum pname, GLint *params);
Geoff Lang740d9022016-10-07 11:20:52 -040031void QueryRenderbufferiv(const Renderbuffer *renderbuffer, GLenum pname, GLint *params);
Geoff Langd7d0ed32016-10-07 11:33:51 -040032void QueryShaderiv(const Shader *shader, GLenum pname, GLint *params);
Geoff Langc1984ed2016-10-07 12:41:00 -040033void QueryTexParameterfv(const Texture *texture, GLenum pname, GLfloat *params);
34void QueryTexParameteriv(const Texture *texture, GLenum pname, GLint *params);
35void QuerySamplerParameterfv(const Sampler *sampler, GLenum pname, GLfloat *params);
36void QuerySamplerParameteriv(const Sampler *sampler, GLenum pname, GLint *params);
37
38void SetTexParameterf(Texture *texture, GLenum pname, GLfloat param);
39void SetTexParameterfv(Texture *texture, GLenum pname, const GLfloat *params);
40void SetTexParameteri(Texture *texture, GLenum pname, GLint param);
41void SetTexParameteriv(Texture *texture, GLenum pname, const GLint *params);
42
43void SetSamplerParameterf(Sampler *sampler, GLenum pname, GLfloat param);
44void SetSamplerParameterfv(Sampler *sampler, GLenum pname, const GLfloat *params);
45void SetSamplerParameteri(Sampler *sampler, GLenum pname, GLint param);
46void SetSamplerParameteriv(Sampler *sampler, GLenum pname, const GLint *params);
Geoff Langff5b2d52016-09-07 11:32:23 -040047}
48
49#endif // LIBANGLE_QUERYUTILS_H_