| // |
| // Copyright (c) 2013 The ANGLE Project Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| // |
| |
| #include "compiler/ShaderVariable.h" |
| |
| namespace sh |
| { |
| |
| ShaderVariable::ShaderVariable(GLenum typeIn, GLenum precisionIn, const char *nameIn, unsigned int arraySizeIn) |
| : type(typeIn), |
| precision(precisionIn), |
| name(nameIn), |
| arraySize(arraySizeIn) |
| { |
| } |
| |
| Uniform::Uniform(GLenum typeIn, GLenum precisionIn, const char *nameIn, unsigned int arraySizeIn, unsigned int registerIndexIn) |
| : ShaderVariable(typeIn, precisionIn, nameIn, arraySizeIn), |
| registerIndex(registerIndexIn) |
| { |
| } |
| |
| Attribute::Attribute() |
| : ShaderVariable(GL_NONE, GL_NONE, "", 0), |
| location(-1) |
| { |
| } |
| |
| Attribute::Attribute(GLenum typeIn, GLenum precisionIn, const char *nameIn, unsigned int arraySizeIn, int locationIn) |
| : ShaderVariable(typeIn, precisionIn, nameIn, arraySizeIn), |
| location(locationIn) |
| { |
| } |
| |
| InterfaceBlockField::InterfaceBlockField(GLenum typeIn, GLenum precisionIn, const char *nameIn, unsigned int arraySizeIn, bool isRowMajorMatrix) |
| : ShaderVariable(typeIn, precisionIn, nameIn, arraySizeIn), |
| isRowMajorMatrix(isRowMajorMatrix) |
| { |
| } |
| |
| Varying::Varying(GLenum typeIn, GLenum precisionIn, const char *nameIn, unsigned int arraySizeIn) |
| : ShaderVariable(typeIn, precisionIn, nameIn, arraySizeIn) |
| { |
| } |
| |
| BlockMemberInfo::BlockMemberInfo(int offset, int arrayStride, int matrixStride, bool isRowMajorMatrix) |
| : offset(offset), |
| arrayStride(arrayStride), |
| matrixStride(matrixStride), |
| isRowMajorMatrix(isRowMajorMatrix) |
| { |
| } |
| |
| const BlockMemberInfo BlockMemberInfo::defaultBlockInfo(-1, -1, -1, false); |
| |
| InterfaceBlock::InterfaceBlock(const char *name, unsigned int arraySize, unsigned int registerIndex) |
| : name(name), |
| arraySize(arraySize), |
| layout(BLOCKLAYOUT_SHARED), |
| registerIndex(registerIndex), |
| isRowMajorLayout(false) |
| { |
| } |
| |
| } |