OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2013 Google Inc. | 3 * Copyright 2013 Google Inc. |
4 * | 4 * |
5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
7 */ | 7 */ |
8 | 8 |
9 #include "GrTest.h" | 9 #include "GrTest.h" |
10 | 10 |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
86 void GrContext::setTextContextAtlasSizes_ForTesting(const GrBatchAtlasConfig* co
nfigs) { | 86 void GrContext::setTextContextAtlasSizes_ForTesting(const GrBatchAtlasConfig* co
nfigs) { |
87 fBatchFontCache->setAtlasSizes_ForTesting(configs); | 87 fBatchFontCache->setAtlasSizes_ForTesting(configs); |
88 } | 88 } |
89 | 89 |
90 /////////////////////////////////////////////////////////////////////////////// | 90 /////////////////////////////////////////////////////////////////////////////// |
91 | 91 |
92 void GrContext::purgeAllUnlockedResources() { | 92 void GrContext::purgeAllUnlockedResources() { |
93 fResourceCache->purgeAllUnlocked(); | 93 fResourceCache->purgeAllUnlocked(); |
94 } | 94 } |
95 | 95 |
| 96 void GrContext::resetGpuStats() const { |
| 97 #if GR_GPU_STATS |
| 98 fGpu->stats()->reset(); |
| 99 #endif |
| 100 } |
| 101 |
96 void GrContext::dumpCacheStats(SkString* out) const { | 102 void GrContext::dumpCacheStats(SkString* out) const { |
97 #if GR_CACHE_STATS | 103 #if GR_CACHE_STATS |
98 fResourceCache->dumpStats(out); | 104 fResourceCache->dumpStats(out); |
99 #endif | 105 #endif |
100 } | 106 } |
101 | 107 |
102 void GrContext::printCacheStats() const { | 108 void GrContext::printCacheStats() const { |
103 SkString out; | 109 SkString out; |
104 this->dumpCacheStats(&out); | 110 this->dumpCacheStats(&out); |
105 SkDebugf("%s", out.c_str()); | 111 SkDebugf("%s", out.c_str()); |
106 } | 112 } |
107 | 113 |
108 void GrContext::dumpGpuStats(SkString* out) const { | 114 void GrContext::dumpGpuStats(SkString* out) const { |
109 #if GR_GPU_STATS | 115 #if GR_GPU_STATS |
110 return fGpu->stats()->dump(out); | 116 return fGpu->stats()->dump(out); |
111 #endif | 117 #endif |
112 } | 118 } |
113 | 119 |
| 120 void GrContext::dumpGpuStatsKeyValuePairs(SkTArray<SkString>* keys, |
| 121 SkTArray<double>* values) const { |
| 122 #if GR_GPU_STATS |
| 123 return fGpu->stats()->dumpKeyValuePairs(keys, values); |
| 124 #endif |
| 125 } |
| 126 |
114 void GrContext::printGpuStats() const { | 127 void GrContext::printGpuStats() const { |
115 SkString out; | 128 SkString out; |
116 this->dumpGpuStats(&out); | 129 this->dumpGpuStats(&out); |
117 SkDebugf("%s", out.c_str()); | 130 SkDebugf("%s", out.c_str()); |
118 } | 131 } |
119 | 132 |
120 void GrContext::drawFontCache(const SkRect& rect, GrMaskFormat format, const SkP
aint& paint, | 133 void GrContext::drawFontCache(const SkRect& rect, GrMaskFormat format, const SkP
aint& paint, |
121 GrRenderTarget* target) { | 134 GrRenderTarget* target) { |
122 GrBatchFontCache* cache = this->getBatchFontCache(); | 135 GrBatchFontCache* cache = this->getBatchFontCache(); |
123 | 136 |
(...skipping 24 matching lines...) Expand all Loading... |
148 | 161 |
149 #if GR_GPU_STATS | 162 #if GR_GPU_STATS |
150 void GrGpu::Stats::dump(SkString* out) { | 163 void GrGpu::Stats::dump(SkString* out) { |
151 out->appendf("Render Target Binds: %d\n", fRenderTargetBinds); | 164 out->appendf("Render Target Binds: %d\n", fRenderTargetBinds); |
152 out->appendf("Shader Compilations: %d\n", fShaderCompilations); | 165 out->appendf("Shader Compilations: %d\n", fShaderCompilations); |
153 out->appendf("Textures Created: %d\n", fTextureCreates); | 166 out->appendf("Textures Created: %d\n", fTextureCreates); |
154 out->appendf("Texture Uploads: %d\n", fTextureUploads); | 167 out->appendf("Texture Uploads: %d\n", fTextureUploads); |
155 out->appendf("Stencil Buffer Creates: %d\n", fStencilAttachmentCreates); | 168 out->appendf("Stencil Buffer Creates: %d\n", fStencilAttachmentCreates); |
156 out->appendf("Number of draws: %d\n", fNumDraws); | 169 out->appendf("Number of draws: %d\n", fNumDraws); |
157 } | 170 } |
| 171 |
| 172 void GrGpu::Stats::dumpKeyValuePairs(SkTArray<SkString>* keys, SkTArray<double>*
values) { |
| 173 keys->push_back(SkString("render_target_binds")); values->push_back(fRenderT
argetBinds); |
| 174 keys->push_back(SkString("shader_compilations")); values->push_back(fShaderC
ompilations); |
| 175 keys->push_back(SkString("textures_created")); values->push_back(fTextureCre
ates); |
| 176 keys->push_back(SkString("texture_uploads")); values->push_back(fTextureUplo
ads); |
| 177 keys->push_back(SkString("stencil_buffer_creates")); values->push_back(fSten
cilAttachmentCreates); |
| 178 keys->push_back(SkString("number_of_draws")); values->push_back(fNumDraws); |
| 179 } |
| 180 |
158 #endif | 181 #endif |
159 | 182 |
160 #if GR_CACHE_STATS | 183 #if GR_CACHE_STATS |
161 void GrResourceCache::getStats(Stats* stats) const { | 184 void GrResourceCache::getStats(Stats* stats) const { |
162 stats->reset(); | 185 stats->reset(); |
163 | 186 |
164 stats->fTotal = this->getResourceCount(); | 187 stats->fTotal = this->getResourceCount(); |
165 stats->fNumNonPurgeable = fNonpurgeableResources.count(); | 188 stats->fNumNonPurgeable = fNonpurgeableResources.count(); |
166 stats->fNumPurgeable = fPurgeableQueue.count(); | 189 stats->fNumPurgeable = fPurgeableQueue.count(); |
167 | 190 |
(...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
318 SkASSERT(nullptr == fGpu); | 341 SkASSERT(nullptr == fGpu); |
319 fGpu = new MockGpu(this, options); | 342 fGpu = new MockGpu(this, options); |
320 SkASSERT(fGpu); | 343 SkASSERT(fGpu); |
321 this->initCommon(); | 344 this->initCommon(); |
322 | 345 |
323 // We delete these because we want to test the cache starting with zero reso
urces. Also, none of | 346 // We delete these because we want to test the cache starting with zero reso
urces. Also, none of |
324 // these objects are required for any of tests that use this context. TODO:
make stop allocating | 347 // these objects are required for any of tests that use this context. TODO:
make stop allocating |
325 // resources in the buffer pools. | 348 // resources in the buffer pools. |
326 fDrawingManager->abandon(); | 349 fDrawingManager->abandon(); |
327 } | 350 } |
OLD | NEW |