From 12eb423785adba54be4c7112e5198a80d563896e Mon Sep 17 00:00:00 2001 From: Lloyd Pique Date: Wed, 17 Jan 2018 11:54:43 -0800 Subject: SF: Abstract out buffer queue creation Modifies SurfaceFlinger so that the type of the buffer queue producer/consumer pair produced for framebuffers can be changed at runtime. Test: Builds Bug: None Change-Id: If108059c43e5c0d03de9645966d9b8eca2b9ed16 --- services/surfaceflinger/SurfaceFlinger.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'services/surfaceflinger/SurfaceFlinger.cpp') diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp index 135bfbefa9..e0dbfaded3 100644 --- a/services/surfaceflinger/SurfaceFlinger.cpp +++ b/services/surfaceflinger/SurfaceFlinger.cpp @@ -163,7 +163,7 @@ SurfaceFlingerBE::SurfaceFlingerBE() } SurfaceFlinger::SurfaceFlinger() - : BnSurfaceComposer(), + : BnSurfaceComposer(), mTransactionFlags(0), mTransactionPending(false), mAnimTransactionPending(false), @@ -193,8 +193,8 @@ SurfaceFlinger::SurfaceFlinger() mHasPoweredOff(false), mNumLayers(0), mVrFlingerRequestsDisplay(false), - mMainThreadId(std::this_thread::get_id()) -{ + mMainThreadId(std::this_thread::get_id()), + mCreateBufferQueue(&BufferQueue::createBufferQueue) { ALOGI("SurfaceFlinger is starting"); vsyncPhaseOffsetNs = getInt64< ISurfaceFlingerConfigs, @@ -2213,7 +2213,7 @@ void SurfaceFlinger::processDisplayChangesLocked() { sp producer; sp bqProducer; sp bqConsumer; - BufferQueue::createBufferQueue(&bqProducer, &bqConsumer); + mCreateBufferQueue(&bqProducer, &bqConsumer, false); int32_t hwcId = -1; if (state.isVirtualDisplay()) { -- cgit v1.2.3-59-g8ed1b