Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(277)

Side by Side Diff: src/gpu/GrAllocPool.cpp

Issue 216503004: SK_SUPPORT_LEGACY_GRTYPES to hide duplicate types from SkTypes.h (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright 2010 Google Inc. 2 * Copyright 2010 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "GrAllocPool.h" 8 #include "GrAllocPool.h"
9 9
10 #include "GrTypes.h" 10 #include "GrTypes.h"
(...skipping 24 matching lines...) Expand all
35 void* alloc(size_t bytes) { 35 void* alloc(size_t bytes) {
36 SkASSERT(bytes <= fBytesFree); 36 SkASSERT(bytes <= fBytesFree);
37 fBytesFree -= bytes; 37 fBytesFree -= bytes;
38 void* ptr = fPtr; 38 void* ptr = fPtr;
39 fPtr += bytes; 39 fPtr += bytes;
40 return ptr; 40 return ptr;
41 } 41 }
42 42
43 size_t release(size_t bytes) { 43 size_t release(size_t bytes) {
44 SkASSERT(bytes > 0); 44 SkASSERT(bytes > 0);
45 size_t free = GrMin(bytes, fBytesTotal - fBytesFree); 45 size_t free = SkTMin(bytes, fBytesTotal - fBytesFree);
46 fBytesFree += free; 46 fBytesFree += free;
47 fPtr -= free; 47 fPtr -= free;
48 return bytes - free; 48 return bytes - free;
49 } 49 }
50 50
51 bool empty() const { return fBytesTotal == fBytesFree; } 51 bool empty() const { return fBytesTotal == fBytesFree; }
52 }; 52 };
53 53
54 /////////////////////////////////////////////////////////////////////////////// 54 ///////////////////////////////////////////////////////////////////////////////
55 55
56 GrAllocPool::GrAllocPool(size_t blockSize) { 56 GrAllocPool::GrAllocPool(size_t blockSize) {
57 fBlock = NULL; 57 fBlock = NULL;
58 fMinBlockSize = GrMax(blockSize, GrAllocPool_MIN_BLOCK_SIZE); 58 fMinBlockSize = SkTMax(blockSize, GrAllocPool_MIN_BLOCK_SIZE);
59 SkDEBUGCODE(fBlocksAllocated = 0;) 59 SkDEBUGCODE(fBlocksAllocated = 0;)
60 } 60 }
61 61
62 GrAllocPool::~GrAllocPool() { 62 GrAllocPool::~GrAllocPool() {
63 this->reset(); 63 this->reset();
64 } 64 }
65 65
66 void GrAllocPool::reset() { 66 void GrAllocPool::reset() {
67 this->validate(); 67 this->validate();
68 68
69 Block* block = fBlock; 69 Block* block = fBlock;
70 while (block) { 70 while (block) {
71 Block* next = block->fNext; 71 Block* next = block->fNext;
72 sk_free(block); 72 sk_free(block);
73 block = next; 73 block = next;
74 } 74 }
75 fBlock = NULL; 75 fBlock = NULL;
76 SkDEBUGCODE(fBlocksAllocated = 0;) 76 SkDEBUGCODE(fBlocksAllocated = 0;)
77 } 77 }
78 78
79 void* GrAllocPool::alloc(size_t size) { 79 void* GrAllocPool::alloc(size_t size) {
80 this->validate(); 80 this->validate();
81 81
82 if (!fBlock || !fBlock->canAlloc(size)) { 82 if (!fBlock || !fBlock->canAlloc(size)) {
83 size_t blockSize = GrMax(fMinBlockSize, size); 83 size_t blockSize = SkTMax(fMinBlockSize, size);
84 fBlock = Block::Create(blockSize, fBlock); 84 fBlock = Block::Create(blockSize, fBlock);
85 SkDEBUGCODE(fBlocksAllocated += 1;) 85 SkDEBUGCODE(fBlocksAllocated += 1;)
86 } 86 }
87 return fBlock->alloc(size); 87 return fBlock->alloc(size);
88 } 88 }
89 89
90 void GrAllocPool::release(size_t bytes) { 90 void GrAllocPool::release(size_t bytes) {
91 this->validate(); 91 this->validate();
92 92
93 while (bytes && NULL != fBlock) { 93 while (bytes && NULL != fBlock) {
(...skipping 13 matching lines...) Expand all
107 Block* block = fBlock; 107 Block* block = fBlock;
108 int count = 0; 108 int count = 0;
109 while (block) { 109 while (block) {
110 count += 1; 110 count += 1;
111 block = block->fNext; 111 block = block->fNext;
112 } 112 }
113 SkASSERT(fBlocksAllocated == count); 113 SkASSERT(fBlocksAllocated == count);
114 } 114 }
115 115
116 #endif 116 #endif
OLDNEW
« include/gpu/GrPoint.h ('K') | « src/gpu/GrAARectRenderer.cpp ('k') | src/gpu/GrAllocator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698