#include "src/gpu/ganesh/gl/GrGLUniformHandler.h"
#include "include/core/SkString.h"
#include "include/gpu/ganesh/GrBackendSurface.h"
#include "include/gpu/ganesh/gl/GrGLFunctions.h"
#include "include/gpu/ganesh/gl/GrGLInterface.h"
#include "include/private/base/SkAssert.h"
#include "src/gpu/ganesh/GrUtil.h"
#include "src/gpu/ganesh/gl/GrGLCaps.h"
#include "src/gpu/ganesh/gl/GrGLGpu.h"
#include "src/gpu/ganesh/gl/GrGLUtil.h"
#include "src/gpu/ganesh/gl/builders/GrGLProgramBuilder.h"
#include "src/gpu/ganesh/glsl/GrGLSLProgramBuilder.h"
#include "src/sksl/SkSLCompiler.h"
#include <string.h>
#include <utility>
#define GL_CALL(X) …
#define GL_CALL_RET(R, X) …
bool valid_name(const char* name) { … }
GrGLSLUniformHandler::UniformHandle GrGLUniformHandler::internalAddUniformArray(
const GrProcessor* owner,
uint32_t visibility,
SkSLType type,
const char* name,
bool mangleName,
int arrayCount,
const char** outName) { … }
GrGLSLUniformHandler::SamplerHandle GrGLUniformHandler::addSampler(
const GrBackendFormat& backendFormat,
GrSamplerState,
const skgpu::Swizzle& swizzle,
const char* name,
const GrShaderCaps* shaderCaps) { … }
void GrGLUniformHandler::appendUniformDecls(GrShaderFlags visibility, SkString* out) const { … }
void GrGLUniformHandler::bindUniformLocations(GrGLuint programID, const GrGLCaps& caps) { … }
void GrGLUniformHandler::getUniformLocations(GrGLuint programID, const GrGLCaps& caps, bool force) { … }
const GrGLGpu* GrGLUniformHandler::glGpu() const { … }