0027816: Visualization - provide an API for overriding clipping planes list
[occt.git] / src / OpenGl / OpenGl_ArbFBO.hxx
1 // Created on: 2012-01-26
2 // Created by: Kirill GAVRILOV
3 // Copyright (c) 2012-2014 OPEN CASCADE SAS
4 //
5 // This file is part of Open CASCADE Technology software library.
6 //
7 // This library is free software; you can redistribute it and/or modify it under
8 // the terms of the GNU Lesser General Public License version 2.1 as published
9 // by the Free Software Foundation, with special exception defined in the file
10 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11 // distribution for complete text of the license and disclaimer of any warranty.
12 //
13 // Alternatively, this file may be used under the terms of Open CASCADE
14 // commercial license or contractual agreement.
15
16 #ifndef _OpenGl_ArbFBO_H__
17 #define _OpenGl_ArbFBO_H__
18
19 #include <OpenGl_GlFunctions.hxx>
20
21 //! FBO is available on OpenGL 2.0+ hardware
22 struct OpenGl_ArbFBO : protected OpenGl_GlFunctions
23 {
24
25   using OpenGl_GlFunctions::glIsRenderbuffer;
26   using OpenGl_GlFunctions::glBindRenderbuffer;
27   using OpenGl_GlFunctions::glDeleteRenderbuffers;
28   using OpenGl_GlFunctions::glGenRenderbuffers;
29   using OpenGl_GlFunctions::glRenderbufferStorage;
30   using OpenGl_GlFunctions::glGetRenderbufferParameteriv;
31   using OpenGl_GlFunctions::glIsFramebuffer;
32   using OpenGl_GlFunctions::glBindFramebuffer;
33   using OpenGl_GlFunctions::glDeleteFramebuffers;
34   using OpenGl_GlFunctions::glGenFramebuffers;
35   using OpenGl_GlFunctions::glCheckFramebufferStatus;
36   using OpenGl_GlFunctions::glFramebufferTexture2D;
37   using OpenGl_GlFunctions::glFramebufferRenderbuffer;
38   using OpenGl_GlFunctions::glGetFramebufferAttachmentParameteriv;
39   using OpenGl_GlFunctions::glGenerateMipmap;
40
41 #if !defined(GL_ES_VERSION_2_0)
42   using OpenGl_GlFunctions::glBlitFramebuffer;
43   using OpenGl_GlFunctions::glFramebufferTexture1D;
44   using OpenGl_GlFunctions::glFramebufferTexture3D;
45   using OpenGl_GlFunctions::glFramebufferTextureLayer;
46   using OpenGl_GlFunctions::glRenderbufferStorageMultisample;
47 #endif
48
49 };
50
51 //! FBO blit is available in OpenGL 3.0+.
52 //! Moved out from OpenGl_ArbFBO since it is unavailable in OpenGL ES 2.0.
53 struct OpenGl_ArbFBOBlit : protected OpenGl_GlFunctions
54 {
55
56   using OpenGl_GlFunctions::glBlitFramebuffer;
57
58 };
59
60 #endif // _OpenGl_ArbFBO_H__