1 // Copyright (c) 2017 OPEN CASCADE SAS
3 // This file is part of Open CASCADE Technology software library.
5 // This library is free software; you can redistribute it and/or modify it under
6 // the terms of the GNU Lesser General Public License version 2.1 as published
7 // by the Free Software Foundation, with special exception defined in the file
8 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9 // distribution for complete text of the license and disclaimer of any warranty.
11 // Alternatively, this file may be used under the terms of Open CASCADE
12 // commercial license or contractual agreement.
14 #ifndef _OpenGl_ArbSamplerObject_Header
15 #define _OpenGl_ArbSamplerObject_Header
17 #include <OpenGl_GlFunctions.hxx>
19 //! Provide Sampler Object functionality (texture parameters stored independently from texture itself).
20 //! Available since OpenGL 3.3+ (GL_ARB_sampler_objects extension) and OpenGL ES 3.0+.
21 struct OpenGl_ArbSamplerObject : protected OpenGl_GlFunctions
23 using OpenGl_GlFunctions::glGenSamplers;
24 using OpenGl_GlFunctions::glDeleteSamplers;
25 using OpenGl_GlFunctions::glIsSampler;
26 using OpenGl_GlFunctions::glBindSampler;
27 using OpenGl_GlFunctions::glSamplerParameteri;
28 using OpenGl_GlFunctions::glSamplerParameteriv;
29 using OpenGl_GlFunctions::glSamplerParameterf;
30 using OpenGl_GlFunctions::glSamplerParameterfv;
31 using OpenGl_GlFunctions::glGetSamplerParameteriv;
32 using OpenGl_GlFunctions::glGetSamplerParameterfv;
34 #if !defined(GL_ES_VERSION_2_0)
35 using OpenGl_GlFunctions::glSamplerParameterIiv;
36 using OpenGl_GlFunctions::glSamplerParameterIuiv;
37 using OpenGl_GlFunctions::glGetSamplerParameterIiv;
38 using OpenGl_GlFunctions::glGetSamplerParameterIuiv;
43 #endif // _OpenGl_ArbSamplerObject_Header