Lines Matching defs:strike

38     sk_sp<SkStrike> strike = this->internalFindStrikeOrNull(strikeSpec.descriptor());
39 if (strike == nullptr) {
40 strike = this->internalCreateStrike(strikeSpec);
43 return strike;
63 auto visitor = [&counter](const SkStrike& strike) {
64 const SkScalerContextRec& rec = strike.fScalerCache.getScalerContext()->getRec();
92 auto visitor = [&dump](const SkStrike& strike) {
93 const SkTypeface* face = strike.fScalerCache.getScalerContext()->getTypeface();
94 const SkScalerContextRec& rec = strike.fScalerCache.getScalerContext()->getRec();
106 "%s/%s_%d/%p", gGlyphCacheDumpName, fontName.c_str(), rec.fFontID, &strike);
109 "size", "bytes", strike.fMemoryUsed);
112 strike.fScalerCache.countCachedGlyphs());
128 // Check head because it is likely the strike we are looking for.
131 // Do the heavy search looking for the strike.
165 auto strike =
167 this->internalAttachToHead(strike);
168 return strike;
223 for (SkStrike* strike = fHead; strike != nullptr; strike = strike->fNext) {
224 visitor(*strike);
256 SkStrike* strike = fTail;
257 while (strike != nullptr && (bytesFreed < bytesNeeded || countFreed < countNeeded)) {
258 SkStrike* prev = strike->fPrev;
260 // Only delete if the strike is not pinned.
261 if (strike->fPinner == nullptr || strike->fPinner->canDelete()) {
262 bytesFreed += strike->fMemoryUsed;
264 this->internalRemoveStrike(strike);
266 strike = prev;
281 void SkStrikeCache::internalAttachToHead(sk_sp<SkStrike> strike) {
282 SkASSERT(fStrikeLookup.find(strike->getDescriptor()) == nullptr);
283 SkStrike* strikePtr = strike.get();
284 fStrikeLookup.set(std::move(strike));
299 fHead = strikePtr; // Transfer ownership of strike to the cache list.
302 void SkStrikeCache::internalRemoveStrike(SkStrike* strike) {
305 fTotalMemoryUsed -= strike->fMemoryUsed;
307 if (strike->fPrev) {
308 strike->fPrev->fNext = strike->fNext;
310 fHead = strike->fNext;
312 if (strike->fNext) {
313 strike->fNext->fPrev = strike->fPrev;
315 fTail = strike->fPrev;
318 strike->fPrev = strike->fNext = nullptr;
319 strike->fRemoved = true;
320 fStrikeLookup.remove(strike->getDescriptor());
328 const SkStrike* strike = fHead;
329 while (strike != nullptr) {
330 computedBytes += strike->fMemoryUsed;
332 SkASSERT(fStrikeLookup.findOrNull(strike->getDescriptor()) != nullptr);
333 strike = strike->fNext;