Om  1.0.0
A universal framework for multimedia simulation
Public Types | Public Member Functions | Static Public Attributes | List of all members
om::graphics::materials::ShaderLanguage Class Reference

A class that specifies a particular type and version of a shading language. More...

#include <omGraphicsShaderLanguage.h>

Public Types

enum  Type {
  GLSL, HLSL, CG, ARB_ASSEMBLY,
  PSSL, RENDERMAN, VEX, GELATO,
  DEFAULT, UNDEFINED
}
 An enum type which represents the type for a shading language. More...
 

Public Member Functions

 ShaderLanguage ()
 Create a new shader language type with an UNDEFINED language type. More...
 
 ShaderLanguage (Type newType)
 Create a new shader language type with the specified type enum value. More...
 
 ShaderLanguage (Type newType, const ShaderLanguageVersion &newVersion)
 Create a new shader language type with the specified type enum value. More...
 
 operator Type () const
 Convert this shader language to an enum value. More...
 
Type getType () const
 Return an enum indicating the type of this shader language. More...
 
void setType (Type newType)
 Set an enum indicating the type of this shader language. More...
 
const ShaderLanguageVersiongetVersion () const
 Return a reference to an object representing the version of this shader langauge. More...
 
void setVersion (const ShaderLanguageVersion &newVersion)
 Set an object representing the version of this shader langauge. More...
 
String toString () const
 Return a human-readable string representation of the shader language. More...
 
 operator String () const
 Convert this shader language into a string representation. More...
 

Static Public Attributes

static const ShaderLanguage GLSL_110
 The GLSL version 1.10 predefined shader language object. More...
 
static const ShaderLanguage GLSL_120
 The GLSL version 1.20 predefined shader language object. More...
 
static const ShaderLanguage GLSL_130
 The GLSL version 1.30 predefined shader language object. More...
 
static const ShaderLanguage GLSL_140
 The GLSL version 1.40 predefined shader language object. More...
 
static const ShaderLanguage GLSL_150
 The GLSL version 1.50 predefined shader language object. More...
 
static const ShaderLanguage GLSL_330
 The GLSL version 3.30 predefined shader language object. More...
 
static const ShaderLanguage GLSL_400
 The GLSL version 4.00 predefined shader language object. More...
 
static const ShaderLanguage GLSL_410
 The GLSL version 4.10 predefined shader language object. More...
 
static const ShaderLanguage GLSL_420
 The GLSL version 4.20 predefined shader language object. More...
 
static const ShaderLanguage GLSL_430
 The GLSL version 4.30 predefined shader language object. More...
 
static const ShaderLanguage GLSL_440
 The GLSL version 4.40 predefined shader language object. More...
 

Detailed Description

A class that specifies a particular type and version of a shading language.

The type specified here is used to determine how a shader's source code is compiled.

Member Enumeration Documentation

An enum type which represents the type for a shading language.

Some of these shading language types may be unimplemented for the current platform.

Enumerator
GLSL 

The OpenGL Shading Language.

HLSL 

The High-Level Shading Language for DirectX.

CG 

The NVIDIA Cg shading language.

ARB_ASSEMBLY 

ARB assembly language.

PSSL 

The PlayStation Shading Language.

RENDERMAN 

The RenderMan offline shading language.

VEX 

The Houdini VEX offline shading language.

GELATO 

The Gelato offline shading language.

DEFAULT 

The default shading language for a particular implementation.

The version number is ignored for this shader language type.

UNDEFINED 

An undefined shading language.

Constructor & Destructor Documentation

om::graphics::materials::ShaderLanguage::ShaderLanguage ( )
inline

Create a new shader language type with an UNDEFINED language type.

om::graphics::materials::ShaderLanguage::ShaderLanguage ( Type  newType)
inline

Create a new shader language type with the specified type enum value.

om::graphics::materials::ShaderLanguage::ShaderLanguage ( Type  newType,
const ShaderLanguageVersion newVersion 
)
inline

Create a new shader language type with the specified type enum value.

Member Function Documentation

om::graphics::materials::ShaderLanguage::operator Type ( ) const
inline

Convert this shader language to an enum value.

Type om::graphics::materials::ShaderLanguage::getType ( ) const
inline

Return an enum indicating the type of this shader language.

void om::graphics::materials::ShaderLanguage::setType ( Type  newType)
inline

Set an enum indicating the type of this shader language.

const ShaderLanguageVersion& om::graphics::materials::ShaderLanguage::getVersion ( ) const
inline

Return a reference to an object representing the version of this shader langauge.

void om::graphics::materials::ShaderLanguage::setVersion ( const ShaderLanguageVersion newVersion)
inline

Set an object representing the version of this shader langauge.

String om::graphics::materials::ShaderLanguage::toString ( ) const

Return a human-readable string representation of the shader language.

om::graphics::materials::ShaderLanguage::operator String ( ) const
inline

Convert this shader language into a string representation.

Member Data Documentation

const ShaderLanguage om::graphics::materials::ShaderLanguage::GLSL_110
static

The GLSL version 1.10 predefined shader language object.

const ShaderLanguage om::graphics::materials::ShaderLanguage::GLSL_120
static

The GLSL version 1.20 predefined shader language object.

const ShaderLanguage om::graphics::materials::ShaderLanguage::GLSL_130
static

The GLSL version 1.30 predefined shader language object.

const ShaderLanguage om::graphics::materials::ShaderLanguage::GLSL_140
static

The GLSL version 1.40 predefined shader language object.

const ShaderLanguage om::graphics::materials::ShaderLanguage::GLSL_150
static

The GLSL version 1.50 predefined shader language object.

const ShaderLanguage om::graphics::materials::ShaderLanguage::GLSL_330
static

The GLSL version 3.30 predefined shader language object.

const ShaderLanguage om::graphics::materials::ShaderLanguage::GLSL_400
static

The GLSL version 4.00 predefined shader language object.

const ShaderLanguage om::graphics::materials::ShaderLanguage::GLSL_410
static

The GLSL version 4.10 predefined shader language object.

const ShaderLanguage om::graphics::materials::ShaderLanguage::GLSL_420
static

The GLSL version 4.20 predefined shader language object.

const ShaderLanguage om::graphics::materials::ShaderLanguage::GLSL_430
static

The GLSL version 4.30 predefined shader language object.

const ShaderLanguage om::graphics::materials::ShaderLanguage::GLSL_440
static

The GLSL version 4.40 predefined shader language object.


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