summaryrefslogtreecommitdiff
path: root/services/surfaceflinger/SurfaceFlinger.cpp
diff options
context:
space:
mode:
author Lloyd Pique <lpique@google.com> 2018-01-17 11:54:43 -0800
committer Lloyd Pique <lpique@google.com> 2018-02-16 14:37:30 -0800
commit12eb423785adba54be4c7112e5198a80d563896e (patch)
tree8d362e7b926140b8ed28c86470d1c9c83914ed4b /services/surfaceflinger/SurfaceFlinger.cpp
parent8c07c3367e2b4117d7e8e3b62919cb2c16ddc546 (diff)
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
Diffstat (limited to 'services/surfaceflinger/SurfaceFlinger.cpp')
-rw-r--r--services/surfaceflinger/SurfaceFlinger.cpp8
1 files changed, 4 insertions, 4 deletions
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<IGraphicBufferProducer> producer;
sp<IGraphicBufferProducer> bqProducer;
sp<IGraphicBufferConsumer> bqConsumer;
- BufferQueue::createBufferQueue(&bqProducer, &bqConsumer);
+ mCreateBufferQueue(&bqProducer, &bqConsumer, false);
int32_t hwcId = -1;
if (state.isVirtualDisplay()) {