Remove experimental HWC virtual display support

Bug: 8384764
Change-Id: I97b52ed83ad85466bd91cb9291308994048568a1
diff --git a/services/surfaceflinger/DisplayHardware/VirtualDisplaySurface.h b/services/surfaceflinger/DisplayHardware/VirtualDisplaySurface.h
index 0706e75..f321795 100644
--- a/services/surfaceflinger/DisplayHardware/VirtualDisplaySurface.h
+++ b/services/surfaceflinger/DisplayHardware/VirtualDisplaySurface.h
@@ -17,7 +17,6 @@
 #ifndef ANDROID_SF_VIRTUAL_DISPLAY_SURFACE_H
 #define ANDROID_SF_VIRTUAL_DISPLAY_SURFACE_H
 
-#include "BufferQueueInterposer.h"
 #include "DisplaySurface.h"
 
 // ---------------------------------------------------------------------------
@@ -26,33 +25,8 @@
 
 class HWComposer;
 
-/* This DisplaySurface implementation uses a BufferQueueInterposer to pass
- * partially- or fully-composited buffers from the OpenGL ES driver to
- * HWComposer to use as the output buffer for virtual displays. Allowing HWC
- * to compose into the same buffer that contains GLES results saves bandwidth
- * compared to having two separate BufferQueues for frames with at least some
- * GLES composition.
- *
- * The alternative would be to have two complete BufferQueues, one from GLES
- * to HWC and one from HWC to the virtual display sink (e.g. video encoder).
- * For GLES-only frames, the same bandwidth saving could be achieved if buffers
- * could be acquired from the GLES->HWC queue and inserted into the HWC->sink
- * queue. That would be complicated and doesn't help the mixed GLES+HWC case.
- *
- * On frames with no GLES composition, the VirtualDisplaySurface dequeues a
- * buffer directly from the sink IGraphicBufferProducer and passes it to HWC,
- * bypassing the GLES driver. This is only guaranteed to work if
- * eglSwapBuffers doesn't immediately dequeue a buffer for the next frame,
- * since we can't rely on being able to dequeue more than one buffer at a time.
- *
- * This class also has a passthrough mode, where it doesn't use a
- * BufferQueueInterposer and never sends buffers to HWC. Instead, OpenGL ES
- * output buffers are queued directly to the virtual display sink; this class
- * is inactive after construction. This mode is used when the HWC doesn't
- * support compositing for virtual displays.
- *
- * TODO(jessehall): Add a libgui test that ensures that EGL/GLES do lazy
- * dequeBuffers; we've wanted to require that for other reasons anyway.
+/* This DisplaySurface implementation is a stub used for developing HWC
+ * virtual display support. It is currently just a passthrough.
  */
 class VirtualDisplaySurface : public DisplaySurface {
 public:
@@ -70,19 +44,7 @@
 private:
     virtual ~VirtualDisplaySurface();
 
-    // immutable after construction
-    HWComposer& mHwc;
-    int32_t mDisplayId;
-    String8 mName;
-
-    // with HWC support, both of these point to the same object.
-    // otherwise, mInterposer is NULL and mSourceProducer is the sink.
-    sp<BufferQueueInterposer> mInterposer;
-    sp<IGraphicBufferProducer> mSourceProducer;
-
-    // mutable, must be synchronized with mMutex
-    Mutex mMutex;
-    sp<GraphicBuffer> mAcquiredBuffer;
+    sp<IGraphicBufferProducer> mSink;
 };
 
 // ---------------------------------------------------------------------------