Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3f580551 authored by Jim Shargo's avatar Jim Shargo
Browse files

BufferQueues: clean up BufferItemConsumer constructors

These currently use flags that muddy up client code. We've added nice
new BufferItemConsumer::create methods, so lets use those and clean
things up.

BYPASS_IGBP_IGBC_API_REASON=warren buffers

Bug: 398822412
Flag: EXEMPT refactor
Test: builds, presubmit
Change-Id: Ic86fcd22a67ac191afc118d3ca7e8aa8377c5388
parent 63483333
Loading
Loading
Loading
Loading
+4 −15
Original line number Diff line number Diff line
@@ -8715,25 +8715,14 @@ void CameraHidlTest::setupPreviewWindow(
    ASSERT_NE(nullptr, bufferItemConsumer);
    ASSERT_NE(nullptr, bufferHandler);

#if COM_ANDROID_GRAPHICS_LIBGUI_FLAGS(WB_CONSUMER_BASE_OWNS_BQ)
    *bufferItemConsumer = new BufferItemConsumer(
            GraphicBuffer::USAGE_HW_TEXTURE);  // Use GLConsumer default usage flags
#else
    sp<IGraphicBufferProducer> producer;
    sp<IGraphicBufferConsumer> consumer;
    BufferQueue::createBufferQueue(&producer, &consumer);
    *bufferItemConsumer = new BufferItemConsumer(consumer,
            GraphicBuffer::USAGE_HW_TEXTURE); //Use GLConsumer default usage flags
#endif  // COM_ANDROID_GRAPHICS_LIBGUI_FLAGS(WB_CONSUMER_BASE_OWNS_BQ)
    sp<Surface> surface;
    std::tie(*bufferItemConsumer, surface) =
            BufferItemConsumer::create(GraphicBuffer::USAGE_HW_TEXTURE);

    ASSERT_NE(nullptr, (*bufferItemConsumer).get());
    *bufferHandler = new BufferItemHander(*bufferItemConsumer);
    ASSERT_NE(nullptr, (*bufferHandler).get());
    (*bufferItemConsumer)->setFrameAvailableListener(*bufferHandler);
#if COM_ANDROID_GRAPHICS_LIBGUI_FLAGS(WB_CONSUMER_BASE_OWNS_BQ)
    sp<Surface> surface = (*bufferItemConsumer)->getSurface();
#else
    sp<Surface> surface = new Surface(producer);
#endif  // COM_ANDROID_GRAPHICS_LIBGUI_FLAGS(WB_CONSUMER_BASE_OWNS_BQ)
    sp<PreviewWindowCb> previewCb = new PreviewWindowCb(surface);

    auto rc = device->setPreviewWindow(previewCb);