Lines Matching refs:layer
74 void LayerCache::deleteLayer(Layer* layer) {
75 if (layer) {
76 LAYER_LOGD("Destroying layer %dx%d, fbo %d", layer->getWidth(), layer->getHeight(),
77 layer->getFbo());
78 mSize -= layer->getWidth() * layer->getHeight() * 4;
79 layer->state = Layer::State::DeletedFromCache;
80 layer->decStrong(nullptr);
92 Layer* layer = nullptr;
101 layer = entry.mLayer;
102 layer->state = Layer::State::RemovedFromCache;
103 mSize -= layer->getWidth() * layer->getHeight() * 4;
105 LAYER_LOGD("Reusing layer %dx%d", layer->getWidth(), layer->getHeight());
107 LAYER_LOGD("Creating new layer %dx%d", entry.mWidth, entry.mHeight);
109 layer = new Layer(Layer::Type::DisplayList, renderState, entry.mWidth, entry.mHeight);
110 layer->setBlend(true);
111 layer->generateTexture();
112 layer->bindTexture();
113 layer->setFilter(GL_NEAREST);
114 layer->setWrap(GL_CLAMP_TO_EDGE, false);
121 return layer;
130 bool LayerCache::put(Layer* layer) {
131 if (!layer->isCacheable()) return false;
133 const uint32_t size = layer->getWidth() * layer->getHeight() * 4;
134 // Don't even try to cache a layer that's bigger than the cache
142 LAYER_LOGD(" Deleting layer %.2fx%.2f", victim->layer.getWidth(),
143 victim->layer.getHeight());
146 layer->cancelDefer();
148 LayerEntry entry(layer);
153 layer->state = Layer::State::InCache;
157 layer->state = Layer::State::FailedToCache;