Overview | Modules | Class Hierarchy | Classes | Members

# tlp::GlShaderManager Class Reference

`#include <GlShaderManager.h>`

Collaboration diagram for tlp::GlShaderManager:

[legend]
List of all members.

## Public Member Functions

- bool isShaderProgramsSupported () const
- bool isGeometryShaderSupported () const
- GlShaderProgram * createVertexShaderFromFile (const std::string &name, const std::string &vertexShaderSourceFilePath)
- GlShaderProgram * createFragmentShaderFromFile (const std::string &name, const std::string &fragmentShaderSourceFilePath)
- GlShaderProgram * createVertexAndFragmentShaderFromFiles (const std::string &name, const std::string &vertexShaderSourceFilePath, const std::string &fragmentShaderSourceFilePath)
- GlShaderProgram * createGeometryShaderFromFile (const std::string &name, const std::string &geometryShaderSourceFilePath="", GLenum inputPrimitiveType=GL_LINES, GLenum outputPrimitiveType=GL_LINE_STRIP)
- GlShaderProgram * createVertexShaderFromString (const std::string &name, const std::string &vertexShaderSource)
- GlShaderProgram * createFragmentShaderFromString (const std::string &name, const std::string &fragmentShaderSource)
- GlShaderProgram * createVertexAndFragmentShaderFromStrings (const std::string &name, const std::string &vertexShaderSource, const std::string &fragmentShaderSource)
- GlShaderProgram * createGeometryShaderFromString (const std::string &name, const std::string &geometryShaderSource="", GLenum inputPrimitiveType=GL_LINES, GLenum outputPrimitiveType=GL_LINE_STRIP)
- void activateShaderProgram (GlShaderProgram *shaderProgram)
- void desactivateShaderProgram ()
- void deleteShaderProgram (GlShaderProgram *shaderProgram)
- std::string getCurrentShaderProgramName () const
- GlShaderProgram * getCurrentShaderProgram () const
- bool shaderProgramAlreadyCompiled (const std::string &programName)
- GlShaderProgram * getShaderProgram (const std::string &programName)

## Static Public Member Functions

- static GlShaderManager * getInstance ()

## Member Function Documentation

void tlp::GlShaderManager::activateShaderProgram | ( | GlShaderProgram * | shaderProgram | ) |

GlShaderProgram* tlp::GlShaderManager::createFragmentShaderFromFile | ( | const std::string & | name,
|  | const std::string & | fragmentShaderSourceFilePath
| ) |

GlShaderProgram* tlp::GlShaderManager::createFragmentShaderFromString | ( | const std::string & | name,
|  | const std::string & | fragmentShaderSource
| ) |

GlShaderProgram* tlp::GlShaderManager::createGeometryShaderFromFile | ( | const std::string & | name,
|  | const std::string & | geometryShaderSourceFilePath = `""`,
|  | GLenum | inputPrimitiveType = `GL_LINES`,
|  | GLenum | outputPrimitiveType = `GL_LINE_STRIP`
| ) |

GlShaderProgram* tlp::GlShaderManager::createGeometryShaderFromString | ( | const std::string & | name,
|  | const std::string & | geometryShaderSource = `""`,
|  | GLenum | inputPrimitiveType = `GL_LINES`,
|  | GLenum | outputPrimitiveType = `GL_LINE_STRIP`
| ) |

GlShaderProgram* tlp::GlShaderManager::createVertexAndFragmentShaderFromFiles | ( | const std::string & | name,
|  | const std::string & | vertexShaderSourceFilePath,
|  | const std::string & | fragmentShaderSourceFilePath
| ) |

GlShaderProgram* tlp::GlShaderManager::createVertexAndFragmentShaderFromStrings | ( | const std::string & | name,
|  | const std::string & | vertexShaderSource,
|  | const std::string & | fragmentShaderSource
| ) |

GlShaderProgram* tlp::GlShaderManager::createVertexShaderFromFile | ( | const std::string & | name,
|  | const std::string & | vertexShaderSourceFilePath
| ) |

GlShaderProgram* tlp::GlShaderManager::createVertexShaderFromString | ( | const std::string & | name,
|  | const std::string & | vertexShaderSource
| ) |

void tlp::GlShaderManager::deleteShaderProgram | ( | GlShaderProgram * | shaderProgram | ) |

void tlp::GlShaderManager::desactivateShaderProgram | ( |  | ) |

GlShaderProgram* tlp::GlShaderManager::getCurrentShaderProgram | ( |  | ) | const

std::string tlp::GlShaderManager::getCurrentShaderProgramName | ( |  | ) | const

static GlShaderManager* tlp::GlShaderManager::getInstance | ( |  | ) | `[static]`

GlShaderProgram* tlp::GlShaderManager::getShaderProgram | ( | const std::string & | programName | ) |

bool tlp::GlShaderManager::isGeometryShaderSupported | ( |  | ) | const`[inline]`

bool tlp::GlShaderManager::isShaderProgramsSupported | ( |  | ) | const`[inline]`

bool tlp::GlShaderManager::shaderProgramAlreadyCompiled | ( | const std::string & | programName | ) |

Tulip Software by LaBRI Visualization Team 2001 - 2010