Lines Matching refs:dispatch
354 Result<ScopedGlShader> ScopedGlShader::MakeShader(GlDispatch& dispatch, GLenum type, in MakeShader() argument
356 GLuint shader = dispatch.glCreateShader(type); in MakeShader()
363 dispatch.glShaderSource(shader, 1, &sourceTyped, &sourceLength); in MakeShader()
364 dispatch.glCompileShader(shader); in MakeShader()
367 dispatch.glGetShaderiv(shader, GL_COMPILE_STATUS, &compileStatus); in MakeShader()
371 dispatch.glGetShaderiv(shader, GL_INFO_LOG_LENGTH, &errorLogLength); in MakeShader()
377 dispatch.glGetShaderInfoLog(shader, errorLogLength, &errorLogLength, errorLog.data()); in MakeShader()
382 dispatch.glDeleteShader(shader); in MakeShader()
386 return ScopedGlShader(dispatch, shader); in MakeShader()
389 Result<ScopedGlProgram> ScopedGlProgram::MakeProgram(GlDispatch& dispatch, in MakeProgram() argument
393 GFXSTREAM_EXPECT(ScopedGlShader::MakeShader(dispatch, GL_VERTEX_SHADER, vertSource)); in MakeProgram()
395 GFXSTREAM_EXPECT(ScopedGlShader::MakeShader(dispatch, GL_FRAGMENT_SHADER, fragSource)); in MakeProgram()
397 GLuint program = dispatch.glCreateProgram(); in MakeProgram()
398 dispatch.glAttachShader(program, vertShader); in MakeProgram()
399 dispatch.glAttachShader(program, fragShader); in MakeProgram()
400 dispatch.glLinkProgram(program); in MakeProgram()
403 dispatch.glGetProgramiv(program, GL_LINK_STATUS, &linkStatus); in MakeProgram()
406 dispatch.glGetProgramiv(program, GL_INFO_LOG_LENGTH, &errorLogLength); in MakeProgram()
412 dispatch.glGetProgramInfoLog(program, errorLogLength, nullptr, errorLog.data()); in MakeProgram()
417 dispatch.glDeleteProgram(program); in MakeProgram()
421 return ScopedGlProgram(dispatch, program); in MakeProgram()
425 GlDispatch& dispatch, GLenum programBinaryFormat, in MakeProgram() argument
427 GLuint program = dispatch.glCreateProgram(); in MakeProgram()
428 dispatch.glProgramBinary(program, programBinaryFormat, programBinaryData.data(), in MakeProgram()
432 dispatch.glGetProgramiv(program, GL_LINK_STATUS, &linkStatus); in MakeProgram()
435 dispatch.glGetProgramiv(program, GL_INFO_LOG_LENGTH, &errorLogLength); in MakeProgram()
441 dispatch.glGetProgramInfoLog(program, errorLogLength, nullptr, errorLog.data()); in MakeProgram()
446 dispatch.glDeleteProgram(program); in MakeProgram()
450 return ScopedGlProgram(dispatch, program); in MakeProgram()