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

Commit e18b5a4e authored by Chavi Weingarten's avatar Chavi Weingarten Committed by Android (Google) Code Review
Browse files

Merge "Add gatherPendingTransactions in BBQ"

parents ec9f965b d84085a2
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -842,6 +842,14 @@ void BLASTBufferQueue::mergePendingTransactions(SurfaceComposerClient::Transacti
                               mPendingTransactions.end());
}

SurfaceComposerClient::Transaction* BLASTBufferQueue::gatherPendingTransactions(
        uint64_t frameNumber) {
    std::lock_guard _lock{mMutex};
    SurfaceComposerClient::Transaction* t = new SurfaceComposerClient::Transaction();
    mergePendingTransactions(t, frameNumber);
    return t;
}

// Maintains a single worker thread per process that services a list of runnables.
class AsyncWorker : public Singleton<AsyncWorker> {
private:
+1 −0
Original line number Diff line number Diff line
@@ -98,6 +98,7 @@ public:
    void setSyncTransaction(SurfaceComposerClient::Transaction* t, bool acquireSingleBuffer = true);
    void mergeWithNextTransaction(SurfaceComposerClient::Transaction* t, uint64_t frameNumber);
    void applyPendingTransactions(uint64_t frameNumber);
    SurfaceComposerClient::Transaction* gatherPendingTransactions(uint64_t frameNumber);

    void update(const sp<SurfaceControl>& surface, uint32_t width, uint32_t height, int32_t format,
                SurfaceComposerClient::Transaction* outTransaction = nullptr);