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

Commit f16da3cb authored by Rachel Lee's avatar Rachel Lee
Browse files

Create data class VSyncSource::VSyncData.

Clean up in preparation for ag/16682595.

Bug: 205721584
Test: atest libsurfaceflinger_unittest
Change-Id: I64f0ea618037136051b2c895f956e523d22b698f
parent 18c3437b
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -180,7 +180,7 @@ void DispSyncSource::onVsyncCallback(nsecs_t vsyncTime, nsecs_t targetWakeupTime
    }
    }


    if (callback != nullptr) {
    if (callback != nullptr) {
        callback->onVSyncEvent(targetWakeupTime, vsyncTime, readyTime);
        callback->onVSyncEvent(targetWakeupTime, {vsyncTime, readyTime});
    }
    }
}
}


+3 −3
Original line number Original line Diff line number Diff line
@@ -350,13 +350,13 @@ void EventThread::onScreenAcquired() {
    mCondition.notify_all();
    mCondition.notify_all();
}
}


void EventThread::onVSyncEvent(nsecs_t timestamp, nsecs_t expectedVSyncTimestamp,
void EventThread::onVSyncEvent(nsecs_t timestamp, VSyncSource::VSyncData vsyncData) {
                               nsecs_t deadlineTimestamp) {
    std::lock_guard<std::mutex> lock(mMutex);
    std::lock_guard<std::mutex> lock(mMutex);


    LOG_FATAL_IF(!mVSyncState);
    LOG_FATAL_IF(!mVSyncState);
    mPendingEvents.push_back(makeVSync(mVSyncState->displayId, timestamp, ++mVSyncState->count,
    mPendingEvents.push_back(makeVSync(mVSyncState->displayId, timestamp, ++mVSyncState->count,
                                       expectedVSyncTimestamp, deadlineTimestamp));
                                       vsyncData.expectedVSyncTimestamp,
                                       vsyncData.deadlineTimestamp));
    mCondition.notify_all();
    mCondition.notify_all();
}
}


+8 −4
Original line number Original line Diff line number Diff line
@@ -62,11 +62,16 @@ enum class VSyncRequest {


class VSyncSource {
class VSyncSource {
public:
public:
    class VSyncData {
    public:
        nsecs_t expectedVSyncTimestamp;
        nsecs_t deadlineTimestamp;
    };

    class Callback {
    class Callback {
    public:
    public:
        virtual ~Callback() {}
        virtual ~Callback() {}
        virtual void onVSyncEvent(nsecs_t when, nsecs_t expectedVSyncTimestamp,
        virtual void onVSyncEvent(nsecs_t when, VSyncData vsyncData) = 0;
                                  nsecs_t deadlineTimestamp) = 0;
    };
    };


    virtual ~VSyncSource() {}
    virtual ~VSyncSource() {}
@@ -201,8 +206,7 @@ private:
            REQUIRES(mMutex);
            REQUIRES(mMutex);


    // Implements VSyncSource::Callback
    // Implements VSyncSource::Callback
    void onVSyncEvent(nsecs_t timestamp, nsecs_t expectedVSyncTimestamp,
    void onVSyncEvent(nsecs_t timestamp, VSyncSource::VSyncData vsyncData) override;
                      nsecs_t deadlineTimestamp) override;


    int64_t generateToken(nsecs_t timestamp, nsecs_t deadlineTimestamp,
    int64_t generateToken(nsecs_t timestamp, nsecs_t deadlineTimestamp,
                          nsecs_t expectedVSyncTimestamp) const;
                          nsecs_t expectedVSyncTimestamp) const;
+1 −1
Original line number Original line Diff line number Diff line
@@ -39,7 +39,7 @@ public:
                           nsecs_t deadlineTimestamp) {
                           nsecs_t deadlineTimestamp) {
        std::lock_guard<std::mutex> lock(mCallbackMutex);
        std::lock_guard<std::mutex> lock(mCallbackMutex);
        if (mCallback) {
        if (mCallback) {
            mCallback->onVSyncEvent(when, expectedVSyncTimestamp, deadlineTimestamp);
            mCallback->onVSyncEvent(when, {expectedVSyncTimestamp, deadlineTimestamp});
        }
        }
    }
    }


+1 −2
Original line number Original line Diff line number Diff line
@@ -63,8 +63,7 @@ private:
    FuzzedDataProvider mFdp;
    FuzzedDataProvider mFdp;


protected:
protected:
    void onVSyncEvent(nsecs_t /* when */, nsecs_t /* expectedVSyncTimestamp */,
    void onVSyncEvent(nsecs_t /* when */, VSyncSource::VSyncData) {}
                      nsecs_t /* deadlineTimestamp */) {}
};
};


PhysicalDisplayId SchedulerFuzzer::getPhysicalDisplayId() {
PhysicalDisplayId SchedulerFuzzer::getPhysicalDisplayId() {
Loading