1*8975f5c5SAndroid Build Coastguard Worker // 2*8975f5c5SAndroid Build Coastguard Worker // Copyright 2017 The ANGLE Project Authors. All rights reserved. 3*8975f5c5SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 4*8975f5c5SAndroid Build Coastguard Worker // found in the LICENSE file. 5*8975f5c5SAndroid Build Coastguard Worker // 6*8975f5c5SAndroid Build Coastguard Worker 7*8975f5c5SAndroid Build Coastguard Worker // ProgramPipelineGL.cpp: Implements the class methods for ProgramPipelineGL. 8*8975f5c5SAndroid Build Coastguard Worker 9*8975f5c5SAndroid Build Coastguard Worker #include "libANGLE/renderer/gl/ProgramPipelineGL.h" 10*8975f5c5SAndroid Build Coastguard Worker 11*8975f5c5SAndroid Build Coastguard Worker #include "common/debug.h" 12*8975f5c5SAndroid Build Coastguard Worker #include "libANGLE/renderer/gl/FunctionsGL.h" 13*8975f5c5SAndroid Build Coastguard Worker 14*8975f5c5SAndroid Build Coastguard Worker namespace rx 15*8975f5c5SAndroid Build Coastguard Worker { 16*8975f5c5SAndroid Build Coastguard Worker ProgramPipelineGL(const gl::ProgramPipelineState & data,const FunctionsGL * functions)17*8975f5c5SAndroid Build Coastguard WorkerProgramPipelineGL::ProgramPipelineGL(const gl::ProgramPipelineState &data, 18*8975f5c5SAndroid Build Coastguard Worker const FunctionsGL *functions) 19*8975f5c5SAndroid Build Coastguard Worker : ProgramPipelineImpl(data), mFunctions(functions), mProgramPipelineID(0) 20*8975f5c5SAndroid Build Coastguard Worker { 21*8975f5c5SAndroid Build Coastguard Worker ASSERT(mFunctions); 22*8975f5c5SAndroid Build Coastguard Worker mFunctions->genProgramPipelines(1, &mProgramPipelineID); 23*8975f5c5SAndroid Build Coastguard Worker } 24*8975f5c5SAndroid Build Coastguard Worker ~ProgramPipelineGL()25*8975f5c5SAndroid Build Coastguard WorkerProgramPipelineGL::~ProgramPipelineGL() 26*8975f5c5SAndroid Build Coastguard Worker { 27*8975f5c5SAndroid Build Coastguard Worker if (mProgramPipelineID != 0) 28*8975f5c5SAndroid Build Coastguard Worker { 29*8975f5c5SAndroid Build Coastguard Worker mFunctions->deleteProgramPipelines(1, &mProgramPipelineID); 30*8975f5c5SAndroid Build Coastguard Worker mProgramPipelineID = 0; 31*8975f5c5SAndroid Build Coastguard Worker } 32*8975f5c5SAndroid Build Coastguard Worker } 33*8975f5c5SAndroid Build Coastguard Worker 34*8975f5c5SAndroid Build Coastguard Worker } // namespace rx 35