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

Commit effae7fc authored by Jamie Gennis's avatar Jamie Gennis
Browse files

Implement reducing the buffer count of a Surface.

Change-Id: I7f979c60c06d654aa8265002836277434bc1a64f
Bug: 3095167
parent 5f0cb5c6
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -285,6 +285,8 @@ public:
    uint32_t getTransform(int buffer) const;

    status_t resize(int newNumBuffers);
    status_t grow(int newNumBuffers);
    status_t shrink(int newNumBuffers);

    SharedBufferStack::Statistics getStats() const;
    
@@ -346,6 +348,14 @@ private:
    int mNumBuffers;
    BufferList mBufferList;

    struct BuffersAvailableCondition : public ConditionBase {
        int mNumBuffers;
        inline BuffersAvailableCondition(SharedBufferServer* sbs,
                int numBuffers);
        inline bool operator()() const;
        inline const char* name() const { return "BuffersAvailableCondition"; }
    };

    struct UnlockUpdate : public UpdateBase {
        const int lockedBuffer;
        inline UnlockUpdate(SharedBufferBase* sbb, int lockedBuffer);