OLD | NEW |
---|---|
(Empty) | |
1 /* | |
2 * Copyright 2014 Google Inc. | |
3 * | |
4 * Use of this source code is governed by a BSD-style license that can be | |
5 * found in the LICENSE file. | |
6 */ | |
7 | |
8 | |
9 #include "GrProgramElement.h" | |
10 #include "GrProgramResource.h" | |
11 | |
12 void GrProgramElement::convertRefToPendingExecution() const { | |
13 // This function makes it so that all the GrProgramResources own a single re f to their | |
14 // underlying GrGpuResource if there are any refs to the GrProgramElement an d a single | |
robertphillips
2014/09/04 19:48:57
single pending read ?
bsalomon
2014/09/04 20:03:17
changed to read/write
| |
15 // pending read if there are any pending executions of the GrProgramElement. The | |
robertphillips
2014/09/04 19:48:57
pending read ?
bsalomon
2014/09/04 20:03:17
changed to read/write
| |
16 // GrProgramResource will give up its single ref and/or pending read in its destructor. | |
17 SkASSERT(fRefCnt > 0); | |
18 if (0 == fPendingExecutions) { | |
19 for (int i = 0; i < fProgramResources.count(); ++i) { | |
20 fProgramResources[i]->markPendingIO(); | |
21 } | |
22 } | |
23 ++fPendingExecutions; | |
24 this->unref(); | |
25 if (0 == fRefCnt) { | |
26 for (int i = 0; i < fProgramResources.count(); ++i) { | |
27 fProgramResources[i]->removeRef(); | |
28 } | |
29 } | |
30 } | |
OLD | NEW |