Line data Source code
1 : /*
2 : * Copyright 2014 Google Inc.
3 : *
4 : * Use of this source code is governed by a BSD-style license that can be
5 : * found in the LICENSE file.
6 : */
7 :
8 : #ifndef GrGLSLVertexShader_DEFINED
9 : #define GrGLSLVertexShader_DEFINED
10 :
11 : #include "GrGLSLShaderBuilder.h"
12 : #include "GrGeometryProcessor.h"
13 :
14 : class GrGLSLVarying;
15 :
16 : // Enough precision to represent 1 / 2048 accurately in printf
17 : #define GR_SIGNIFICANT_POW2_DECIMAL_DIG 11
18 :
19 0 : class GrGLSLVertexBuilder : public GrGLSLShaderBuilder {
20 : public:
21 : GrGLSLVertexBuilder(GrGLSLProgramBuilder* program);
22 :
23 : void transformToNormalizedDeviceSpace(const GrShaderVar& posVar, const char* rtAdjustName);
24 : private:
25 : void onFinalize() override;
26 :
27 : friend class GrGLProgramBuilder;
28 :
29 : typedef GrGLSLShaderBuilder INHERITED;
30 : };
31 :
32 : #endif
|