Ogre::RenderSystemCapabilities Class Reference
Core » RenderSystem

singleton class for storing the capabilities of the graphics card. More...

`#include <OgreRenderSystemCapabilities.h>`

Inheritance diagram for Ogre::RenderSystemCapabilities:
[legend]

## Public Types

typedef set< String >::type | ShaderProfiles

## Public Member Functions

| RenderSystemCapabilities ()
virtual | ~RenderSystemCapabilities ()
void | addShaderProfile (const String &profile)
| Adds the profile to the list of supported profiles. More...
virtual size_t | calculateSize () const
ushort | getComputeProgramConstantBoolCount (void) const
| The number of boolean constants fragment programs support. More...
ushort | getComputeProgramConstantFloatCount (void) const
| The number of floating-point constants fragment programs support. More...
ushort | getComputeProgramConstantIntCount (void) const
| The number of integer constants fragment programs support. More...
String | getDeviceName () const
| gets the device name for render system More...
DriverVersion | getDriverVersion () const
ushort | getFragmentProgramConstantBoolCount (void) const
| The number of boolean constants fragment programs support. More...
ushort | getFragmentProgramConstantFloatCount (void) const
| The number of floating-point constants fragment programs support. More...
ushort | getFragmentProgramConstantIntCount (void) const
| The number of integer constants fragment programs support. More...
ushort | getGeometryProgramConstantBoolCount (void) const
| The number of boolean constants geometry programs support. More...
ushort | getGeometryProgramConstantFloatCount (void) const
| The number of floating-point constants geometry programs support. More...
ushort | getGeometryProgramConstantIntCount (void) const
| The number of integer constants geometry programs support. More...
int | getGeometryProgramNumOutputVertices (void) const
| Get the number of vertices a single geometry program run can emit. More...
Real | getMaxPointSize (void) const
| Maximum point screen size in pixels. More...
Real | getMaxSupportedAnisotropy ()
| Get the maximum supported anisotropic filtering. More...
bool | getNonPOW2TexturesLimited (void) const
| Are non-power of two textures limited in features? More...
ushort | getNumMultiRenderTargets (void) const
| The number of simultaneous render targets supported. More...
ushort | getNumTextureUnits (void) const
| Returns the number of texture units the current output hardware supports. More...
ushort | getNumVertexBlendMatrices (void) const
| Returns the number of matrices available to hardware vertex blending for this rendering system. More...
ushort | getNumVertexTextureUnits (void) const
| Get the number of vertex texture units supported. More...
ushort | getNumWorldMatrices (void) const
String | getRenderSystemName (void) const
| Get the identifier of the rendersystem from which these capabilities were generated. More...
ushort | getStencilBufferBitDepth (void) const
| Determines the bit depth of the hardware accelerated stencil buffer, if supported. More...
const ShaderProfiles & | getSupportedShaderProfiles () const
| Returns a set of all supported shader profiles. More...
ushort | getTesselationDomainProgramConstantBoolCount (void) const
| The number of boolean constants fragment programs support. More...
ushort | getTesselationDomainProgramConstantFloatCount (void) const
| The number of floating-point constants fragment programs support. More...
ushort | getTesselationDomainProgramConstantIntCount (void) const
| The number of integer constants fragment programs support. More...
ushort | getTesselationHullProgramConstantBoolCount (void) const
| The number of boolean constants fragment programs support. More...
ushort | getTesselationHullProgramConstantFloatCount (void) const
| The number of floating-point constants fragment programs support. More...
ushort | getTesselationHullProgramConstantIntCount (void) const
| The number of integer constants fragment programs support. More...
GPUVendor | getVendor () const
ushort | getVertexProgramConstantBoolCount (void) const
| The number of boolean constants vertex programs support. More...
ushort | getVertexProgramConstantFloatCount (void) const
| The number of floating-point constants vertex programs support. More...
ushort | getVertexProgramConstantIntCount (void) const
| The number of integer constants vertex programs support. More...
bool | getVertexTextureUnitsShared (void) const
| Get whether the vertex texture units are shared with the fragment processor. More...
bool | hasCapability (const Capabilities c) const
| Checks for a capability. More...
bool | isCapabilityRenderSystemSpecific (const Capabilities c) const
| Returns true if capability is render system specific. More...
bool | isCategoryRelevant (CapabilitiesCategory cat)
| Return whether a category is 'relevant' or not, ie will it be reported. More...
bool | isDriverOlderThanVersion (DriverVersion v) const
bool | isShaderProfileSupported (const String &profile) const
| Returns true if profile is in the list of supported profiles. More...
void | log (Log *pLog)
| Write the capabilities to the pass in Log. More...
void | operator delete (void *ptr)
void | operator delete (void *ptr, void *)
void | operator delete (void *ptr, const char *, int, const char *)
void | operator delete[] (void *ptr)
void | operator delete[] (void *ptr, const char *, int, const char *)
void * | operator new (size_t sz, const char *file, int line, const char *func)
| operator new, with debug line info More...
void * | operator new (size_t sz)
void * | operator new (size_t sz, void *ptr)
| placement operator new More...
void * | operator new[] (size_t sz, const char *file, int line, const char *func)
| array operator new, with debug line info More...
void * | operator new[] (size_t sz)
void | parseDriverVersionFromString (const String &versionString)
void | parseVendorFromString (const String &vendorString)
| Parse and set vendor. More...
void | removeShaderProfile (const String &profile)
| Remove a given shader profile, if present. More...
void | setCapability (const Capabilities c)
| Adds a capability flag. More...
void | setCategoryRelevant (CapabilitiesCategory cat, bool relevant)
| Mark a category as 'relevant' or not, ie will it be reported. More...
void | setComputeProgramConstantBoolCount (ushort c)
| The number of boolean constants compute programs support. More...
void | setComputeProgramConstantFloatCount (ushort c)
| The number of floating-point constants compute programs support. More...
void | setComputeProgramConstantIntCount (ushort c)
| The number of integer constants compute programs support. More...
void | setDeviceName (const String &name)
| sets the device name for Render system More...
void | setDriverVersion (const DriverVersion &version)
| Set the driver version. More...
void | setFragmentProgramConstantBoolCount (ushort c)
| The number of boolean constants fragment programs support. More...
void | setFragmentProgramConstantFloatCount (ushort c)
| The number of floating-point constants fragment programs support. More...
void | setFragmentProgramConstantIntCount (ushort c)
| The number of integer constants fragment programs support. More...
void | setGeometryProgramConstantBoolCount (ushort c)
| The number of boolean constants geometry programs support. More...
void | setGeometryProgramConstantFloatCount (ushort c)
| The number of floating-point constants geometry programs support. More...
void | setGeometryProgramConstantIntCount (ushort c)
| The number of integer constants geometry programs support. More...
void | setGeometryProgramNumOutputVertices (int numOutputVertices)
| Set the number of vertices a single geometry program run can emit. More...
void | setMaxPointSize (Real s)
| Maximum point screen size in pixels. More...
void | setMaxSupportedAnisotropy (Real s)
| Set the maximum supported anisotropic filtering. More...
void | setNonPOW2TexturesLimited (bool l)
| Non-POW2 textures limited. More...
void | setNumMultiRenderTargets (ushort num)
| The number of simultaneous render targets supported. More...
void | setNumTextureUnits (ushort num)
void | setNumVertexBlendMatrices (ushort num)
void | setNumVertexTextureUnits (ushort n)
| Set the number of vertex texture units supported. More...
void | setNumWorldMatrices (ushort num)
void | setRenderSystemName (const String &rs)
| Set the identifier of the rendersystem from which these capabilities were generated. More...
void | setStencilBufferBitDepth (ushort num)
void | setTesselationDomainProgramConstantBoolCount (ushort c)
| The number of boolean constants tesselation Domain programs support. More...
void | setTesselationDomainProgramConstantFloatCount (ushort c)
| The number of floating-point constants tesselation Domain programs support. More...
void | setTesselationDomainProgramConstantIntCount (ushort c)
| The number of integer constants tesselation Domain programs support. More...
void | setTesselationHullProgramConstantBoolCount (ushort c)
| The number of boolean constants tesselation Domain programs support. More...
void | setTesselationHullProgramConstantFloatCount (ushort c)
| The number of floating-point constants tesselation Hull programs support. More...
void | setTesselationHullProgramConstantIntCount (ushort c)
| The number of integer constants tesselation Domain programs support. More...
void | setVendor (GPUVendor v)
void | setVertexProgramConstantBoolCount (ushort c)
| The number of boolean constants vertex programs support. More...
void | setVertexProgramConstantFloatCount (ushort c)
| The number of floating-point constants vertex programs support. More...
void | setVertexProgramConstantIntCount (ushort c)
| The number of integer constants vertex programs support. More...
void | setVertexTextureUnitsShared (bool shared)
| Set whether the vertex texture units are shared with the fragment processor. More...
void | unsetCapability (const Capabilities c)
| Remove a capability flag. More...

## Static Public Member Functions

static GPUVendor | vendorFromString (const String &vendorString)
| Convert a vendor string to an enum. More...
static String | vendorToString (GPUVendor v)
| Convert a vendor enum to a string. More...

## Static Private Member Functions

static void | initVendorStrings ()

## Private Attributes

int | mCapabilities [CAPS_CATEGORY_COUNT]
| Stores the capabilities flags. More...
bool | mCategoryRelevant [CAPS_CATEGORY_COUNT]
| Which categories are relevant. More...
ushort | mComputeProgramConstantBoolCount
| The number of boolean constants compute programs support. More...
ushort | mComputeProgramConstantFloatCount
| The number of floating-point constants compute programs support. More...
ushort | mComputeProgramConstantIntCount
| The number of integer constants compute programs support. More...
String | mDeviceName
| The name of the device as reported by the render system. More...
DriverVersion | mDriverVersion
| This is used to build a database of RSC's if a RSC with same name, but newer version is introduced, the older one will be removed. More...
ushort | mFragmentProgramConstantBoolCount
| The number of boolean constants fragment programs support. More...
ushort | mFragmentProgramConstantFloatCount
| The number of floating-point constants fragment programs support. More...
ushort | mFragmentProgramConstantIntCount
| The number of integer constants fragment programs support. More...
ushort | mGeometryProgramConstantBoolCount
| The number of boolean constants vertex geometry support. More...
ushort | mGeometryProgramConstantFloatCount
| The number of floating-point constants geometry programs support. More...
ushort | mGeometryProgramConstantIntCount
| The number of integer constants vertex geometry support. More...
int | mGeometryProgramNumOutputVertices
| The number of vertices a geometry program can emit in a single run. More...
Real | mMaxPointSize
| The maximum point size. More...
Real | mMaxSupportedAnisotropy
| The maximum supported anisotropy. More...
bool | mNonPOW2TexturesLimited
| Are non-POW2 textures feature-limited? More...
ushort | mNumMultiRenderTargets
| The number of simultaneous render targets supported. More...
ushort | mNumTextureUnits
| The number of texture units available. More...
ushort | mNumVertexBlendMatrices
| The number of matrices available for hardware blending. More...
ushort | mNumVertexTextureUnits
| The number of vertex texture units supported. More...
ushort | mNumWorldMatrices
| The number of world matrices available. More...
String | mRenderSystemName
| The identifier associated with the render system for which these capabilities are valid. More...
ushort | mStencilBufferBitDepth
| The stencil buffer bit depth. More...
ShaderProfiles | mSupportedShaderProfiles
| The list of supported shader profiles. More...
ushort | mTesselationDomainProgramConstantBoolCount
| The number of boolean constants tesselation Domain programs support. More...
ushort | mTesselationDomainProgramConstantFloatCount
| The number of floating-point constants tesselation Domain programs support. More...
ushort | mTesselationDomainProgramConstantIntCount
| The number of integer constants tesselation Domain programs support. More...
ushort | mTesselationHullProgramConstantBoolCount
| The number of boolean constants tesselation Hull programs support. More...
ushort | mTesselationHullProgramConstantFloatCount
| The number of floating-point constants tesselation Hull programs support. More...
ushort | mTesselationHullProgramConstantIntCount
| The number of integer constants tesselation Hull programs support. More...
GPUVendor | mVendor
| GPU Vendor. More...
ushort | mVertexProgramConstantBoolCount
| The number of boolean constants vertex programs support. More...
ushort | mVertexProgramConstantFloatCount
| The number of floating-point constants vertex programs support. More...
ushort | mVertexProgramConstantIntCount
| The number of integer constants vertex programs support. More...
bool | mVertexTextureUnitsShared
| Are vertex texture units shared with fragment processor? More...

## Static Private Attributes

static StringVector | msGPUVendorStrings

## Detailed Description

singleton class for storing the capabilities of the graphics card.

Remarks
  This class stores the capabilities of the graphics card. This information is set by the individual render systems.

Definition at line 279 of file OgreRenderSystemCapabilities.h.

## Member Typedef Documentation

## ShaderProfiles

typedef set<String>::type Ogre::RenderSystemCapabilities::ShaderProfiles

Definition at line 284 of file OgreRenderSystemCapabilities.h.

## Constructor & Destructor Documentation

## RenderSystemCapabilities()

Ogre::RenderSystemCapabilities::RenderSystemCapabilities | ( |  | ) |

## ~RenderSystemCapabilities()

virtual Ogre::RenderSystemCapabilities::~RenderSystemCapabilities | ( |  | ) |

virtual

## Member Function Documentation

## addShaderProfile()

void Ogre::RenderSystemCapabilities::addShaderProfile | ( | const String & | profile | ) |

Adds the profile to the list of supported profiles.

Definition at line 555 of file OgreRenderSystemCapabilities.h.

## calculateSize()

virtual size_t Ogre::RenderSystemCapabilities::calculateSize | ( |  | ) | const

virtual

Definition at line 376 of file OgreRenderSystemCapabilities.h.

## getComputeProgramConstantBoolCount()

ushort Ogre::RenderSystemCapabilities::getComputeProgramConstantBoolCount | ( | void |  | ) | const

The number of boolean constants fragment programs support.

Definition at line 874 of file OgreRenderSystemCapabilities.h.

## getComputeProgramConstantFloatCount()

ushort Ogre::RenderSystemCapabilities::getComputeProgramConstantFloatCount | ( | void |  | ) | const

The number of floating-point constants fragment programs support.

Definition at line 864 of file OgreRenderSystemCapabilities.h.

## getComputeProgramConstantIntCount()

ushort Ogre::RenderSystemCapabilities::getComputeProgramConstantIntCount | ( | void |  | ) | const

The number of integer constants fragment programs support.

Definition at line 869 of file OgreRenderSystemCapabilities.h.

## getDeviceName()

String Ogre::RenderSystemCapabilities::getDeviceName | ( |  | ) | const

gets the device name for render system

Definition at line 637 of file OgreRenderSystemCapabilities.h.

## getDriverVersion()

DriverVersion Ogre::RenderSystemCapabilities::getDriverVersion | ( |  | ) | const

Definition at line 392 of file OgreRenderSystemCapabilities.h.

## getFragmentProgramConstantBoolCount()

ushort Ogre::RenderSystemCapabilities::getFragmentProgramConstantBoolCount | ( | void |  | ) | const

The number of boolean constants fragment programs support.

Definition at line 625 of file OgreRenderSystemCapabilities.h.

## getFragmentProgramConstantFloatCount()

ushort Ogre::RenderSystemCapabilities::getFragmentProgramConstantFloatCount | ( | void |  | ) | const

The number of floating-point constants fragment programs support.

Definition at line 615 of file OgreRenderSystemCapabilities.h.

## getFragmentProgramConstantIntCount()

ushort Ogre::RenderSystemCapabilities::getFragmentProgramConstantIntCount | ( | void |  | ) | const

The number of integer constants fragment programs support.

Definition at line 620 of file OgreRenderSystemCapabilities.h.

## getGeometryProgramConstantBoolCount()

ushort Ogre::RenderSystemCapabilities::getGeometryProgramConstantBoolCount | ( | void |  | ) | const

The number of boolean constants geometry programs support.

Definition at line 610 of file OgreRenderSystemCapabilities.h.

## getGeometryProgramConstantFloatCount()

ushort Ogre::RenderSystemCapabilities::getGeometryProgramConstantFloatCount | ( | void |  | ) | const

The number of floating-point constants geometry programs support.

Definition at line 600 of file OgreRenderSystemCapabilities.h.

## getGeometryProgramConstantIntCount()

ushort Ogre::RenderSystemCapabilities::getGeometryProgramConstantIntCount | ( | void |  | ) | const

The number of integer constants geometry programs support.

Definition at line 605 of file OgreRenderSystemCapabilities.h.

## getGeometryProgramNumOutputVertices()

int Ogre::RenderSystemCapabilities::getGeometryProgramNumOutputVertices | ( | void |  | ) | const

Get the number of vertices a single geometry program run can emit.

Definition at line 752 of file OgreRenderSystemCapabilities.h.

## getMaxPointSize()

Real Ogre::RenderSystemCapabilities::getMaxPointSize | ( | void |  | ) | const

Maximum point screen size in pixels.

Definition at line 693 of file OgreRenderSystemCapabilities.h.

## getMaxSupportedAnisotropy()

Real Ogre::RenderSystemCapabilities::getMaxSupportedAnisotropy | ( |  | ) |

Get the maximum supported anisotropic filtering.

Definition at line 720 of file OgreRenderSystemCapabilities.h.

## getNonPOW2TexturesLimited()

bool Ogre::RenderSystemCapabilities::getNonPOW2TexturesLimited | ( | void |  | ) | const

Are non-power of two textures limited in features?

Remarks
  If the RSC_NON_POWER_OF_2_TEXTURES capability is set, but this method returns true, you can use non power of 2 textures only if:
  - You load them explicitly with no mip maps
  - You don't use DXT texture compression
  - You use clamp texture addressing

Definition at line 710 of file OgreRenderSystemCapabilities.h.

## getNumMultiRenderTargets()

ushort Ogre::RenderSystemCapabilities::getNumMultiRenderTargets | ( | void |  | ) | const

The number of simultaneous render targets supported.

Definition at line 504 of file OgreRenderSystemCapabilities.h.

## getNumTextureUnits()

ushort Ogre::RenderSystemCapabilities::getNumTextureUnits | ( | void |  | ) | const

Returns the number of texture units the current output hardware supports.

For use in rendering, this determines how many texture units the are available for multitexturing (i.e. rendering multiple textures in a single pass). Where a Material has multiple texture layers, it will try to use multitexturing where available, and where it is not available, will perform multipass rendering to achieve the same effect. This property only applies to the fixed-function pipeline, the number available to the programmable pipeline depends on the shader model in use.

Definition at line 480 of file OgreRenderSystemCapabilities.h.

## getNumVertexBlendMatrices()

ushort Ogre::RenderSystemCapabilities::getNumVertexBlendMatrices | ( | void |  | ) | const

Returns the number of matrices available to hardware vertex blending for this rendering system.

Definition at line 498 of file OgreRenderSystemCapabilities.h.

## getNumVertexTextureUnits()

ushort Ogre::RenderSystemCapabilities::getNumVertexTextureUnits | ( | void |  | ) | const

Get the number of vertex texture units supported.

Definition at line 731 of file OgreRenderSystemCapabilities.h.

## getNumWorldMatrices()

ushort Ogre::RenderSystemCapabilities::getNumWorldMatrices | ( | void |  | ) | const

Definition at line 463 of file OgreRenderSystemCapabilities.h.

## getRenderSystemName()

String Ogre::RenderSystemCapabilities::getRenderSystemName | ( | void |  | ) | const

Get the identifier of the rendersystem from which these capabilities were generated.

Definition at line 758 of file OgreRenderSystemCapabilities.h.

## getStencilBufferBitDepth()

ushort Ogre::RenderSystemCapabilities::getStencilBufferBitDepth | ( | void |  | ) | const

Determines the bit depth of the hardware accelerated stencil buffer, if supported.

Remarks
  If hardware stencilling is not supported, the software will provide an 8-bit software stencil.

Definition at line 491 of file OgreRenderSystemCapabilities.h.

## getSupportedShaderProfiles()

const ShaderProfiles& Ogre::RenderSystemCapabilities::getSupportedShaderProfiles | ( |  | ) | const

Returns a set of all supported shader profiles.

Definition at line 578 of file OgreRenderSystemCapabilities.h.

## getTesselationDomainProgramConstantBoolCount()

ushort Ogre::RenderSystemCapabilities::getTesselationDomainProgramConstantBoolCount | ( | void |  | ) | const

The number of boolean constants fragment programs support.

Definition at line 843 of file OgreRenderSystemCapabilities.h.

## getTesselationDomainProgramConstantFloatCount()

ushort Ogre::RenderSystemCapabilities::getTesselationDomainProgramConstantFloatCount | ( | void |  | ) | const

The number of floating-point constants fragment programs support.

Definition at line 833 of file OgreRenderSystemCapabilities.h.

## getTesselationDomainProgramConstantIntCount()

ushort Ogre::RenderSystemCapabilities::getTesselationDomainProgramConstantIntCount | ( | void |  | ) | const

The number of integer constants fragment programs support.

Definition at line 838 of file OgreRenderSystemCapabilities.h.

## getTesselationHullProgramConstantBoolCount()

ushort Ogre::RenderSystemCapabilities::getTesselationHullProgramConstantBoolCount | ( | void |  | ) | const

The number of boolean constants fragment programs support.

Definition at line 812 of file OgreRenderSystemCapabilities.h.

## getTesselationHullProgramConstantFloatCount()

ushort Ogre::RenderSystemCapabilities::getTesselationHullProgramConstantFloatCount | ( | void |  | ) | const

The number of floating-point constants fragment programs support.

Definition at line 802 of file OgreRenderSystemCapabilities.h.

## getTesselationHullProgramConstantIntCount()

ushort Ogre::RenderSystemCapabilities::getTesselationHullProgramConstantIntCount | ( | void |  | ) | const

The number of integer constants fragment programs support.

Definition at line 807 of file OgreRenderSystemCapabilities.h.

## getVendor()

GPUVendor Ogre::RenderSystemCapabilities::getVendor | ( |  | ) | const

Definition at line 397 of file OgreRenderSystemCapabilities.h.

## getVertexProgramConstantBoolCount()

ushort Ogre::RenderSystemCapabilities::getVertexProgramConstantBoolCount | ( | void |  | ) | const

The number of boolean constants vertex programs support.

Definition at line 595 of file OgreRenderSystemCapabilities.h.

## getVertexProgramConstantFloatCount()

ushort Ogre::RenderSystemCapabilities::getVertexProgramConstantFloatCount | ( | void |  | ) | const

The number of floating-point constants vertex programs support.

Definition at line 585 of file OgreRenderSystemCapabilities.h.

## getVertexProgramConstantIntCount()

ushort Ogre::RenderSystemCapabilities::getVertexProgramConstantIntCount | ( | void |  | ) | const

The number of integer constants vertex programs support.

Definition at line 590 of file OgreRenderSystemCapabilities.h.

## getVertexTextureUnitsShared()

bool Ogre::RenderSystemCapabilities::getVertexTextureUnitsShared | ( | void |  | ) | const

Get whether the vertex texture units are shared with the fragment processor.

Definition at line 741 of file OgreRenderSystemCapabilities.h.

## hasCapability()

bool Ogre::RenderSystemCapabilities::hasCapability | ( | const Capabilities | c | ) | const

Checks for a capability.

Definition at line 539 of file OgreRenderSystemCapabilities.h.

References CAPS_CATEGORY_MASK, and OGRE_CAPS_BITSHIFT.

## initVendorStrings()

static void Ogre::RenderSystemCapabilities::initVendorStrings | ( |  | ) |

static private

## isCapabilityRenderSystemSpecific()

bool Ogre::RenderSystemCapabilities::isCapabilityRenderSystemSpecific | ( | const Capabilities | c | ) | const

Returns true if capability is render system specific.

Definition at line 511 of file OgreRenderSystemCapabilities.h.

References Ogre::CAPS_CATEGORY_D3D9, Ogre::CAPS_CATEGORY_GL, and OGRE_CAPS_BITSHIFT.

## isCategoryRelevant()

bool Ogre::RenderSystemCapabilities::isCategoryRelevant | ( | CapabilitiesCategory | cat | ) |

Return whether a category is 'relevant' or not, ie will it be reported.

Definition at line 775 of file OgreRenderSystemCapabilities.h.

## isDriverOlderThanVersion()

bool Ogre::RenderSystemCapabilities::isDriverOlderThanVersion | ( | DriverVersion | v | ) | const

Definition at line 418 of file OgreRenderSystemCapabilities.h.

References Ogre::DriverVersion::build, Ogre::DriverVersion::major, Ogre::DriverVersion::minor, and Ogre::DriverVersion::release.

## isShaderProfileSupported()

bool Ogre::RenderSystemCapabilities::isShaderProfileSupported | ( | const String & | profile | ) | const

Returns true if profile is in the list of supported profiles.

Definition at line 570 of file OgreRenderSystemCapabilities.h.

## log()

void Ogre::RenderSystemCapabilities::log | ( | Log * | pLog | ) |

Write the capabilities to the pass in Log.

## operator delete() [1/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr | ) |

inherited

Definition at line 96 of file OgreMemoryAllocatedObject.h.

## operator delete() [2/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr,
|  | void * |
| ) |  |

inherited

Definition at line 102 of file OgreMemoryAllocatedObject.h.

## operator delete() [3/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr,
|  | const char * | ,
|  | int | ,
|  | const char * |
| ) |  |

inherited

Definition at line 108 of file OgreMemoryAllocatedObject.h.

## operator delete[]() [1/2]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr | ) |

inherited

Definition at line 113 of file OgreMemoryAllocatedObject.h.

## operator delete[]() [2/2]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr,
|  | const char * | ,
|  | int | ,
|  | const char * |
| ) |  |

inherited

Definition at line 119 of file OgreMemoryAllocatedObject.h.

## operator new() [1/3]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz,
|  | const char * | file,
|  | int | line,
|  | const char * | func
| ) |  |

inherited

operator new, with debug line info

Definition at line 68 of file OgreMemoryAllocatedObject.h.

## operator new() [2/3]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz | ) |

inherited

Definition at line 73 of file OgreMemoryAllocatedObject.h.

## operator new() [3/3]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz,
|  | void * | ptr
| ) |  |

inherited

placement operator new

Definition at line 79 of file OgreMemoryAllocatedObject.h.

## operator new[]() [1/2]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz,
|  | const char * | file,
|  | int | line,
|  | const char * | func
| ) |  |

inherited

array operator new, with debug line info

Definition at line 86 of file OgreMemoryAllocatedObject.h.

## operator new[]() [2/2]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz | ) |

inherited

Definition at line 91 of file OgreMemoryAllocatedObject.h.

## parseDriverVersionFromString()

void Ogre::RenderSystemCapabilities::parseDriverVersionFromString | ( | const String & | versionString | ) |

Definition at line 384 of file OgreRenderSystemCapabilities.h.

References Ogre::DriverVersion::fromString().

## parseVendorFromString()

void Ogre::RenderSystemCapabilities::parseVendorFromString | ( | const String & | vendorString | ) |

Parse and set vendor.

Definition at line 408 of file OgreRenderSystemCapabilities.h.

## removeShaderProfile()

void Ogre::RenderSystemCapabilities::removeShaderProfile | ( | const String & | profile | ) |

Remove a given shader profile, if present.

Definition at line 563 of file OgreRenderSystemCapabilities.h.

## setCapability()

void Ogre::RenderSystemCapabilities::setCapability | ( | const Capabilities | c | ) |

Adds a capability flag.

Definition at line 521 of file OgreRenderSystemCapabilities.h.

References CAPS_CATEGORY_MASK, and OGRE_CAPS_BITSHIFT.

## setCategoryRelevant()

void Ogre::RenderSystemCapabilities::setCategoryRelevant | ( | CapabilitiesCategory | cat,
|  | bool | relevant
| ) |  |

Mark a category as 'relevant' or not, ie will it be reported.

Definition at line 769 of file OgreRenderSystemCapabilities.h.

## setComputeProgramConstantBoolCount()

void Ogre::RenderSystemCapabilities::setComputeProgramConstantBoolCount | ( | ushort | c | ) |

The number of boolean constants compute programs support.

Definition at line 859 of file OgreRenderSystemCapabilities.h.

## setComputeProgramConstantFloatCount()

void Ogre::RenderSystemCapabilities::setComputeProgramConstantFloatCount | ( | ushort | c | ) |

The number of floating-point constants compute programs support.

Definition at line 849 of file OgreRenderSystemCapabilities.h.

## setComputeProgramConstantIntCount()

void Ogre::RenderSystemCapabilities::setComputeProgramConstantIntCount | ( | ushort | c | ) |

The number of integer constants compute programs support.

Definition at line 854 of file OgreRenderSystemCapabilities.h.

## setDeviceName()

void Ogre::RenderSystemCapabilities::setDeviceName | ( | const String & | name | ) |

sets the device name for Render system

Definition at line 631 of file OgreRenderSystemCapabilities.h.

## setDriverVersion()

void Ogre::RenderSystemCapabilities::setDriverVersion | ( | const DriverVersion & | version | ) |

Set the driver version.

Definition at line 379 of file OgreRenderSystemCapabilities.h.

## setFragmentProgramConstantBoolCount()

void Ogre::RenderSystemCapabilities::setFragmentProgramConstantBoolCount | ( | ushort | c | ) |

The number of boolean constants fragment programs support.

Definition at line 683 of file OgreRenderSystemCapabilities.h.

## setFragmentProgramConstantFloatCount()

void Ogre::RenderSystemCapabilities::setFragmentProgramConstantFloatCount | ( | ushort | c | ) |

The number of floating-point constants fragment programs support.

Definition at line 673 of file OgreRenderSystemCapabilities.h.

## setFragmentProgramConstantIntCount()

void Ogre::RenderSystemCapabilities::setFragmentProgramConstantIntCount | ( | ushort | c | ) |

The number of integer constants fragment programs support.

Definition at line 678 of file OgreRenderSystemCapabilities.h.

## setGeometryProgramConstantBoolCount()

void Ogre::RenderSystemCapabilities::setGeometryProgramConstantBoolCount | ( | ushort | c | ) |

The number of boolean constants geometry programs support.

Definition at line 668 of file OgreRenderSystemCapabilities.h.

## setGeometryProgramConstantFloatCount()

void Ogre::RenderSystemCapabilities::setGeometryProgramConstantFloatCount | ( | ushort | c | ) |

The number of floating-point constants geometry programs support.

Definition at line 658 of file OgreRenderSystemCapabilities.h.

## setGeometryProgramConstantIntCount()

void Ogre::RenderSystemCapabilities::setGeometryProgramConstantIntCount | ( | ushort | c | ) |

The number of integer constants geometry programs support.

Definition at line 663 of file OgreRenderSystemCapabilities.h.

## setGeometryProgramNumOutputVertices()

void Ogre::RenderSystemCapabilities::setGeometryProgramNumOutputVertices | ( | int | numOutputVertices | ) |

Set the number of vertices a single geometry program run can emit.

Definition at line 747 of file OgreRenderSystemCapabilities.h.

## setMaxPointSize()

void Ogre::RenderSystemCapabilities::setMaxPointSize | ( | Real | s | ) |

Maximum point screen size in pixels.

Definition at line 688 of file OgreRenderSystemCapabilities.h.

## setMaxSupportedAnisotropy()

void Ogre::RenderSystemCapabilities::setMaxSupportedAnisotropy | ( | Real | s | ) |

Set the maximum supported anisotropic filtering.

Definition at line 715 of file OgreRenderSystemCapabilities.h.

## setNonPOW2TexturesLimited()

void Ogre::RenderSystemCapabilities::setNonPOW2TexturesLimited | ( | bool | l | ) |

Non-POW2 textures limited.

Definition at line 698 of file OgreRenderSystemCapabilities.h.

## setNumMultiRenderTargets()

void Ogre::RenderSystemCapabilities::setNumMultiRenderTargets | ( | ushort | num | ) |

The number of simultaneous render targets supported.

Definition at line 458 of file OgreRenderSystemCapabilities.h.

## setNumTextureUnits()

void Ogre::RenderSystemCapabilities::setNumTextureUnits | ( | ushort | num | ) |

Definition at line 442 of file OgreRenderSystemCapabilities.h.

## setNumVertexBlendMatrices()

void Ogre::RenderSystemCapabilities::setNumVertexBlendMatrices | ( | ushort | num | ) |

Definition at line 452 of file OgreRenderSystemCapabilities.h.

## setNumVertexTextureUnits()

void Ogre::RenderSystemCapabilities::setNumVertexTextureUnits | ( | ushort | n | ) |

Set the number of vertex texture units supported.

Definition at line 726 of file OgreRenderSystemCapabilities.h.

## setNumWorldMatrices()

void Ogre::RenderSystemCapabilities::setNumWorldMatrices | ( | ushort | num | ) |

Definition at line 437 of file OgreRenderSystemCapabilities.h.

## setRenderSystemName()

void Ogre::RenderSystemCapabilities::setRenderSystemName | ( | const String & | rs | ) |

Set the identifier of the rendersystem from which these capabilities were generated.

Definition at line 763 of file OgreRenderSystemCapabilities.h.

## setStencilBufferBitDepth()

void Ogre::RenderSystemCapabilities::setStencilBufferBitDepth | ( | ushort | num | ) |

Definition at line 447 of file OgreRenderSystemCapabilities.h.

## setTesselationDomainProgramConstantBoolCount()

void Ogre::RenderSystemCapabilities::setTesselationDomainProgramConstantBoolCount | ( | ushort | c | ) |

The number of boolean constants tesselation Domain programs support.

Definition at line 828 of file OgreRenderSystemCapabilities.h.

## setTesselationDomainProgramConstantFloatCount()

void Ogre::RenderSystemCapabilities::setTesselationDomainProgramConstantFloatCount | ( | ushort | c | ) |

The number of floating-point constants tesselation Domain programs support.

Definition at line 818 of file OgreRenderSystemCapabilities.h.

## setTesselationDomainProgramConstantIntCount()

void Ogre::RenderSystemCapabilities::setTesselationDomainProgramConstantIntCount | ( | ushort | c | ) |

The number of integer constants tesselation Domain programs support.

Definition at line 823 of file OgreRenderSystemCapabilities.h.

## setTesselationHullProgramConstantBoolCount()

void Ogre::RenderSystemCapabilities::setTesselationHullProgramConstantBoolCount | ( | ushort | c | ) |

The number of boolean constants tesselation Domain programs support.

Definition at line 797 of file OgreRenderSystemCapabilities.h.

## setTesselationHullProgramConstantFloatCount()

void Ogre::RenderSystemCapabilities::setTesselationHullProgramConstantFloatCount | ( | ushort | c | ) |

The number of floating-point constants tesselation Hull programs support.

Definition at line 787 of file OgreRenderSystemCapabilities.h.

## setTesselationHullProgramConstantIntCount()

void Ogre::RenderSystemCapabilities::setTesselationHullProgramConstantIntCount | ( | ushort | c | ) |

The number of integer constants tesselation Domain programs support.

Definition at line 792 of file OgreRenderSystemCapabilities.h.

## setVendor()

void Ogre::RenderSystemCapabilities::setVendor | ( | GPUVendor | v | ) |

Definition at line 402 of file OgreRenderSystemCapabilities.h.

## setVertexProgramConstantBoolCount()

void Ogre::RenderSystemCapabilities::setVertexProgramConstantBoolCount | ( | ushort | c | ) |

The number of boolean constants vertex programs support.

Definition at line 653 of file OgreRenderSystemCapabilities.h.

## setVertexProgramConstantFloatCount()

void Ogre::RenderSystemCapabilities::setVertexProgramConstantFloatCount | ( | ushort | c | ) |

The number of floating-point constants vertex programs support.

Definition at line 643 of file OgreRenderSystemCapabilities.h.

## setVertexProgramConstantIntCount()

void Ogre::RenderSystemCapabilities::setVertexProgramConstantIntCount | ( | ushort | c | ) |

The number of integer constants vertex programs support.

Definition at line 648 of file OgreRenderSystemCapabilities.h.

## setVertexTextureUnitsShared()

void Ogre::RenderSystemCapabilities::setVertexTextureUnitsShared | ( | bool | shared | ) |

Set whether the vertex texture units are shared with the fragment processor.

Definition at line 736 of file OgreRenderSystemCapabilities.h.

## unsetCapability()

void Ogre::RenderSystemCapabilities::unsetCapability | ( | const Capabilities | c | ) |

Remove a capability flag.

Definition at line 530 of file OgreRenderSystemCapabilities.h.

References CAPS_CATEGORY_MASK, and OGRE_CAPS_BITSHIFT.

## vendorFromString()

static GPUVendor Ogre::RenderSystemCapabilities::vendorFromString | ( | const String & | vendorString | ) |

static

Convert a vendor string to an enum.

## vendorToString()

static String Ogre::RenderSystemCapabilities::vendorToString | ( | GPUVendor | v | ) |

static

Convert a vendor enum to a string.

## Member Data Documentation

## mCapabilities

int Ogre::RenderSystemCapabilities::mCapabilities[CAPS_CATEGORY_COUNT]

private

Stores the capabilities flags.

Definition at line 305 of file OgreRenderSystemCapabilities.h.

## mCategoryRelevant

bool Ogre::RenderSystemCapabilities::mCategoryRelevant[CAPS_CATEGORY_COUNT]

private

Which categories are relevant.

Definition at line 307 of file OgreRenderSystemCapabilities.h.

## mComputeProgramConstantBoolCount

ushort Ogre::RenderSystemCapabilities::mComputeProgramConstantBoolCount

private

The number of boolean constants compute programs support.

Definition at line 368 of file OgreRenderSystemCapabilities.h.

## mComputeProgramConstantFloatCount

ushort Ogre::RenderSystemCapabilities::mComputeProgramConstantFloatCount

private

The number of floating-point constants compute programs support.

Definition at line 364 of file OgreRenderSystemCapabilities.h.

## mComputeProgramConstantIntCount

ushort Ogre::RenderSystemCapabilities::mComputeProgramConstantIntCount

private

The number of integer constants compute programs support.

Definition at line 366 of file OgreRenderSystemCapabilities.h.

## mDeviceName

String Ogre::RenderSystemCapabilities::mDeviceName

private

The name of the device as reported by the render system.

Definition at line 309 of file OgreRenderSystemCapabilities.h.

## mDriverVersion

DriverVersion Ogre::RenderSystemCapabilities::mDriverVersion

private

This is used to build a database of RSC's if a RSC with same name, but newer version is introduced, the older one will be removed.

Definition at line 289 of file OgreRenderSystemCapabilities.h.

## mFragmentProgramConstantBoolCount

ushort Ogre::RenderSystemCapabilities::mFragmentProgramConstantBoolCount

private

The number of boolean constants fragment programs support.

Definition at line 330 of file OgreRenderSystemCapabilities.h.

## mFragmentProgramConstantFloatCount

ushort Ogre::RenderSystemCapabilities::mFragmentProgramConstantFloatCount

private

The number of floating-point constants fragment programs support.

Definition at line 326 of file OgreRenderSystemCapabilities.h.

## mFragmentProgramConstantIntCount

ushort Ogre::RenderSystemCapabilities::mFragmentProgramConstantIntCount

private

The number of integer constants fragment programs support.

Definition at line 328 of file OgreRenderSystemCapabilities.h.

## mGeometryProgramConstantBoolCount

ushort Ogre::RenderSystemCapabilities::mGeometryProgramConstantBoolCount

private

The number of boolean constants vertex geometry support.

Definition at line 324 of file OgreRenderSystemCapabilities.h.

## mGeometryProgramConstantFloatCount

ushort Ogre::RenderSystemCapabilities::mGeometryProgramConstantFloatCount

private

The number of floating-point constants geometry programs support.

Definition at line 320 of file OgreRenderSystemCapabilities.h.

## mGeometryProgramConstantIntCount

ushort Ogre::RenderSystemCapabilities::mGeometryProgramConstantIntCount

private

The number of integer constants vertex geometry support.

Definition at line 322 of file OgreRenderSystemCapabilities.h.

## mGeometryProgramNumOutputVertices

int Ogre::RenderSystemCapabilities::mGeometryProgramNumOutputVertices

private

The number of vertices a geometry program can emit in a single run.

Definition at line 344 of file OgreRenderSystemCapabilities.h.

## mMaxPointSize

Real Ogre::RenderSystemCapabilities::mMaxPointSize

private

The maximum point size.

Definition at line 334 of file OgreRenderSystemCapabilities.h.

## mMaxSupportedAnisotropy

Real Ogre::RenderSystemCapabilities::mMaxSupportedAnisotropy

private

The maximum supported anisotropy.

Definition at line 338 of file OgreRenderSystemCapabilities.h.

## mNonPOW2TexturesLimited

bool Ogre::RenderSystemCapabilities::mNonPOW2TexturesLimited

private

Are non-POW2 textures feature-limited?

Definition at line 336 of file OgreRenderSystemCapabilities.h.

## mNumMultiRenderTargets

ushort Ogre::RenderSystemCapabilities::mNumMultiRenderTargets

private

The number of simultaneous render targets supported.

Definition at line 332 of file OgreRenderSystemCapabilities.h.

## mNumTextureUnits

ushort Ogre::RenderSystemCapabilities::mNumTextureUnits

private

The number of texture units available.

Definition at line 299 of file OgreRenderSystemCapabilities.h.

## mNumVertexBlendMatrices

ushort Ogre::RenderSystemCapabilities::mNumVertexBlendMatrices

private

The number of matrices available for hardware blending.

Definition at line 303 of file OgreRenderSystemCapabilities.h.

## mNumVertexTextureUnits

ushort Ogre::RenderSystemCapabilities::mNumVertexTextureUnits

private

The number of vertex texture units supported.

Definition at line 340 of file OgreRenderSystemCapabilities.h.

## mNumWorldMatrices

ushort Ogre::RenderSystemCapabilities::mNumWorldMatrices

private

The number of world matrices available.

Definition at line 297 of file OgreRenderSystemCapabilities.h.

## mRenderSystemName

String Ogre::RenderSystemCapabilities::mRenderSystemName

private

The identifier associated with the render system for which these capabilities are valid.

Definition at line 311 of file OgreRenderSystemCapabilities.h.

## msGPUVendorStrings

StringVector Ogre::RenderSystemCapabilities::msGPUVendorStrings

static private

Definition at line 293 of file OgreRenderSystemCapabilities.h.

## mStencilBufferBitDepth

ushort Ogre::RenderSystemCapabilities::mStencilBufferBitDepth

private

The stencil buffer bit depth.

Definition at line 301 of file OgreRenderSystemCapabilities.h.

## mSupportedShaderProfiles

ShaderProfiles Ogre::RenderSystemCapabilities::mSupportedShaderProfiles

private

The list of supported shader profiles.

Definition at line 348 of file OgreRenderSystemCapabilities.h.

## mTesselationDomainProgramConstantBoolCount

ushort Ogre::RenderSystemCapabilities::mTesselationDomainProgramConstantBoolCount

private

The number of boolean constants tesselation Domain programs support.

Definition at line 362 of file OgreRenderSystemCapabilities.h.

## mTesselationDomainProgramConstantFloatCount

ushort Ogre::RenderSystemCapabilities::mTesselationDomainProgramConstantFloatCount

private

The number of floating-point constants tesselation Domain programs support.

Definition at line 358 of file OgreRenderSystemCapabilities.h.

## mTesselationDomainProgramConstantIntCount

ushort Ogre::RenderSystemCapabilities::mTesselationDomainProgramConstantIntCount

private

The number of integer constants tesselation Domain programs support.

Definition at line 360 of file OgreRenderSystemCapabilities.h.

## mTesselationHullProgramConstantBoolCount

ushort Ogre::RenderSystemCapabilities::mTesselationHullProgramConstantBoolCount

private

The number of boolean constants tesselation Hull programs support.

Definition at line 356 of file OgreRenderSystemCapabilities.h.

## mTesselationHullProgramConstantFloatCount

ushort Ogre::RenderSystemCapabilities::mTesselationHullProgramConstantFloatCount

private

The number of floating-point constants tesselation Hull programs support.

Definition at line 352 of file OgreRenderSystemCapabilities.h.

## mTesselationHullProgramConstantIntCount

ushort Ogre::RenderSystemCapabilities::mTesselationHullProgramConstantIntCount

private

The number of integer constants tesselation Hull programs support.

Definition at line 354 of file OgreRenderSystemCapabilities.h.

## mVendor

GPUVendor Ogre::RenderSystemCapabilities::mVendor

private

GPU Vendor.

Definition at line 291 of file OgreRenderSystemCapabilities.h.

## mVertexProgramConstantBoolCount

ushort Ogre::RenderSystemCapabilities::mVertexProgramConstantBoolCount

private

The number of boolean constants vertex programs support.

Definition at line 318 of file OgreRenderSystemCapabilities.h.

## mVertexProgramConstantFloatCount

ushort Ogre::RenderSystemCapabilities::mVertexProgramConstantFloatCount

private

The number of floating-point constants vertex programs support.

Definition at line 314 of file OgreRenderSystemCapabilities.h.

## mVertexProgramConstantIntCount

ushort Ogre::RenderSystemCapabilities::mVertexProgramConstantIntCount

private

The number of integer constants vertex programs support.

Definition at line 316 of file OgreRenderSystemCapabilities.h.

## mVertexTextureUnitsShared

bool Ogre::RenderSystemCapabilities::mVertexTextureUnitsShared

private

Are vertex texture units shared with fragment processor?

Definition at line 342 of file OgreRenderSystemCapabilities.h.

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

- OgreRenderSystemCapabilities.h

Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.