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 #include "GrTextureUnitObj.h" 10 #include "GrTextureObj.h" 11 setTexture(GrTextureObj * texture)12void GrTextureUnitObj::setTexture(GrTextureObj *texture) { 13 14 if (fTexture) { 15 GrAlwaysAssert(fTexture->getBound(this)); 16 fTexture->resetBound(this); 17 18 GrAlwaysAssert(!fTexture->getDeleted()); 19 fTexture->unref(); 20 } 21 22 fTexture = texture; 23 24 if (fTexture) { 25 GrAlwaysAssert(!fTexture->getDeleted()); 26 fTexture->ref(); 27 28 GrAlwaysAssert(!fTexture->getBound(this)); 29 fTexture->setBound(this); 30 } 31 } 32