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 //////////////////////////////////////////////////////////////////////////////// 16 class GrShaderObj : public GrFakeRefObj { 17 GR_DEFINE_CREATOR(GrShaderObj) 18 19 public: 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 29 protected: 30 private: 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