SurfaceFlinger: Remove display surface IGBP usages
This change is a no-op refactoring that moves the ownership of the display surface's BufferQueue from SurfaceFlinger into the ConsumerBase class (the parent of FramebufferSurface and LegacyVirtualDisplaySurface). Previously, SurfaceFlinger would explicitly create a BufferQueue and pass the IGraphicBufferProducer (IGBP) and IGraphicBufferConsumer (IGBC) to the display surface's constructor. With this change, the ConsumerBase-derived classes create their own internal BufferQueue. SurfaceFlinger then retrieves a Surface object (which wraps the IGBP) from them. This simplifies the code in SurfaceFlinger and improves encapsulation by making the display surfaces self-contained. There is no change in behavior; the underlying producer/consumer mechanism is identical. BYPASS_IGBP_IGBC_API_REASON=wb work Bug: 340933138 Flag: EXEMPT PURE_REFACTOR Test: atest Change-Id: I0edd5dce261e0517eeae3a85f4c9ccfad224e197
Loading
Please register or sign in to comment