Home | History | Annotate | Download | only in hwui

Lines Matching refs:Layer

37         INIT_LOGD("  Setting layer cache size to %sMB", property);
40 INIT_LOGD(" Using default layer cache size of %.2fMB", DEFAULT_LAYER_CACHE_SIZE);
81 void LayerCache::deleteLayer(Layer* layer) {
82 if (layer) {
83 LAYER_LOGD("Destroying layer %dx%d, fbo %d", layer->getWidth(), layer->getHeight(),
84 layer->getFbo());
85 mSize -= layer->getWidth() * layer->getHeight() * 4;
86 layer->state = Layer::kState_DeletedFromCache;
87 layer->decStrong(nullptr);
99 Layer* LayerCache::get(RenderState& renderState, const uint32_t width, const uint32_t height) {
100 Layer* layer = nullptr;
109 layer = entry.mLayer;
110 layer->state = Layer::kState_RemovedFromCache;
111 mSize -= layer->getWidth() * layer->getHeight() * 4;
113 LAYER_LOGD("Reusing layer %dx%d", layer->getWidth(), layer->getHeight());
115 LAYER_LOGD("Creating new layer %dx%d", entry.mWidth, entry.mHeight);
117 layer = new Layer(Layer::kType_DisplayList, renderState, entry.mWidth, entry.mHeight);
118 layer->setBlend(true);
119 layer->generateTexture();
120 layer->bindTexture();
121 layer->setFilter(GL_NEAREST);
122 layer->setWrap(GL_CLAMP_TO_EDGE, false);
130 return layer;
137 ALOGD(" Layer size %dx%d", entry.mWidth, entry.mHeight);
141 bool LayerCache::put(Layer* layer) {
142 if (!layer->isCacheable()) return false;
144 const uint32_t size = layer->getWidth() * layer->getHeight() * 4;
145 // Don't even try to cache a layer that's bigger than the cache
153 Layer* victim = mCache.itemAt(position).mLayer;
157 LAYER_LOGD(" Deleting layer %.2fx%.2f", victim->layer.getWidth(),
158 victim->layer.getHeight());
161 layer->cancelDefer();
163 LayerEntry entry(layer);
168 layer->state = Layer::kState_InCache;
172 layer->state = Layer::kState_FailedToCache;