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

Commit f3271ba7 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "BufferHub{Buffer,Metadata}: Some other minor changes"

parents 15bece0d 1850da23
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -41,7 +41,6 @@

#include <poll.h>

using android::dvr::BufferHubMetadata;
using android::dvr::BufferTraits;
using android::dvr::DetachedBufferRPC;
using android::dvr::NativeHandleWrapper;
@@ -160,7 +159,7 @@ int BufferHubBuffer::ImportGraphicBuffer() {

    // If all imports succeed, replace the previous buffer and id.
    mId = bufferId;
    mBfferStateBit = bufferTraits.buffer_state_bit();
    mBufferStateBit = bufferTraits.buffer_state_bit();

    // TODO(b/112012161) Set up shared fences.
    ALOGD("BufferHubBuffer::ImportGraphicBuffer: id=%d, buffer_state=%" PRIx64 ".", id(),
+2 −4
Original line number Diff line number Diff line
@@ -22,7 +22,6 @@
#include <ui/BufferHubMetadata.h>

namespace android {
namespace dvr {

namespace {

@@ -30,8 +29,8 @@ static const int kAshmemProt = PROT_READ | PROT_WRITE;

} // namespace

using BufferHubDefs::kMetadataHeaderSize;
using BufferHubDefs::MetadataHeader;
using dvr::BufferHubDefs::kMetadataHeaderSize;
using dvr::BufferHubDefs::MetadataHeader;

/* static */
BufferHubMetadata BufferHubMetadata::Create(size_t userMetadataSize) {
@@ -101,5 +100,4 @@ BufferHubMetadata::~BufferHubMetadata() {
    }
}

} // namespace dvr
} // namespace android
+4 −4
Original line number Diff line number Diff line
@@ -88,7 +88,7 @@ public:

    // A state mask which is unique to a buffer hub client among all its siblings sharing the same
    // concrete graphic buffer.
    uint64_t buffer_state_bit() const { return mBfferStateBit; }
    uint64_t buffer_state_bit() const { return mBufferStateBit; }

    size_t user_metadata_size() const { return mMetadata.user_metadata_size(); }

@@ -130,15 +130,15 @@ private:
    int ImportGraphicBuffer();

    // Global id for the buffer that is consistent across processes.
    int mId;
    uint64_t mBfferStateBit;
    int mId = -1;
    uint64_t mBufferStateBit = 0;

    // Wrapps the gralloc buffer handle of this buffer.
    dvr::NativeHandleWrapper<pdx::LocalHandle> mBufferHandle;

    // An ashmem-based metadata object. The same shared memory are mapped to the
    // bufferhubd daemon and all buffer clients.
    dvr::BufferHubMetadata mMetadata;
    BufferHubMetadata mMetadata;

    // PDX backend.
    BufferHubClient mClient;
+6 −6
Original line number Diff line number Diff line
@@ -38,7 +38,6 @@
#pragma clang diagnostic pop

namespace android {
namespace dvr {

class BufferHubMetadata {
public:
@@ -83,24 +82,25 @@ public:
    bool IsValid() const { return mAshmemHandle.IsValid() && mMetadataHeader != nullptr; }

    size_t user_metadata_size() const { return mUserMetadataSize; }
    size_t metadata_size() const { return mUserMetadataSize + BufferHubDefs::kMetadataHeaderSize; }
    size_t metadata_size() const {
        return mUserMetadataSize + dvr::BufferHubDefs::kMetadataHeaderSize;
    }

    const pdx::LocalHandle& ashmem_handle() const { return mAshmemHandle; }
    BufferHubDefs::MetadataHeader* metadata_header() { return mMetadataHeader; }
    dvr::BufferHubDefs::MetadataHeader* metadata_header() { return mMetadataHeader; }

private:
    BufferHubMetadata(size_t userMetadataSize, pdx::LocalHandle ashmemHandle,
                      BufferHubDefs::MetadataHeader* metadataHeader);
                      dvr::BufferHubDefs::MetadataHeader* metadataHeader);

    BufferHubMetadata(const BufferHubMetadata&) = delete;
    void operator=(const BufferHubMetadata&) = delete;

    size_t mUserMetadataSize = 0;
    pdx::LocalHandle mAshmemHandle;
    BufferHubDefs::MetadataHeader* mMetadataHeader = nullptr;
    dvr::BufferHubDefs::MetadataHeader* mMetadataHeader = nullptr;
};

} // namespace dvr
} // namespace android

#endif // ANDROID_BUFFER_HUB_METADATA_H_