OGRE  1.9
Object-Oriented Graphics Rendering Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Ogre::RenderSystemCapabilities Class Reference

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

#include <OgreRenderSystemCapabilities.h>

+ Inheritance diagram for Ogre::RenderSystemCapabilities:
+ Collaboration diagram for Ogre::RenderSystemCapabilities:

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 ShaderProfilesgetSupportedShaderProfiles () 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 281 of file OgreRenderSystemCapabilities.h.

Member Typedef Documentation

Constructor & Destructor Documentation

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

Member Function Documentation

void Ogre::RenderSystemCapabilities::addShaderProfile ( const String profile)
inline

Adds the profile to the list of supported profiles.

Definition at line 557 of file OgreRenderSystemCapabilities.h.

virtual size_t Ogre::RenderSystemCapabilities::calculateSize ( void  ) const
inlinevirtual

Definition at line 378 of file OgreRenderSystemCapabilities.h.

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

The number of boolean constants fragment programs support.

Definition at line 876 of file OgreRenderSystemCapabilities.h.

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

The number of floating-point constants fragment programs support.

Definition at line 866 of file OgreRenderSystemCapabilities.h.

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

The number of integer constants fragment programs support.

Definition at line 871 of file OgreRenderSystemCapabilities.h.

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

gets the device name for render system

Definition at line 639 of file OgreRenderSystemCapabilities.h.

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

Definition at line 394 of file OgreRenderSystemCapabilities.h.

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

The number of boolean constants fragment programs support.

Definition at line 627 of file OgreRenderSystemCapabilities.h.

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

The number of floating-point constants fragment programs support.

Definition at line 617 of file OgreRenderSystemCapabilities.h.

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

The number of integer constants fragment programs support.

Definition at line 622 of file OgreRenderSystemCapabilities.h.

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

The number of boolean constants geometry programs support.

Definition at line 612 of file OgreRenderSystemCapabilities.h.

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

The number of floating-point constants geometry programs support.

Definition at line 602 of file OgreRenderSystemCapabilities.h.

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

The number of integer constants geometry programs support.

Definition at line 607 of file OgreRenderSystemCapabilities.h.

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

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

Definition at line 754 of file OgreRenderSystemCapabilities.h.

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

Maximum point screen size in pixels.

Definition at line 695 of file OgreRenderSystemCapabilities.h.

Real Ogre::RenderSystemCapabilities::getMaxSupportedAnisotropy ( )
inline

Get the maximum supported anisotropic filtering.

Definition at line 722 of file OgreRenderSystemCapabilities.h.

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

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 712 of file OgreRenderSystemCapabilities.h.

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

The number of simultaneous render targets supported.

Definition at line 506 of file OgreRenderSystemCapabilities.h.

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

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 482 of file OgreRenderSystemCapabilities.h.

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

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

Definition at line 500 of file OgreRenderSystemCapabilities.h.

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

Get the number of vertex texture units supported.

Definition at line 733 of file OgreRenderSystemCapabilities.h.

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

Definition at line 465 of file OgreRenderSystemCapabilities.h.

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

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

Definition at line 760 of file OgreRenderSystemCapabilities.h.

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

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 493 of file OgreRenderSystemCapabilities.h.

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

Returns a set of all supported shader profiles.

Definition at line 580 of file OgreRenderSystemCapabilities.h.

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

The number of boolean constants fragment programs support.

Definition at line 845 of file OgreRenderSystemCapabilities.h.

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

The number of floating-point constants fragment programs support.

Definition at line 835 of file OgreRenderSystemCapabilities.h.

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

The number of integer constants fragment programs support.

Definition at line 840 of file OgreRenderSystemCapabilities.h.

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

The number of boolean constants fragment programs support.

Definition at line 814 of file OgreRenderSystemCapabilities.h.

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

The number of floating-point constants fragment programs support.

Definition at line 804 of file OgreRenderSystemCapabilities.h.

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

The number of integer constants fragment programs support.

Definition at line 809 of file OgreRenderSystemCapabilities.h.

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

Definition at line 399 of file OgreRenderSystemCapabilities.h.

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

The number of boolean constants vertex programs support.

Definition at line 597 of file OgreRenderSystemCapabilities.h.

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

The number of floating-point constants vertex programs support.

Definition at line 587 of file OgreRenderSystemCapabilities.h.

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

The number of integer constants vertex programs support.

Definition at line 592 of file OgreRenderSystemCapabilities.h.

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

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

Definition at line 743 of file OgreRenderSystemCapabilities.h.

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

Checks for a capability.

Definition at line 541 of file OgreRenderSystemCapabilities.h.

References CAPS_CATEGORY_MASK, and OGRE_CAPS_BITSHIFT.

static void Ogre::RenderSystemCapabilities::initVendorStrings ( )
staticprivate
bool Ogre::RenderSystemCapabilities::isCapabilityRenderSystemSpecific ( const Capabilities  c) const
inline

Returns true if capability is render system specific.

Definition at line 513 of file OgreRenderSystemCapabilities.h.

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

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

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

Definition at line 777 of file OgreRenderSystemCapabilities.h.

bool Ogre::RenderSystemCapabilities::isDriverOlderThanVersion ( DriverVersion  v) const
inline
bool Ogre::RenderSystemCapabilities::isShaderProfileSupported ( const String profile) const
inline

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

Definition at line 572 of file OgreRenderSystemCapabilities.h.

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

Write the capabilities to the pass in Log.

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr)
inlineinherited

Definition at line 96 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr,
void *   
)
inlineinherited

Definition at line 102 of file OgreMemoryAllocatedObject.h.

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

Definition at line 108 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void *  ptr)
inlineinherited

Definition at line 113 of file OgreMemoryAllocatedObject.h.

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

Definition at line 119 of file OgreMemoryAllocatedObject.h.

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

operator new, with debug line info

Definition at line 68 of file OgreMemoryAllocatedObject.h.

template<class Alloc >
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz)
inlineinherited

Definition at line 73 of file OgreMemoryAllocatedObject.h.

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

placement operator new

Definition at line 79 of file OgreMemoryAllocatedObject.h.

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

array operator new, with debug line info

Definition at line 86 of file OgreMemoryAllocatedObject.h.

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

Definition at line 91 of file OgreMemoryAllocatedObject.h.

void Ogre::RenderSystemCapabilities::parseDriverVersionFromString ( const String versionString)
inline

Definition at line 386 of file OgreRenderSystemCapabilities.h.

References Ogre::DriverVersion::fromString().

void Ogre::RenderSystemCapabilities::parseVendorFromString ( const String vendorString)
inline

Parse and set vendor.

Definition at line 410 of file OgreRenderSystemCapabilities.h.

void Ogre::RenderSystemCapabilities::removeShaderProfile ( const String profile)
inline

Remove a given shader profile, if present.

Definition at line 565 of file OgreRenderSystemCapabilities.h.

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

Adds a capability flag.

Definition at line 523 of file OgreRenderSystemCapabilities.h.

References CAPS_CATEGORY_MASK, and OGRE_CAPS_BITSHIFT.

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

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

Definition at line 771 of file OgreRenderSystemCapabilities.h.

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

The number of boolean constants compute programs support.

Definition at line 861 of file OgreRenderSystemCapabilities.h.

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

The number of floating-point constants compute programs support.

Definition at line 851 of file OgreRenderSystemCapabilities.h.

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

The number of integer constants compute programs support.

Definition at line 856 of file OgreRenderSystemCapabilities.h.

void Ogre::RenderSystemCapabilities::setDeviceName ( const String name)
inline

sets the device name for Render system

Definition at line 633 of file OgreRenderSystemCapabilities.h.

void Ogre::RenderSystemCapabilities::setDriverVersion ( const DriverVersion version)
inline

Set the driver version.

Definition at line 381 of file OgreRenderSystemCapabilities.h.

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

The number of boolean constants fragment programs support.

Definition at line 685 of file OgreRenderSystemCapabilities.h.

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

The number of floating-point constants fragment programs support.

Definition at line 675 of file OgreRenderSystemCapabilities.h.

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

The number of integer constants fragment programs support.

Definition at line 680 of file OgreRenderSystemCapabilities.h.

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

The number of boolean constants geometry programs support.

Definition at line 670 of file OgreRenderSystemCapabilities.h.

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

The number of floating-point constants geometry programs support.

Definition at line 660 of file OgreRenderSystemCapabilities.h.

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

The number of integer constants geometry programs support.

Definition at line 665 of file OgreRenderSystemCapabilities.h.

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

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

Definition at line 749 of file OgreRenderSystemCapabilities.h.

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

Maximum point screen size in pixels.

Definition at line 690 of file OgreRenderSystemCapabilities.h.

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

Set the maximum supported anisotropic filtering.

Definition at line 717 of file OgreRenderSystemCapabilities.h.

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

Non-POW2 textures limited.

Definition at line 700 of file OgreRenderSystemCapabilities.h.

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

The number of simultaneous render targets supported.

Definition at line 460 of file OgreRenderSystemCapabilities.h.

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

Definition at line 444 of file OgreRenderSystemCapabilities.h.

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

Definition at line 454 of file OgreRenderSystemCapabilities.h.

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

Set the number of vertex texture units supported.

Definition at line 728 of file OgreRenderSystemCapabilities.h.

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

Definition at line 439 of file OgreRenderSystemCapabilities.h.

void Ogre::RenderSystemCapabilities::setRenderSystemName ( const String rs)
inline

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

Definition at line 765 of file OgreRenderSystemCapabilities.h.

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

Definition at line 449 of file OgreRenderSystemCapabilities.h.

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

The number of boolean constants tesselation Domain programs support.

Definition at line 830 of file OgreRenderSystemCapabilities.h.

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

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

Definition at line 820 of file OgreRenderSystemCapabilities.h.

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

The number of integer constants tesselation Domain programs support.

Definition at line 825 of file OgreRenderSystemCapabilities.h.

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

The number of boolean constants tesselation Domain programs support.

Definition at line 799 of file OgreRenderSystemCapabilities.h.

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

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

Definition at line 789 of file OgreRenderSystemCapabilities.h.

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

The number of integer constants tesselation Domain programs support.

Definition at line 794 of file OgreRenderSystemCapabilities.h.

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

Definition at line 404 of file OgreRenderSystemCapabilities.h.

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

The number of boolean constants vertex programs support.

Definition at line 655 of file OgreRenderSystemCapabilities.h.

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

The number of floating-point constants vertex programs support.

Definition at line 645 of file OgreRenderSystemCapabilities.h.

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

The number of integer constants vertex programs support.

Definition at line 650 of file OgreRenderSystemCapabilities.h.

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

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

Definition at line 738 of file OgreRenderSystemCapabilities.h.

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

Remove a capability flag.

Definition at line 532 of file OgreRenderSystemCapabilities.h.

References CAPS_CATEGORY_MASK, and OGRE_CAPS_BITSHIFT.

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

Convert a vendor string to an enum.

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

Convert a vendor enum to a string.

Member Data Documentation

int Ogre::RenderSystemCapabilities::mCapabilities[CAPS_CATEGORY_COUNT]
private

Stores the capabilities flags.

Definition at line 307 of file OgreRenderSystemCapabilities.h.

bool Ogre::RenderSystemCapabilities::mCategoryRelevant[CAPS_CATEGORY_COUNT]
private

Which categories are relevant.

Definition at line 309 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mComputeProgramConstantBoolCount
private

The number of boolean constants compute programs support.

Definition at line 370 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mComputeProgramConstantFloatCount
private

The number of floating-point constants compute programs support.

Definition at line 366 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mComputeProgramConstantIntCount
private

The number of integer constants compute programs support.

Definition at line 368 of file OgreRenderSystemCapabilities.h.

String Ogre::RenderSystemCapabilities::mDeviceName
private

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

Definition at line 311 of file OgreRenderSystemCapabilities.h.

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 291 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mFragmentProgramConstantBoolCount
private

The number of boolean constants fragment programs support.

Definition at line 332 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mFragmentProgramConstantFloatCount
private

The number of floating-point constants fragment programs support.

Definition at line 328 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mFragmentProgramConstantIntCount
private

The number of integer constants fragment programs support.

Definition at line 330 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mGeometryProgramConstantBoolCount
private

The number of boolean constants vertex geometry support.

Definition at line 326 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mGeometryProgramConstantFloatCount
private

The number of floating-point constants geometry programs support.

Definition at line 322 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mGeometryProgramConstantIntCount
private

The number of integer constants vertex geometry support.

Definition at line 324 of file OgreRenderSystemCapabilities.h.

int Ogre::RenderSystemCapabilities::mGeometryProgramNumOutputVertices
private

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

Definition at line 346 of file OgreRenderSystemCapabilities.h.

Real Ogre::RenderSystemCapabilities::mMaxPointSize
private

The maximum point size.

Definition at line 336 of file OgreRenderSystemCapabilities.h.

Real Ogre::RenderSystemCapabilities::mMaxSupportedAnisotropy
private

The maximum supported anisotropy.

Definition at line 340 of file OgreRenderSystemCapabilities.h.

bool Ogre::RenderSystemCapabilities::mNonPOW2TexturesLimited
private

Are non-POW2 textures feature-limited?

Definition at line 338 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mNumMultiRenderTargets
private

The number of simultaneous render targets supported.

Definition at line 334 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mNumTextureUnits
private

The number of texture units available.

Definition at line 301 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mNumVertexBlendMatrices
private

The number of matrices available for hardware blending.

Definition at line 305 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mNumVertexTextureUnits
private

The number of vertex texture units supported.

Definition at line 342 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mNumWorldMatrices
private

The number of world matrices available.

Definition at line 299 of file OgreRenderSystemCapabilities.h.

String Ogre::RenderSystemCapabilities::mRenderSystemName
private

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

Definition at line 313 of file OgreRenderSystemCapabilities.h.

StringVector Ogre::RenderSystemCapabilities::msGPUVendorStrings
staticprivate

Definition at line 295 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mStencilBufferBitDepth
private

The stencil buffer bit depth.

Definition at line 303 of file OgreRenderSystemCapabilities.h.

ShaderProfiles Ogre::RenderSystemCapabilities::mSupportedShaderProfiles
private

The list of supported shader profiles.

Definition at line 350 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mTesselationDomainProgramConstantBoolCount
private

The number of boolean constants tesselation Domain programs support.

Definition at line 364 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mTesselationDomainProgramConstantFloatCount
private

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

Definition at line 360 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mTesselationDomainProgramConstantIntCount
private

The number of integer constants tesselation Domain programs support.

Definition at line 362 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mTesselationHullProgramConstantBoolCount
private

The number of boolean constants tesselation Hull programs support.

Definition at line 358 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mTesselationHullProgramConstantFloatCount
private

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

Definition at line 354 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mTesselationHullProgramConstantIntCount
private

The number of integer constants tesselation Hull programs support.

Definition at line 356 of file OgreRenderSystemCapabilities.h.

GPUVendor Ogre::RenderSystemCapabilities::mVendor
private

GPU Vendor.

Definition at line 293 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mVertexProgramConstantBoolCount
private

The number of boolean constants vertex programs support.

Definition at line 320 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mVertexProgramConstantFloatCount
private

The number of floating-point constants vertex programs support.

Definition at line 316 of file OgreRenderSystemCapabilities.h.

ushort Ogre::RenderSystemCapabilities::mVertexProgramConstantIntCount
private

The number of integer constants vertex programs support.

Definition at line 318 of file OgreRenderSystemCapabilities.h.

bool Ogre::RenderSystemCapabilities::mVertexTextureUnitsShared
private

Are vertex texture units shared with fragment processor?

Definition at line 344 of file OgreRenderSystemCapabilities.h.


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