blob: b7c7b0ca571275a12f9a81d9e621028f65147434 [file] [log] [blame]
robertphillips@google.comdd743fe2012-04-05 14:40:53 +00001
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
rmistry@google.comfbfcd562012-08-23 18:09:54 +000012void GrTextureUnitObj::setTexture(GrTextureObj *texture) {
robertphillips@google.comdd743fe2012-04-05 14:40:53 +000013
14 if (fTexture) {
15 GrAlwaysAssert(fTexture->getBound(this));
16 fTexture->resetBound(this);
17
18 GrAlwaysAssert(!fTexture->getDeleted());
19 fTexture->unref();
20 }
21
rmistry@google.comfbfcd562012-08-23 18:09:54 +000022 fTexture = texture;
robertphillips@google.comdd743fe2012-04-05 14:40:53 +000023
24 if (fTexture) {
25 GrAlwaysAssert(!fTexture->getDeleted());
26 fTexture->ref();
27
28 GrAlwaysAssert(!fTexture->getBound(this));
29 fTexture->setBound(this);
30 }
31}
32