Home | History | Annotate | Download | only in effects

Lines Matching defs:Entry

12 struct SkBitmapCache::Entry {
13 Entry* fPrev;
14 Entry* fNext;
20 Entry(const void* buffer, size_t size, const SkBitmap& bm)
29 ~Entry() { sk_free(fBuffer); }
46 Entry* entry = fHead;
47 while (entry) {
48 Entry* next = entry->fNext;
49 delete entry;
50 entry = next;
54 SkBitmapCache::Entry* SkBitmapCache::detach(Entry* entry) const {
55 if (entry->fPrev) {
56 SkASSERT(fHead != entry);
57 entry->fPrev->fNext = entry->fNext;
59 SkASSERT(fHead == entry);
60 fHead = entry->fNext;
62 if (entry->fNext) {
63 SkASSERT(fTail != entry);
64 entry->fNext->fPrev = entry->fPrev;
66 SkASSERT(fTail == entry);
67 fTail = entry->fPrev;
69 return entry;
72 void SkBitmapCache::attachToHead(Entry* entry) const {
73 entry->fPrev = NULL;
74 entry->fNext = fHead;
76 fHead->fPrev = entry;
78 fTail = entry;
80 fHead = entry;
86 Entry* entry = fHead;
87 while (entry) {
88 if (entry->equals(buffer, size)) {
90 *bm = entry->fBitmap;
93 this->detach(entry);
94 this->attachToHead(entry);
97 entry = entry->fNext;
111 Entry* entry = new Entry(buffer, len, bm);
112 this->attachToHead(entry);
133 Entry* entry = fHead;
135 while (entry) {
137 entry = entry->fNext;
141 entry = fTail;
142 while (entry) {
144 entry = entry->fPrev;