1 // Created on: 2013-08-25
2 // Created by: Kirill GAVRILOV
3 // Copyright (c) 2013-2014 OPEN CASCADE SAS
5 // This file is part of Open CASCADE Technology software library.
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.
13 // Alternatively, this file may be used under the terms of Open CASCADE
14 // commercial license or contractual agreement.
16 #include <OpenGl_Caps.hxx>
18 #include <OpenGl_GlCore20.hxx>
20 IMPLEMENT_STANDARD_RTTIEXT(OpenGl_Caps,Standard_Transient)
22 // =======================================================================
23 // function : OpenGl_Caps
25 // =======================================================================
26 OpenGl_Caps::OpenGl_Caps()
27 : sRGBDisable (Standard_False),
28 compressedTexturesDisable (Standard_False),
29 vboDisable (Standard_False),
30 pntSpritesDisable (Standard_False),
31 keepArrayData (Standard_False),
32 ffpEnable (Standard_False),
33 usePolygonMode (Standard_False),
34 #if !defined(GL_ES_VERSION_2_0)
35 useSystemBuffer (Standard_False),
37 useSystemBuffer (Standard_True),
40 buffersNoSwap (Standard_False),
41 buffersOpaqueAlpha(Standard_False),
42 contextStereo (Standard_False),
44 contextDebug (Standard_True),
45 contextSyncDebug (Standard_True),
47 contextDebug (Standard_False),
48 contextSyncDebug (Standard_False),
50 contextNoAccel (Standard_False),
51 #if !defined(GL_ES_VERSION_2_0)
52 contextCompatible (Standard_True),
54 contextCompatible (Standard_False),
56 contextNoExtensions (Standard_False),
57 contextMajorVersionUpper (-1),
58 contextMinorVersionUpper (-1),
59 isTopDownTextureUV(Standard_False),
60 glslWarnings (Standard_False),
61 suppressExtraMsg (Standard_True),
62 glslDumpLevel (OpenGl_ShaderProgramDumpLevel_Off)
67 // =======================================================================
68 // function : operator=
70 // =======================================================================
71 OpenGl_Caps& OpenGl_Caps::operator= (const OpenGl_Caps& theCopy)
73 sRGBDisable = theCopy.sRGBDisable;
74 compressedTexturesDisable = theCopy.compressedTexturesDisable;
75 vboDisable = theCopy.vboDisable;
76 pntSpritesDisable = theCopy.pntSpritesDisable;
77 keepArrayData = theCopy.keepArrayData;
78 ffpEnable = theCopy.ffpEnable;
79 useSystemBuffer = theCopy.useSystemBuffer;
80 swapInterval = theCopy.swapInterval;
81 buffersNoSwap = theCopy.buffersNoSwap;
82 buffersOpaqueAlpha= theCopy.buffersOpaqueAlpha;
83 contextStereo = theCopy.contextStereo;
84 contextDebug = theCopy.contextDebug;
85 contextSyncDebug = theCopy.contextSyncDebug;
86 contextNoAccel = theCopy.contextNoAccel;
87 contextCompatible = theCopy.contextCompatible;
88 contextNoExtensions = theCopy.contextNoExtensions;
89 contextMajorVersionUpper = theCopy.contextMajorVersionUpper;
90 contextMinorVersionUpper = theCopy.contextMinorVersionUpper;
91 isTopDownTextureUV = theCopy.isTopDownTextureUV;
92 glslWarnings = theCopy.glslWarnings;
93 suppressExtraMsg = theCopy.suppressExtraMsg;
94 glslDumpLevel = theCopy.glslDumpLevel;
98 // =======================================================================
99 // function : ~OpenGl_Caps
101 // =======================================================================
102 OpenGl_Caps::~OpenGl_Caps()