/* * Copyright 2015 Google Inc. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #ifndef GrGLSLTextureSampler_DEFINED #define GrGLSLTextureSampler_DEFINED #include "GrShaderVar.h" #include "GrTextureAccess.h" #include "glsl/GrGLSLProgramDataManager.h" class GrGLSLTextureSampler { public: typedef GrGLSLProgramDataManager::UniformHandle UniformHandle; typedef SkTArray<GrGLSLTextureSampler> TextureSamplerArray; GrGLSLTextureSampler(UniformHandle uniform, const GrTextureAccess& access) : fSamplerUniform(uniform) , fConfig(access.getTexture()->config()) { SkASSERT(kUnknown_GrPixelConfig != fConfig); } GrPixelConfig config() const { return fConfig; } private: UniformHandle fSamplerUniform; GrPixelConfig fConfig; friend class GrGLSLShaderBuilder; }; #endif