1 2/* 3 * Copyright 2012 Google Inc. 4 * 5 * Use of this source code is governed by a BSD-style license that can be 6 * found in the LICENSE file. 7 */ 8 9#ifndef GrShaderObj_DEFINED 10#define GrShaderObj_DEFINED 11 12#include "GrFakeRefObj.h" 13#include "gl/GrGLDefines.h" 14 15//////////////////////////////////////////////////////////////////////////////// 16class GrShaderObj : public GrFakeRefObj { 17 GR_DEFINE_CREATOR(GrShaderObj) 18 19public: 20 GrShaderObj() 21 : GrFakeRefObj() 22 , fType(GR_GL_VERTEX_SHADER) {} 23 24 void setType(GrGLenum type) { fType = type; } 25 GrGLenum getType() { return fType; } 26 27 void deleteAction() override; 28 29protected: 30private: 31 GrGLenum fType; // either GR_GL_VERTEX_SHADER or GR_GL_FRAGMENT_SHADER 32 33 typedef GrFakeRefObj INHERITED; 34}; 35 36#endif // GrShaderObj_DEFINED 37