PURE API 0.5
PR00F's Ultimate Rendering Engine full documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PureHwVideoDiscoverOpenGL_1_3 Class Reference

Pure OpenGL 1.3 capabilities class. More...

Detailed Description

Pure OpenGL 1.3 capabilities class.

Definition at line 22 of file PureHwVideoDiscoverOpenGL_1_3.h.

#include <PureHwVideoDiscoverOpenGL_1_3.h>

+ Inheritance diagram for PureHwVideoDiscoverOpenGL_1_3:

Public Member Functions

 PureHwVideoDiscoverOpenGL_1_3 (const std::string &sVidFeaturesOGL, const std::string &sVidFeaturesWGL, const std::string &sVidVersionOGL, const TPureUInt &nVidVersionGLSLmaj, const TPureUInt &nVidVersionGLSLmin, const TPureInt &nClrBits, const TPureInt &nDpthBits, const TPureInt &nStnclBits)
 
virtual ~PureHwVideoDiscoverOpenGL_1_3 ()
 
virtual std::string getVersion () const
 
virtual bool discoverOpenGLavailability ()
 This method checks for related OpenGL extensions, however final verdict on extension support is declared by Discover...Availability() functions of this class.
 
void DiscoverTextureCompressionAvailability ()
 Query texture compression availability.
 
void DiscoverMultiTexturingAvailability ()
 Query multitexturing availability.
 
void DiscoverFSAAavailability (HDC dc)
 Query FSAA availability.
 
TPureBool isTextureCompressionSupported () const
 Gets whether texture compression is supported or not.
 
TPureBool isVTCSupported () const
 Gets whether Volume Texture Compression is supported or not.
 
TPureBool is3DcSupported () const
 Gets whether 3Dc/ATI2/DXN compression is supported or not.
 
TPureBool isLATCSupported () const
 Gets whether Luminance-Alpha compression is supported or not.
 
TPureBool isMultiTexturingSupported () const
 Gets whether multitexturing is supported or not.
 
TPureInt getTextureUnitsCount () const
 Gets the number of texture units.
 
TPureBool isFullSceneAntiAliasingSupported () const
 Gets whether FSAA is supported or not.
 
TPureInt getMaxSamplesCount () const
 Gets the maximum FSAA level.
 
TPureBool isSamplesSupported (TPureInt numsamples) const
 Gets whether the given MSAA-level is supported or not.
 
- Public Member Functions inherited from PureHwVideoDiscoverOpenGLbase
 PureHwVideoDiscoverOpenGLbase (const std::string &sFtrsOGL, const std::string &sFtrsWGL, const std::string &sVerOGL, const TPureUInt &nVidVerGLSLmaj, const TPureUInt &nVidVerGLSLmin)
 
virtual ~PureHwVideoDiscoverOpenGLbase ()
 
CConsole & getConsole () const
 Returns access to console preset with logger module name as this class.
 

Protected Member Functions

 PureHwVideoDiscoverOpenGL_1_3 ()
 
 PureHwVideoDiscoverOpenGL_1_3 (const PureHwVideoDiscoverOpenGL_1_3 &)
 
PureHwVideoDiscoverOpenGL_1_3operator= (const PureHwVideoDiscoverOpenGL_1_3 &)
 
- Protected Member Functions inherited from PureHwVideoDiscoverOpenGLbase
 PureHwVideoDiscoverOpenGLbase ()
 
 PureHwVideoDiscoverOpenGLbase (const PureHwVideoDiscoverOpenGLbase &)
 
PureHwVideoDiscoverOpenGLbaseoperator= (const PureHwVideoDiscoverOpenGLbase &)
 
TPureBool isExtensionSupported (const char *extname) const
 Is the given extension supported?
 
bool printExtensionSupported (const char *title, const char *name, std::vector< void * > &functions)
 Checks if given extension is supported and prints the result.
 

Private Attributes

const TPureIntnColorBits
 
const TPureIntnDepthBits
 
const TPureIntnStencilBits
 
std::map< GLint, std::string > vTexComprFmts
 List of compressed texture formats with names.
 
TPureBool bSuppTexCompression
 Is texture compression available?
 
TPureBool bSuppVTC
 Is Volume Texture Compression available?
 
TPureBool bSupp3Dc
 Is 3Dc/ATI2/DXN compression supported?
 
TPureBool bSuppLATC
 Is Luminance-Alpha compression supported?
 
TPureBool bSuppMultiTexturing
 Is multitexturing available (fixed func.
 
TPureInt nTMUcount
 Number of texture units.
 
TPureBool bMSAAlevels [MSAA_SUPP_LEVELS_ARRAY_SIZE]
 Is the specified MSAA-level available?
 
TPureInt nMSAAmaxLevel
 Maximum level of MSAA.
 

Static Private Attributes

static const GLint GL_STANDARD_MIN_COMPRESSED_TEXTURE_FORMATS = 4
 
static const TPureInt MSAA_SUPP_LEVELS_ARRAY_SIZE = 33
 Size of array which holds the support of MSAA-levels.
 

Additional Inherited Members

- Static Public Member Functions inherited from PureHwVideoDiscoverOpenGLbase
static TPureBool isExtensionSupported (const char *extname, const std::string &sVidFeaturesOGL, const std::string &sVidFeaturesWGL)
 Is the given extension supported?
 
static void CheckAgainstStandardMinValue (GLint value, GLint stdValue)
 Checks given value against given standard value.
 
static void CheckAgainstStandardMinValuef (GLfloat value, GLfloat stdValue)
 Checks given value against given standard value.
 
static void CheckAgainstStandardRange (GLint val1, GLint val2, GLint stdVal1, GLint stdVal2)
 Checks given range against given standard range.
 
static const char * getLoggerModuleName ()
 Returns the logger module name of this class.
 
- Protected Attributes inherited from PureHwVideoDiscoverOpenGLbase
const TPureUIntnVidVersionGLSLmaj
 GLSL major version.
 
const TPureUIntnVidVersionGLSLmin
 GLSL minor version.
 
GLint tmpRet [6]
 Hold for glGetInteger...() results.
 
GLfloat tmpRetf [2]
 Hold for glGetFloat...() results.
 

Constructor & Destructor Documentation

◆ PureHwVideoDiscoverOpenGL_1_3() [1/3]

PureHwVideoDiscoverOpenGL_1_3::PureHwVideoDiscoverOpenGL_1_3 ( const std::string & sVidFeaturesOGL,
const std::string & sVidFeaturesWGL,
const std::string & sVidVersionOGL,
const TPureUInt & nVidVersionGLSLmaj,
const TPureUInt & nVidVersionGLSLmin,
const TPureInt & nClrBits,
const TPureInt & nDpthBits,
const TPureInt & nStnclBits )
inline

Definition at line 30 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ ~PureHwVideoDiscoverOpenGL_1_3()

virtual PureHwVideoDiscoverOpenGL_1_3::~PureHwVideoDiscoverOpenGL_1_3 ( )
inlinevirtual

Definition at line 149 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ PureHwVideoDiscoverOpenGL_1_3() [2/3]

PureHwVideoDiscoverOpenGL_1_3::PureHwVideoDiscoverOpenGL_1_3 ( )
inlineprotected

Definition at line 496 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ PureHwVideoDiscoverOpenGL_1_3() [3/3]

PureHwVideoDiscoverOpenGL_1_3::PureHwVideoDiscoverOpenGL_1_3 ( const PureHwVideoDiscoverOpenGL_1_3 & )
inlineprotected

Definition at line 512 of file PureHwVideoDiscoverOpenGL_1_3.h.

Member Function Documentation

◆ DiscoverFSAAavailability()

void PureHwVideoDiscoverOpenGL_1_3::DiscoverFSAAavailability ( HDC dc)
inline

Query FSAA availability.

Definition at line 349 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ DiscoverMultiTexturingAvailability()

void PureHwVideoDiscoverOpenGL_1_3::DiscoverMultiTexturingAvailability ( )
inline

Query multitexturing availability.

Definition at line 322 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ discoverOpenGLavailability()

virtual bool PureHwVideoDiscoverOpenGL_1_3::discoverOpenGLavailability ( )
inlinevirtual

This method checks for related OpenGL extensions, however final verdict on extension support is declared by Discover...Availability() functions of this class.

Some higher level manager first invokes this method, then later based on some logic it invokes the Discover...Availability() functions of this class. This class doesn't limit the way you invoke its public functions as this class is not intended to have that kind of logic, however the order is important from the perspective of the logic of the higher-level class, including logging.

Implements PureHwVideoDiscoverOpenGLbase.

Definition at line 162 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ DiscoverTextureCompressionAvailability()

void PureHwVideoDiscoverOpenGL_1_3::DiscoverTextureCompressionAvailability ( )
inline

Query texture compression availability.

Definition at line 269 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ getMaxSamplesCount()

TPureInt PureHwVideoDiscoverOpenGL_1_3::getMaxSamplesCount ( ) const
inline

Gets the maximum FSAA level.

Returns
The maximum available FSAA-level.

Definition at line 480 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ getTextureUnitsCount()

TPureInt PureHwVideoDiscoverOpenGL_1_3::getTextureUnitsCount ( ) const
inline

Gets the number of texture units.

Returns
The number of texture units.

Definition at line 461 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ getVersion()

virtual std::string PureHwVideoDiscoverOpenGL_1_3::getVersion ( ) const
inlinevirtual

Implements PureHwVideoDiscoverOpenGLbase.

Definition at line 151 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ is3DcSupported()

TPureBool PureHwVideoDiscoverOpenGL_1_3::is3DcSupported ( ) const
inline

Gets whether 3Dc/ATI2/DXN compression is supported or not.

Returns
True if 3Dc/ATI2/DXN compression is supported, otherwise false.

Definition at line 434 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ isFullSceneAntiAliasingSupported()

TPureBool PureHwVideoDiscoverOpenGL_1_3::isFullSceneAntiAliasingSupported ( ) const
inline

Gets whether FSAA is supported or not.

Returns
True if FSAA is supported, otherwise false.

Definition at line 470 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ isLATCSupported()

TPureBool PureHwVideoDiscoverOpenGL_1_3::isLATCSupported ( ) const
inline

Gets whether Luminance-Alpha compression is supported or not.

Returns
True if Luminance-Alpha compression is supported, otherwise false.

Definition at line 443 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ isMultiTexturingSupported()

TPureBool PureHwVideoDiscoverOpenGL_1_3::isMultiTexturingSupported ( ) const
inline

Gets whether multitexturing is supported or not.

Returns
True if multitexturing is supported, false otherwise.

Definition at line 452 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ isSamplesSupported()

TPureBool PureHwVideoDiscoverOpenGL_1_3::isSamplesSupported ( TPureInt numsamples) const
inline

Gets whether the given MSAA-level is supported or not.

Returns
True if the given MSAA-level is supported, otherwise false.

Definition at line 490 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ isTextureCompressionSupported()

TPureBool PureHwVideoDiscoverOpenGL_1_3::isTextureCompressionSupported ( ) const
inline

Gets whether texture compression is supported or not.

Returns
True if texture compression is supported, otherwise false.

Definition at line 416 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ isVTCSupported()

TPureBool PureHwVideoDiscoverOpenGL_1_3::isVTCSupported ( ) const
inline

Gets whether Volume Texture Compression is supported or not.

Returns
True if Volume Texture Compression is supported, otherwise false.

Definition at line 425 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ operator=()

PureHwVideoDiscoverOpenGL_1_3 & PureHwVideoDiscoverOpenGL_1_3::operator= ( const PureHwVideoDiscoverOpenGL_1_3 & )
inlineprotected

Definition at line 517 of file PureHwVideoDiscoverOpenGL_1_3.h.

Member Data Documentation

◆ bMSAAlevels

TPureBool PureHwVideoDiscoverOpenGL_1_3::bMSAAlevels[MSAA_SUPP_LEVELS_ARRAY_SIZE]
private

Is the specified MSAA-level available?

Definition at line 535 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ bSupp3Dc

TPureBool PureHwVideoDiscoverOpenGL_1_3::bSupp3Dc
private

Is 3Dc/ATI2/DXN compression supported?

Definition at line 531 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ bSuppLATC

TPureBool PureHwVideoDiscoverOpenGL_1_3::bSuppLATC
private

Is Luminance-Alpha compression supported?

Definition at line 532 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ bSuppMultiTexturing

TPureBool PureHwVideoDiscoverOpenGL_1_3::bSuppMultiTexturing
private

Is multitexturing available (fixed func.

pipeline)?

Definition at line 533 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ bSuppTexCompression

TPureBool PureHwVideoDiscoverOpenGL_1_3::bSuppTexCompression
private

Is texture compression available?

Definition at line 529 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ bSuppVTC

TPureBool PureHwVideoDiscoverOpenGL_1_3::bSuppVTC
private

Is Volume Texture Compression available?

Definition at line 530 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ GL_STANDARD_MIN_COMPRESSED_TEXTURE_FORMATS

const GLint PureHwVideoDiscoverOpenGL_1_3::GL_STANDARD_MIN_COMPRESSED_TEXTURE_FORMATS = 4
staticprivate

Definition at line 520 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ MSAA_SUPP_LEVELS_ARRAY_SIZE

const TPureInt PureHwVideoDiscoverOpenGL_1_3::MSAA_SUPP_LEVELS_ARRAY_SIZE = 33
staticprivate

Size of array which holds the support of MSAA-levels.

Definition at line 521 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ nColorBits

const TPureInt& PureHwVideoDiscoverOpenGL_1_3::nColorBits
private

Definition at line 523 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ nDepthBits

const TPureInt& PureHwVideoDiscoverOpenGL_1_3::nDepthBits
private

Definition at line 524 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ nMSAAmaxLevel

TPureInt PureHwVideoDiscoverOpenGL_1_3::nMSAAmaxLevel
private

Maximum level of MSAA.

Definition at line 536 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ nStencilBits

const TPureInt& PureHwVideoDiscoverOpenGL_1_3::nStencilBits
private

Definition at line 525 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ nTMUcount

TPureInt PureHwVideoDiscoverOpenGL_1_3::nTMUcount
private

Number of texture units.

Definition at line 534 of file PureHwVideoDiscoverOpenGL_1_3.h.

◆ vTexComprFmts

std::map<GLint, std::string> PureHwVideoDiscoverOpenGL_1_3::vTexComprFmts
private

List of compressed texture formats with names.

Definition at line 528 of file PureHwVideoDiscoverOpenGL_1_3.h.


The documentation for this class was generated from the following file: