|
KWin
|
#include <glshader.h>
Public Types | |
| enum | Flags { NoFlags = 0 , ExplicitLinking = (1 << 0) } |
| enum class | Mat3Uniform |
| enum class | Mat4Uniform { TextureMatrix = 0 , ProjectionMatrix , ModelViewMatrix , ModelViewProjectionMatrix , WindowTransformation , ScreenTransformation , ColorimetryTransformation , MatrixCount } |
| enum class | Vec2Uniform { Offset , Vec2UniformCount } |
| enum class | Vec3Uniform { PrimaryBrightness = 0 } |
| enum class | Vec4Uniform { ModulationConstant , Vec4UniformCount } |
| enum class | FloatUniform { Saturation , MaxHdrBrightness , SdrBrightness , FloatUniformCount } |
| enum class | IntUniform { AlphaToOne , TextureWidth , TextureHeight , SourceNamedTransferFunction , DestinationNamedTransferFunction , Sampler , Sampler1 , IntUniformCount } |
| enum class | ColorUniform { Color , ColorUniformCount } |
Public Member Functions | |
| GLShader (const QString &vertexfile, const QString &fragmentfile, unsigned int flags=NoFlags) | |
| ~GLShader () | |
| bool | isValid () const |
| void | bindAttributeLocation (const char *name, int index) |
| void | bindFragDataLocation (const char *name, int index) |
| bool | link () |
| int | uniformLocation (const char *name) |
| bool | setUniform (const char *name, float value) |
| bool | setUniform (const char *name, int value) |
| bool | setUniform (const char *name, const QVector2D &value) |
| bool | setUniform (const char *name, const QVector3D &value) |
| bool | setUniform (const char *name, const QVector4D &value) |
| bool | setUniform (const char *name, const QMatrix4x4 &value) |
| bool | setUniform (const char *name, const QColor &color) |
| bool | setUniform (int location, float value) |
| bool | setUniform (int location, int value) |
| bool | setUniform (int location, int xValue, int yValue, int zValue) |
| bool | setUniform (int location, const QVector2D &value) |
| bool | setUniform (int location, const QVector3D &value) |
| bool | setUniform (int location, const QVector4D &value) |
| bool | setUniform (int location, const QMatrix3x3 &value) |
| bool | setUniform (int location, const QMatrix4x4 &value) |
| bool | setUniform (int location, const QColor &value) |
| int | attributeLocation (const char *name) |
| bool | setAttribute (const char *name, float value) |
| QMatrix4x4 | getUniformMatrix4x4 (const char *name) |
| bool | setUniform (Mat3Uniform uniform, const QMatrix3x3 &value) |
| bool | setUniform (Mat4Uniform uniform, const QMatrix4x4 &matrix) |
| bool | setUniform (Vec2Uniform uniform, const QVector2D &value) |
| bool | setUniform (Vec3Uniform uniform, const QVector3D &value) |
| bool | setUniform (Vec4Uniform uniform, const QVector4D &value) |
| bool | setUniform (FloatUniform uniform, float value) |
| bool | setUniform (IntUniform uniform, int value) |
| bool | setUniform (ColorUniform uniform, const QVector4D &value) |
| bool | setUniform (ColorUniform uniform, const QColor &value) |
| bool | setColorspaceUniforms (const ColorDescription &src, const ColorDescription &dst) |
| bool | setColorspaceUniformsFromSRGB (const ColorDescription &dst) |
| bool | setColorspaceUniformsToSRGB (const ColorDescription &src) |
Protected Member Functions | |
| GLShader (unsigned int flags=NoFlags) | |
| bool | loadFromFiles (const QString &vertexfile, const QString &fragmentfile) |
| bool | load (const QByteArray &vertexSource, const QByteArray &fragmentSource) |
| const QByteArray | prepareSource (GLenum shaderType, const QByteArray &sourceCode) const |
| bool | compile (GLuint program, GLenum shaderType, const QByteArray &sourceCode) const |
| void | bind () |
| void | unbind () |
| void | resolveLocations () |
Friends | |
| class | ShaderManager |
Definition at line 25 of file glshader.h.
|
strong |
| Enumerator | |
|---|---|
| Color | |
| ColorUniformCount | |
Definition at line 120 of file glshader.h.
| Enumerator | |
|---|---|
| NoFlags | |
| ExplicitLinking | |
Definition at line 28 of file glshader.h.
|
strong |
| Enumerator | |
|---|---|
| Saturation | |
| MaxHdrBrightness | |
| SdrBrightness | |
| FloatUniformCount | |
Definition at line 102 of file glshader.h.
|
strong |
| Enumerator | |
|---|---|
| AlphaToOne |
|
| TextureWidth | |
| TextureHeight | |
| SourceNamedTransferFunction | |
| DestinationNamedTransferFunction | |
| Sampler | |
| Sampler1 | |
| IntUniformCount | |
Definition at line 109 of file glshader.h.
|
strong |
Definition at line 74 of file glshader.h.
|
strong |
| Enumerator | |
|---|---|
| TextureMatrix | |
| ProjectionMatrix | |
| ModelViewMatrix | |
| ModelViewProjectionMatrix | |
| WindowTransformation | |
| ScreenTransformation | |
| ColorimetryTransformation | |
| MatrixCount | |
Definition at line 77 of file glshader.h.
|
strong |
| Enumerator | |
|---|---|
| Offset | |
| Vec2UniformCount | |
Definition at line 88 of file glshader.h.
|
strong |
| Enumerator | |
|---|---|
| PrimaryBrightness | |
Definition at line 93 of file glshader.h.
|
strong |
| Enumerator | |
|---|---|
| ModulationConstant | |
| Vec4UniformCount | |
Definition at line 97 of file glshader.h.
| KWin::GLShader::GLShader | ( | const QString & | vertexfile, |
| const QString & | fragmentfile, | ||
| unsigned int | flags = NoFlags ) |
Definition at line 29 of file glshader.cpp.
| KWin::GLShader::~GLShader | ( | ) |
Definition at line 38 of file glshader.cpp.
|
protected |
Definition at line 21 of file glshader.cpp.
| int KWin::GLShader::attributeLocation | ( | const char * | name | ) |
Definition at line 415 of file glshader.cpp.
|
protected |
Definition at line 195 of file glshader.cpp.
| void KWin::GLShader::bindAttributeLocation | ( | const char * | name, |
| int | index ) |
Definition at line 183 of file glshader.cpp.
| void KWin::GLShader::bindFragDataLocation | ( | const char * | name, |
| int | index ) |
Definition at line 188 of file glshader.cpp.
|
protected |
Definition at line 109 of file glshader.cpp.
| QMatrix4x4 KWin::GLShader::getUniformMatrix4x4 | ( | const char * | name | ) |
|
inline |
Definition at line 36 of file glshader.h.
| bool KWin::GLShader::link | ( | ) |
Definition at line 64 of file glshader.cpp.
|
protected |
Definition at line 153 of file glshader.cpp.
|
protected |
Definition at line 45 of file glshader.cpp.
|
protected |
Definition at line 94 of file glshader.cpp.
|
protected |
Definition at line 205 of file glshader.cpp.
| bool KWin::GLShader::setAttribute | ( | const char * | name, |
| float | value ) |
Definition at line 421 of file glshader.cpp.
| bool KWin::GLShader::setColorspaceUniforms | ( | const ColorDescription & | src, |
| const ColorDescription & | dst ) |
Definition at line 447 of file glshader.cpp.
| bool KWin::GLShader::setColorspaceUniformsFromSRGB | ( | const ColorDescription & | dst | ) |
Definition at line 457 of file glshader.cpp.
| bool KWin::GLShader::setColorspaceUniformsToSRGB | ( | const ColorDescription & | src | ) |
Definition at line 462 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | ColorUniform | uniform, |
| const QColor & | value ) |
Definition at line 295 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | ColorUniform | uniform, |
| const QVector4D & | value ) |
Definition at line 289 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | const char * | name, |
| const QColor & | color ) |
Definition at line 337 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | const char * | name, |
| const QMatrix4x4 & | value ) |
Definition at line 331 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | const char * | name, |
| const QVector2D & | value ) |
Definition at line 313 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | const char * | name, |
| const QVector3D & | value ) |
Definition at line 319 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | const char * | name, |
| const QVector4D & | value ) |
Definition at line 325 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | const char * | name, |
| float | value ) |
Definition at line 301 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | const char * | name, |
| int | value ) |
Definition at line 307 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | FloatUniform | uniform, |
| float | value ) |
Definition at line 277 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | int | location, |
| const QColor & | value ) |
Definition at line 407 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | int | location, |
| const QMatrix3x3 & | value ) |
Definition at line 391 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | int | location, |
| const QMatrix4x4 & | value ) |
Definition at line 399 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | int | location, |
| const QVector2D & | value ) |
Definition at line 367 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | int | location, |
| const QVector3D & | value ) |
Definition at line 375 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | int | location, |
| const QVector4D & | value ) |
Definition at line 383 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | int | location, |
| float | value ) |
Definition at line 343 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | int | location, |
| int | value ) |
Definition at line 351 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | int | location, |
| int | xValue, | ||
| int | yValue, | ||
| int | zValue ) |
Definition at line 359 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | IntUniform | uniform, |
| int | value ) |
Definition at line 283 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | Mat3Uniform | uniform, |
| const QMatrix3x3 & | value ) |
Definition at line 247 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | Mat4Uniform | uniform, |
| const QMatrix4x4 & | matrix ) |
Definition at line 253 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | Vec2Uniform | uniform, |
| const QVector2D & | value ) |
Definition at line 259 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | Vec3Uniform | uniform, |
| const QVector3D & | value ) |
Definition at line 265 of file glshader.cpp.
| bool KWin::GLShader::setUniform | ( | Vec4Uniform | uniform, |
| const QVector4D & | value ) |
Definition at line 271 of file glshader.cpp.
|
protected |
Definition at line 200 of file glshader.cpp.
| int KWin::GLShader::uniformLocation | ( | const char * | name | ) |
Definition at line 241 of file glshader.cpp.
|
friend |
Definition at line 163 of file glshader.h.