diff options
author | joshualitt <joshualitt@chromium.org> | 2014-08-21 20:18:45 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-08-21 20:18:45 -0700 |
commit | 30ba436f04e61d4505fb854d5fc56079636e0788 (patch) | |
tree | 0a8756ce4f6df0364fb238ee0057b78863afa8a5 /src/gpu/gl/builders/GrGLGeometryShaderBuilder.h | |
parent | c8c4b957288fd3114d60e3faa9bc95c4c15ca1f2 (diff) |
Initial refactor of shaderbuilder to prepare for geometry shaders
gitignore for eclipse
BUG=skia:
R=bsalomon@google.com, bsalomon@chromium.org
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/491673002
Diffstat (limited to 'src/gpu/gl/builders/GrGLGeometryShaderBuilder.h')
-rw-r--r-- | src/gpu/gl/builders/GrGLGeometryShaderBuilder.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/gpu/gl/builders/GrGLGeometryShaderBuilder.h b/src/gpu/gl/builders/GrGLGeometryShaderBuilder.h new file mode 100644 index 0000000000..833d31774f --- /dev/null +++ b/src/gpu/gl/builders/GrGLGeometryShaderBuilder.h @@ -0,0 +1,32 @@ +/* + * Copyright 2014 Google Inc. + * + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ + +#ifndef GrGLGeometryShaderBuilder_DEFINED +#define GrGLGeometryShaderBuilder_DEFINED + +#include "GrGLShaderBuilder.h" + +class GrGLProgramBuilder; + +class GrGLGeometryShaderBuilder : public GrGLFullShaderBuilder { +public: + GrGLGeometryShaderBuilder(GrGLFullProgramBuilder* program); +private: + /* + * an internal call for GrGLFullProgramBuilder to add varyings + */ + void addVarying(GrSLType type, + const char* name, + const char** gsOutName); + + bool compileAndAttachShaders(GrGLuint programId, SkTDArray<GrGLuint>* shaderIds) const; + + friend class GrGLFullProgramBuilder; + typedef GrGLFullShaderBuilder INHERITED; +}; + +#endif |