00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef _SO_MAC_GL_GRAPHIC_CONFIG_H_
00025 #define _SO_MAC_GL_GRAPHIC_CONFIG_H_
00026
00027 #ifdef __APPLE__
00028
00029 #include <Inventor/components/SoGLGraphicConfig.h>
00030 #include <Inventor/components/SoGLGraphicDevice.h>
00031
00032 class SoGLGraphicDevicePeer;
00033
00034
00035
00036
00037
00054 class SoMacGLGraphicConfig : public SoGLGraphicConfig {
00055
00056 public:
00057
00062 SbBool isDoubleBuffer() const;
00063
00067 SbBool isStereoBuffer() const;
00068
00072 SbBool isAccelerated() const;
00073
00078 void getDepth(int &bits) const;
00079
00080 #if 1 SoDEPRECATED
00086 SbBool hasOverlays() const;
00087 SoDEPRECATED
00094 void getIndexedColor(int &bits) const;
00095 #endif
00102 void getRGBAColor(int &redBits,
00103 int &greenBits,
00104 int &blueBits,
00105 int &alphaBits) const;
00106
00113 void getFloatRGBAColor(int &redBits,
00114 int &greenBits,
00115 int &blueBits,
00116 int &alphaBits) const;
00117
00123 void getAccum(int &redBits,
00124 int &greenBits,
00125 int &blueBits,
00126 int &alphaBits) const;
00127
00132 void getStencil(int &bits) const;
00133
00138 virtual SbBool getFullSceneAntialiasing(int &bits) const;
00139
00143 SbGlContextHelper::VisualInfo getPixelFormat() const;
00144
00145 private:
00146
00147 static SoGLGraphicConfig *getConfig(SoGLGraphicDevicePeer *device,
00148 SbGlContextHelper::VisualInfo pixelFormat);
00149
00150 virtual SbBool isValid() const;
00151
00152 SoINTERNAL private:
00153
00154 SoMacGLGraphicConfig(SoGLGraphicDevicePeer *device, SbGlContextHelper::VisualInfo pixelFormat = NULL);
00155 SoMacGLGraphicConfig(SoMacGLGraphicConfig &config);
00156
00157 private:
00158
00159 SbBool buildDescription();
00160
00161 SoGLGraphicDevicePeer *m_device;
00162 SbGlContextHelper::VisualInfo m_pixelFormat;
00163 SbBool m_isValid;
00164
00165 SbBool m_supportMultiSample;
00166 int m_numSamples;
00167 };
00168
00169 #endif
00170
00171 #endif
00172
00173