Add a layer (FBO) cache.

The cache is used to draw layers so that a new
texture does not have to be recreated every time
a call to saveLayer() happens.

The FBO cache used a KeyedVector, which is a bad
idea. The cache should be able to store several
FBOs of the same size (this happens a lot during
scrolling with fading edges for instance.) This
will be changed in a future CL.

Change-Id: Ic316189e625f0dbcf0d273a71cc981a433d48726
diff --git a/libs/hwui/OpenGLRenderer.h b/libs/hwui/OpenGLRenderer.h
index bd5f84f..fa9592a 100644
--- a/libs/hwui/OpenGLRenderer.h
+++ b/libs/hwui/OpenGLRenderer.h
@@ -32,7 +32,9 @@
 #include "Rect.h"
 #include "Snapshot.h"
 #include "Texture.h"
+#include "Layer.h"
 #include "TextureCache.h"
+#include "LayerCache.h"
 
 namespace android {
 namespace uirenderer {
@@ -240,6 +242,7 @@
 
     // Used to cache all drawBitmap textures
     TextureCache mTextureCache;
+    LayerCache mLayerCache;
 }; // class OpenGLRenderer
 
 }; // namespace uirenderer