| Index: src/gpu/GrTextBlobCache.cpp
|
| diff --git a/src/gpu/GrTextBlobCache.cpp b/src/gpu/GrTextBlobCache.cpp
|
| deleted file mode 100644
|
| index f11b7c60cbd88d62857863e27847d9132c8219a8..0000000000000000000000000000000000000000
|
| --- a/src/gpu/GrTextBlobCache.cpp
|
| +++ /dev/null
|
| @@ -1,58 +0,0 @@
|
| -/*
|
| - * Copyright 2015 Google Inc.
|
| - *
|
| - * Use of this source code is governed by a BSD-style license that can be
|
| - * found in the LICENSE file.
|
| - */
|
| -
|
| -#include "GrTextBlobCache.h"
|
| -
|
| -static const int kVerticesPerGlyph = 4;
|
| -
|
| -GrTextBlobCache::~GrTextBlobCache() {
|
| - this->freeAll();
|
| -}
|
| -
|
| -GrAtlasTextBlob* GrTextBlobCache::createBlob(int glyphCount, int runCount, size_t maxVASize) {
|
| - // We allocate size for the GrAtlasTextBlob itself, plus size for the vertices array,
|
| - // and size for the glyphIds array.
|
| - size_t verticesCount = glyphCount * kVerticesPerGlyph * maxVASize;
|
| - size_t size = sizeof(GrAtlasTextBlob) +
|
| - verticesCount +
|
| - glyphCount * sizeof(GrGlyph**) +
|
| - sizeof(GrAtlasTextBlob::Run) * runCount;
|
| -
|
| - void* allocation = fPool.allocate(size);
|
| -#ifdef CACHE_SANITY_CHECK
|
| - sk_bzero(allocation, size);
|
| -#endif
|
| -
|
| - GrAtlasTextBlob* cacheBlob = new (allocation) GrAtlasTextBlob;
|
| -#ifdef CACHE_SANITY_CHECK
|
| - cacheBlob->fSize = size;
|
| -#endif
|
| -
|
| - // setup offsets for vertices / glyphs
|
| - cacheBlob->fVertices = sizeof(GrAtlasTextBlob) + reinterpret_cast<unsigned char*>(cacheBlob);
|
| - cacheBlob->fGlyphs = reinterpret_cast<GrGlyph**>(cacheBlob->fVertices + verticesCount);
|
| - cacheBlob->fRuns = reinterpret_cast<GrAtlasTextBlob::Run*>(cacheBlob->fGlyphs + glyphCount);
|
| -
|
| - // Initialize runs
|
| - for (int i = 0; i < runCount; i++) {
|
| - new (&cacheBlob->fRuns[i]) GrAtlasTextBlob::Run;
|
| - }
|
| - cacheBlob->fRunCount = runCount;
|
| - cacheBlob->fPool = &fPool;
|
| - return cacheBlob;
|
| -}
|
| -
|
| -void GrTextBlobCache::freeAll() {
|
| - SkTDynamicHash<GrAtlasTextBlob, GrAtlasTextBlob::Key>::Iter iter(&fCache);
|
| - while (!iter.done()) {
|
| - GrAtlasTextBlob* blob = &(*iter);
|
| - fBlobList.remove(blob);
|
| - blob->unref();
|
| - ++iter;
|
| - }
|
| - fCache.rewind();
|
| -}
|
|
|