Open Inventor Release 2024.2.1
 
Loading...
Searching...
No Matches
SoXtGLGraphicConfig.h
1/*=======================================================================
2 *** THE CONTENT OF THIS WORK IS PROPRIETARY TO FEI S.A.S, (FEI S.A.S.), ***
3 *** AND IS DISTRIBUTED UNDER A LICENSE AGREEMENT. ***
4 *** ***
5 *** REPRODUCTION, DISCLOSURE, OR USE, IN WHOLE OR IN PART, OTHER THAN AS ***
6 *** SPECIFIED IN THE LICENSE ARE NOT TO BE UNDERTAKEN EXCEPT WITH PRIOR ***
7 *** WRITTEN AUTHORIZATION OF FEI S.A.S. ***
8 *** ***
9 *** RESTRICTED RIGHTS LEGEND ***
10 *** USE, DUPLICATION, OR DISCLOSURE BY THE GOVERNMENT OF THE CONTENT OF THIS ***
11 *** WORK OR RELATED DOCUMENTATION IS SUBJECT TO RESTRICTIONS AS SET FORTH IN ***
12 *** SUBPARAGRAPH (C)(1) OF THE COMMERCIAL COMPUTER SOFTWARE RESTRICTED RIGHT ***
13 *** CLAUSE AT FAR 52.227-19 OR SUBPARAGRAPH (C)(1)(II) OF THE RIGHTS IN ***
14 *** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 52.227-7013. ***
15 *** ***
16 *** COPYRIGHT (C) 1996-2017 BY FEI S.A.S, ***
17 *** BORDEAUX, FRANCE ***
18 *** ALL RIGHTS RESERVED ***
19**=======================================================================*/
20/*=======================================================================
21** Author : VSG (MMM YYYY)
22**=======================================================================*/
23#ifndef _SO_XT_GL_GRAPHIC_CONFIG_H_
24#define _SO_XT_GL_GRAPHIC_CONFIG_H_
25
26#include <Inventor/components/SoGLGraphicConfig.h>
27#include <Inventor/components/SoGLGraphicDevice.h>
28#include <Inventor/helpers/SbGlContextHelper.h>
29
30class SoGLGraphicDevicePeer;
31
51
52 public:
53
58 virtual SbBool isDoubleBuffer() const;
59
63 virtual SbBool isStereoBuffer() const;
64
68 virtual SbBool isAccelerated() const;
69
77 virtual void getDepth(int &bits) const;
78
84 virtual void getRGBAColor(int &redBits,
85 int &greenBits,
86 int &blueBits,
87 int &alphaBits) const;
88
94 virtual void getFloatRGBAColor(int &redBits,
95 int &greenBits,
96 int &blueBits,
97 int &alphaBits) const;
98
99
105 virtual void getAccum(int &redBits,
106 int &greenBits,
107 int &blueBits,
108 int &alphaBits) const;
109
114 virtual void getStencil(int &bits) const;
115
120 virtual SbBool getFullSceneAntialiasing(int &bits) const;
121
126
130 GLXFBConfig *getFBConfig();
131
132 private:
133
134 static SoGLGraphicConfig *getConfig(SoGLGraphicDevicePeer *device, SbGlContextHelper::VisualInfo visual);
135
136 static SoGLGraphicConfig *getConfig(SoGLGraphicDevicePeer *device,
137 GLXFBConfig *fbConfig);
138
139 virtual SbBool isValid() const;
140
141 static int getMaxFsaaSamples();
142
143 virtual ~SoXtGLGraphicConfig();
144
145 SoINTERNAL private:
146
147 SoXtGLGraphicConfig(SoGLGraphicDevicePeer *device, SbGlContextHelper::VisualInfo visual);
148 SoXtGLGraphicConfig(SoGLGraphicDevicePeer *device, GLXFBConfig fbConfig);
150
151 private:
152
153 SbBool buildDescription();
154
155 SbBool m_supportMultiSample;
156 int m_numSamples;
157
158 SoGLGraphicDevicePeer *m_device;
160 GLXFBConfig m_fbConfig;
161 SbBool m_isValid;
162 int m_bufferBits;
163 int m_level;
164 SbBool m_isIndexedColor;
165 SbBool m_isDoubleBuffer;
166 SbBool m_supportsStereo;
167 int m_redBits, m_greenBits, m_blueBits, m_alphaBits;
168 int m_auxBuffers;
169 int m_depthBits;
170 int m_stencilBits;
171 int m_accumRedBits, m_accumGreenBits, m_accumBlueBits, m_accumAlphaBits;
172};
173
174#endif /* _SO_XT_GL_GRAPHIC_CONFIG_H_ */
175
176
177
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Defines an OpenG...
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Represents an Op...
virtual SbBool getFullSceneAntialiasing(int &bits) const
Returns the availability of the hardware full-scene antialiasing feature.
virtual void getDepth(int &bits) const
Returns the Z-buffer depth.
GLXFBConfig * getFBConfig()
Returns the Frame Buffer Configuration.
virtual SbBool isDoubleBuffer() const
Returns TRUE if double buffer mode is enabled, else FALSE (single buffer mode).
virtual SbBool isAccelerated() const
Returns TRUE if the OpenGL graphics configuration is accelerated.
virtual void getFloatRGBAColor(int &redBits, int &greenBits, int &blueBits, int &alphaBits) const
Returns the floating point color depth (red, green, blue, and alpha).
virtual void getRGBAColor(int &redBits, int &greenBits, int &blueBits, int &alphaBits) const
Returns the color depth (red, green, blue, and alpha).
virtual void getStencil(int &bits) const
Returns the stencil buffer depth.
virtual void getAccum(int &redBits, int &greenBits, int &blueBits, int &alphaBits) const
Returns the accumulation buffer depth (red, green, blue, and alpha).
virtual SbBool isStereoBuffer() const
Returns TRUE if stereo buffer mode is supported.
SbGlContextHelper::VisualInfo getXVisualInfo()
Returns the X visual information.
int SbBool
Boolean type.
Definition SbBase.h:87