CS::PluginCommon::ShaderProgramPluginGL Class Reference (Crystal Space 2.0 Public API Reference)

| ## Public API Reference

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes
CS::PluginCommon::ShaderProgramPluginGL Class Reference

Common code useful for all OpenGL-based shader program plugins. More...

`#include <csplugincommon/opengl/shaderplugin.h>`

Inheritance diagram for CS::PluginCommon::ShaderProgramPluginGL:

List of all members.

## Classes
class | ClipPlanes
| Helper class for user defined OpenGL clip planes. More...
## Public Types
enum | HardwareVendor { Invalid = -1, Other = 0, ATI = 1, NVIDIA = 2 }
| Known vendors of graphics hardware/drivers. More...
## Public Member Functions
uint | ParseVendorMask (const char *mask)
| Parse a string into a set of vendors.
## Static Public Member Functions
static HardwareVendor | VendorFromString (const char *vendorStr)
| Convert a to a vendor value.
static const char * | VendorToString (HardwareVendor vendor)
| Give a string representation from a vendor value.
## Public Attributes
ClipPlanes | clipPlanes
| Helper for user-defined clip planes.
## Protected Member Functions
void | Close ()
| Close the common part.
bool | Initialize (iObjectRegistry *objectReg)
| Initialize program plugin common stuff.
bool | Open ()
| Open the common part. Returns whether opened successful.
| ShaderProgramPluginGL (iBase *parent)
| Construct.
## Protected Attributes
bool | doVerbose
| Whether verbose reporting was enabled.
bool | doVerbosePrecache
| Whether "precache" verbose reporting was enabled.
csGLExtensionManager * | ext
| GL extension manager.
bool | isOpen
| Whether the program plugin was openend.
iObjectRegistry * | object_reg
| Object registry.
csGLStateCache * | statecache
| GL state cache.
HardwareVendor | vendor
| Vendor of the current graphics hardware/driver.

## Detailed Description

Common code useful for all OpenGL-based shader program plugins.

Definition at line 42 of file shaderplugin.h.

## Member Enumeration Documentation

enum CS::PluginCommon::ShaderProgramPluginGL::HardwareVendor

Known vendors of graphics hardware/drivers.

Enumerator:

  Invalid | No vendor identified yet.
  Other | Other vendor.
  ATI | ATI/AMD.
  NVIDIA | NVidia.

Definition at line 47 of file shaderplugin.h.

## Constructor & Destructor Documentation

CS::PluginCommon::ShaderProgramPluginGL::ShaderProgramPluginGL | ( | iBase * | parent | ) | `[protected]`

Construct.

## Member Function Documentation

void CS::PluginCommon::ShaderProgramPluginGL::Close | ( |  | ) | `[protected]`

Close the common part.

bool CS::PluginCommon::ShaderProgramPluginGL::Initialize | ( | iObjectRegistry * | objectReg | ) | `[protected]`

Initialize program plugin common stuff.

bool CS::PluginCommon::ShaderProgramPluginGL::Open | ( |  | ) | `[protected]`

Open the common part. Returns whether opened successful.

uint CS::PluginCommon::ShaderProgramPluginGL::ParseVendorMask | ( | const char * | mask | ) |

Parse a string into a set of vendors.

Parameters:

  mask | Mask string. It can be a single vendor string (`ati`, `nvidia`, `other`) causing this vendor to be included in the mask, the special string `*` including all vendors in the mask, a vendor string prefixed by `!` excluding that vendor from the mask or a combination of these, separated by `,`. If the first sub-string is an exclusion mask string an `*` is implicitly inserted before the first sub-string.

Returns:
  A set of vendors encoded as a combination of bits.. If a bit `1 << (vendor)` is set, then that vendor is included in the set, otherwise not.

static HardwareVendor CS::PluginCommon::ShaderProgramPluginGL::VendorFromString | ( | const char * | vendorStr | ) | `[static]`

Convert a to a vendor value.

static const char* CS::PluginCommon::ShaderProgramPluginGL::VendorToString | ( | HardwareVendor | vendor | ) | `[static]`

Give a string representation from a vendor value.

## Member Data Documentation

ClipPlanes CS::PluginCommon::ShaderProgramPluginGL::clipPlanes

Helper for user-defined clip planes.

Definition at line 167 of file shaderplugin.h.

bool CS::PluginCommon::ShaderProgramPluginGL::doVerbose`[protected]`

Whether verbose reporting was enabled.

Definition at line 106 of file shaderplugin.h.

bool CS::PluginCommon::ShaderProgramPluginGL::doVerbosePrecache`[protected]`

Whether "precache" verbose reporting was enabled.

This should report progress on precaching, but not necessarily everything during shader precaching (e.g. compile errors).

Definition at line 112 of file shaderplugin.h.

csGLExtensionManager* CS::PluginCommon::ShaderProgramPluginGL::ext`[protected]`

GL extension manager.

Definition at line 102 of file shaderplugin.h.

bool CS::PluginCommon::ShaderProgramPluginGL::isOpen`[protected]`

Whether the program plugin was openend.

Definition at line 98 of file shaderplugin.h.

iObjectRegistry* CS::PluginCommon::ShaderProgramPluginGL::object_reg`[protected]`

Object registry.

Definition at line 100 of file shaderplugin.h.

csGLStateCache* CS::PluginCommon::ShaderProgramPluginGL::statecache`[protected]`

GL state cache.

Definition at line 104 of file shaderplugin.h.

HardwareVendor CS::PluginCommon::ShaderProgramPluginGL::vendor`[protected]`

Vendor of the current graphics hardware/driver.

Set after Open().

Definition at line 67 of file shaderplugin.h.

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

- csplugincommon/opengl/shaderplugin.h