| Index: src/gpu/gl/GrGLCoordTransform.h
|
| diff --git a/src/gpu/gl/GrGLCoordTransform.h b/src/gpu/gl/GrGLCoordTransform.h
|
| deleted file mode 100644
|
| index cd2f38a028356eb51e1027eb3368d10c23d71383..0000000000000000000000000000000000000000
|
| --- a/src/gpu/gl/GrGLCoordTransform.h
|
| +++ /dev/null
|
| @@ -1,109 +0,0 @@
|
| -/*
|
| - * Copyright 2012 Google Inc.
|
| - *
|
| - * Use of this source code is governed by a BSD-style license that can be
|
| - * found in the LICENSE file.
|
| - */
|
| -
|
| -#ifndef GrGLCoordTransform_DEFINED
|
| -#define GrGLCoordTransform_DEFINED
|
| -
|
| -#include "GrBackendEffectFactory.h"
|
| -#include "GrCoordTransform.h"
|
| -#include "GrGLUniformManager.h"
|
| -
|
| -class GrTexture;
|
| -class GrGLShaderBuilder;
|
| -
|
| -/**
|
| - * This is a helper class used by the framework to implement a coordinate transform that operates on
|
| - * incoming coords in the vertex shader and writes them to a varying to be used in the fragment
|
| - * shader. Effects should not use this class directly, but instead call GrEffect::addCoordTransform.
|
| - * When the input coords are local coordinates this class accounts for the coord change matrix
|
| - * communicated via GrDrawEffect. The input coords may also be positions and in this case the coord
|
| - * change matrix is ignored. The GrGLCoordTransform may emit different code based on the type of
|
| - * matrix and thus must contribute to the effect's key.
|
| - *
|
| - * This class cannot be used to apply a matrix to coordinates that come in the form of custom vertex
|
| - * attributes.
|
| - */
|
| -class GrGLCoordTransform {
|
| -private:
|
| - // We specialize the generated code for each of these matrix types.
|
| - enum MatrixTypes {
|
| - kIdentity_MatrixType = 0,
|
| - kTrans_MatrixType = 1,
|
| - kNoPersp_MatrixType = 2,
|
| - kGeneral_MatrixType = 3,
|
| - };
|
| - // The key for is made up of a matrix type and a bit that indicates the source of the input
|
| - // coords.
|
| - enum {
|
| - kMatrixTypeKeyBits = 2,
|
| - kMatrixTypeKeyMask = (1 << kMatrixTypeKeyBits) - 1,
|
| - kPositionCoords_Flag = (1 << kMatrixTypeKeyBits),
|
| - kKeyBitsPrivate = kMatrixTypeKeyBits + 1,
|
| - };
|
| -
|
| -public:
|
| -
|
| - typedef GrBackendEffectFactory::EffectKey EffectKey;
|
| -
|
| - /**
|
| - * A GrGLCoordTransform key is kKeyBits long. The framework automatically generates and includes
|
| - * these in EffectKeys.
|
| - */
|
| - enum {
|
| - kKeyBits = kKeyBitsPrivate,
|
| - kKeyMask = (1 << kKeyBits) - 1,
|
| - };
|
| -
|
| - GrGLCoordTransform() { fPrevMatrix = SkMatrix::InvalidMatrix(); }
|
| -
|
| - /**
|
| - * Generates the key for the portion of the code emitted by this class's emitCode() function.
|
| - */
|
| - static EffectKey GenKey(const GrDrawEffect&, int transformIdx);
|
| -
|
| - /**
|
| - * Stores the name and type of a transformed set of coordinates. This class is passed to
|
| - * GrGLEffect::emitCode.
|
| - */
|
| - class TransformedCoords {
|
| - public:
|
| - const char* c_str() const { return fName.c_str(); }
|
| - GrSLType type() const { return fType; }
|
| - const SkString& getName() const { return fName; }
|
| - // TODO: Remove the VS name when we have vertexless shaders, and gradients are reworked.
|
| - const SkString& getVSName() const { return fVSName; }
|
| -
|
| - private:
|
| - friend class GrGLCoordTransform;
|
| -
|
| - SkString fName;
|
| - GrSLType fType;
|
| - SkString fVSName;
|
| - };
|
| -
|
| - /**
|
| - * Emits code to implement the matrix in the VS. A varying is added as an output of the VS and
|
| - * input to the FS. The varying may be either a vec2f or vec3f depending upon whether
|
| - * perspective interpolation is required or not. The names of the varying in the VS and FS as
|
| - * well as its type are written to the TransformedCoords* object. The suffix is an optional
|
| - * parameter that can be used to make all variables emitted by the object unique within a stage.
|
| - * It is only necessary if multiple GrGLCoordTransform objects are used by a single GrGLEffect.
|
| - */
|
| - void emitCode(GrGLShaderBuilder*, EffectKey, TransformedCoords*, int suffix = 0);
|
| -
|
| - /**
|
| - * Call from a GrGLEffect's subclass to update the texture matrix. The matrix and reverseY value
|
| - * should match those used with GenKey.
|
| - */
|
| - void setData(const GrGLUniformManager&, const GrDrawEffect&, int transformIdx);
|
| -
|
| - GrGLUniformManager::UniformHandle fUni;
|
| - GrSLType fUniType;
|
| - SkMatrix fPrevMatrix;
|
| -};
|
| -
|
| -#endif
|
|
|