SurfaceTexture: Fully refactored from BufferQueue

SurfaceTexture and BufferQueue are separate objects.

Change-Id: I230bc0ae6f78d0f9b2b5df902f40ab443ed5a055
diff --git a/services/surfaceflinger/Layer.h b/services/surfaceflinger/Layer.h
index 8d508c2..9a04848 100644
--- a/services/surfaceflinger/Layer.h
+++ b/services/surfaceflinger/Layer.h
@@ -77,6 +77,7 @@
     virtual void onRemoved();
     virtual sp<Layer> getLayer() const { return const_cast<Layer*>(this); }
     virtual void setName(const String8& name);
+    virtual void validateVisibility(const Transform& globalTransform);
 
     // LayerBaseClient interface
     virtual wp<IBinder> getSurfaceTextureBinder() const;
@@ -105,7 +106,7 @@
     // -----------------------------------------------------------------------
 
     // constants
-    sp<SurfaceTextureLayer> mSurfaceTexture;
+    sp<SurfaceTexture> mSurfaceTexture;
     GLuint mTextureName;
 
     // thread-safe