Home | History | Annotate | Download | only in text

Lines Matching refs:blob

37     // creates an uncached blob
42 sk_sp<GrAtlasTextBlob> makeBlob(const SkTextBlob* blob) {
45 BlobGlyphCount(&glyphCount, &runCount, blob);
49 sk_sp<GrAtlasTextBlob> makeCachedBlob(const SkTextBlob* blob,
53 sk_sp<GrAtlasTextBlob> cacheBlob(this->makeBlob(blob));
56 blob->notifyAddedToCache(fUniqueID);
65 void remove(GrAtlasTextBlob* blob) {
66 auto id = GrAtlasTextBlob::GetKey(*blob).fUniqueID;
70 fBlobList.remove(blob);
71 idEntry->removeBlob(blob);
77 void makeMRU(GrAtlasTextBlob* blob) {
78 if (fBlobList.head() == blob) {
82 fBlobList.remove(blob);
83 fBlobList.addToHead(blob);
89 static void BlobGlyphCount(int* glyphCount, int* runCount, const SkTextBlob* blob) {
90 SkTextBlobRunIterator itCounter(blob);
120 void addBlob(sk_sp<GrAtlasTextBlob> blob) {
121 SkASSERT(blob);
122 SkASSERT(GrAtlasTextBlob::GetKey(*blob).fUniqueID == fID);
123 SkASSERT(!this->find(GrAtlasTextBlob::GetKey(*blob)));
125 fBlobs.emplace_back(std::move(blob));
128 void removeBlob(GrAtlasTextBlob* blob) {
129 SkASSERT(blob);
130 SkASSERT(GrAtlasTextBlob::GetKey(*blob).fUniqueID == fID);
132 auto index = this->findBlobIndex(GrAtlasTextBlob::GetKey(*blob));
158 void add(sk_sp<GrAtlasTextBlob> blob) {
159 auto id = GrAtlasTextBlob::GetKey(*blob).fUniqueID;
166 GrAtlasTextBlob* rawBlobPtr = blob.get();
168 idEntry->addBlob(std::move(blob));
173 void checkPurge(GrAtlasTextBlob* blob = nullptr);