blob: 59dea35b8da56cf8e92c3c68961a1b5d54e133f8 [file] [log] [blame]
joshualitt30ba4362014-08-21 20:18:45 -07001/*
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 GrGLShaderStringBuilder_DEFINED
9#define GrGLShaderStringBuilder_DEFINED
10
11#include "GrAllocator.h"
mtkleinb9eb4ac2015-02-02 18:26:03 -080012#include "GrGpu.h"
joshualitt30ba4362014-08-21 20:18:45 -070013#include "gl/GrGLContext.h"
ethannicholas5961bc92016-10-12 06:39:56 -070014#include "SkSLGLSLCodeGenerator.h"
joshualitt30ba4362014-08-21 20:18:45 -070015#include "SkTypes.h"
16
17GrGLuint GrGLCompileAndAttachShader(const GrGLContext& glCtx,
18 GrGLuint programId,
19 GrGLenum type,
Brian Salomone334c592017-05-15 11:00:58 -040020 const char** skslStrings,
joshualitt43466a12015-02-13 17:18:27 -080021 int* lengths,
22 int count,
Ethan Nicholas941e7e22016-12-12 15:33:30 -050023 GrGpu::Stats*,
24 const SkSL::Program::Settings& settings,
25 SkSL::Program::Inputs* inputs);
joshualitt30ba4362014-08-21 20:18:45 -070026
Brian Salomone334c592017-05-15 11:00:58 -040027void GrGLPrintShader(const GrGLContext&, GrGLenum type, const char** skslStrings, int* lengths,
28 int count, const SkSL::Program::Settings&);
29
joshualitt30ba4362014-08-21 20:18:45 -070030#endif