SF: Switch BufferQueueLayer to using the factory during init
Test: atest libsurfaceflinger_unittest
Test: go/wm_smoke
Bug: None
Change-Id: I63afc8020894ca2d56789db693ecaeb145ea6e6d
diff --git a/services/surfaceflinger/SurfaceFlingerFactory.h b/services/surfaceflinger/SurfaceFlingerFactory.h
index 3fd4de8..20784d2 100644
--- a/services/surfaceflinger/SurfaceFlingerFactory.h
+++ b/services/surfaceflinger/SurfaceFlingerFactory.h
@@ -30,6 +30,7 @@
class BufferQueueLayer;
class BufferStateLayer;
+class BufferLayerConsumer;
class ColorLayer;
class ContainerLayer;
class DisplayDevice;
@@ -39,6 +40,7 @@
class HWComposer;
class IGraphicBufferConsumer;
class IGraphicBufferProducer;
+class Layer;
class MessageQueue;
class Scheduler;
class StartPropertySetThread;
@@ -85,6 +87,13 @@
virtual void createBufferQueue(sp<IGraphicBufferProducer>* outProducer,
sp<IGraphicBufferConsumer>* outConsumer,
bool consumerIsSurfaceFlinger) = 0;
+ virtual sp<IGraphicBufferProducer> createMonitoredProducer(const sp<IGraphicBufferProducer>&,
+ const sp<SurfaceFlinger>&,
+ const wp<Layer>&) = 0;
+ virtual sp<BufferLayerConsumer> createBufferLayerConsumer(const sp<IGraphicBufferConsumer>&,
+ renderengine::RenderEngine&,
+ uint32_t tex, Layer*) = 0;
+
virtual std::unique_ptr<surfaceflinger::NativeWindowSurface> createNativeWindowSurface(
const sp<IGraphicBufferProducer>&) = 0;