diff options
| author | 2018-01-17 11:54:43 -0800 | |
|---|---|---|
| committer | 2018-02-16 14:37:30 -0800 | |
| commit | 12eb423785adba54be4c7112e5198a80d563896e (patch) | |
| tree | 8d362e7b926140b8ed28c86470d1c9c83914ed4b /services/surfaceflinger/SurfaceFlinger.cpp | |
| parent | 8c07c3367e2b4117d7e8e3b62919cb2c16ddc546 (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.cpp | 8 |
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()) { |