bufferpool2.0: apply hidl interface update
Bug: 112203066
Change-Id: I2f797f72c34d923f4b9efa5cf6eefad468458233
diff --git a/media/bufferpool/2.0/Accessor.cpp b/media/bufferpool/2.0/Accessor.cpp
index 3fd41f0..c1b62f8 100644
--- a/media/bufferpool/2.0/Accessor.cpp
+++ b/media/bufferpool/2.0/Accessor.cpp
@@ -117,15 +117,21 @@
Return<void> Accessor::connect(connect_cb _hidl_cb) {
sp<Connection> connection;
ConnectionId connectionId;
- const QueueDescriptor* fmqDesc;
+ const StatusDescriptor* fmqDesc;
ResultStatus status = connect(&connection, &connectionId, &fmqDesc, false);
if (status == ResultStatus::OK) {
- _hidl_cb(status, connection, connectionId, *fmqDesc);
+ _hidl_cb(status, connection, connectionId, *fmqDesc,
+ android::hardware::MQDescriptorSync<BufferInvalidationMessage>(
+ std::vector<android::hardware::GrantorDescriptor>(),
+ nullptr /* nhandle */, 0 /* size */));
} else {
_hidl_cb(status, nullptr, -1LL,
android::hardware::MQDescriptorSync<BufferStatusMessage>(
std::vector<android::hardware::GrantorDescriptor>(),
+ nullptr /* nhandle */, 0 /* size */),
+ android::hardware::MQDescriptorSync<BufferInvalidationMessage>(
+ std::vector<android::hardware::GrantorDescriptor>(),
nullptr /* nhandle */, 0 /* size */));
}
return Void();
@@ -162,7 +168,7 @@
ResultStatus Accessor::connect(
sp<Connection> *connection, ConnectionId *pConnectionId,
- const QueueDescriptor** fmqDescPtr, bool local) {
+ const StatusDescriptor** fmqDescPtr, bool local) {
if (mImpl) {
ResultStatus status = mImpl->connect(this, connection, pConnectionId, fmqDescPtr);
if (!local && status == ResultStatus::OK) {
diff --git a/media/bufferpool/2.0/Accessor.h b/media/bufferpool/2.0/Accessor.h
index 4fd8f5b..fa2cb1b 100644
--- a/media/bufferpool/2.0/Accessor.h
+++ b/media/bufferpool/2.0/Accessor.h
@@ -147,7 +147,7 @@
*/
ResultStatus connect(
sp<Connection> *connection, ConnectionId *pConnectionId,
- const QueueDescriptor** fmqDescPtr, bool local);
+ const StatusDescriptor** fmqDescPtr, bool local);
/**
* Closes the specified connection to the client.
diff --git a/media/bufferpool/2.0/AccessorImpl.cpp b/media/bufferpool/2.0/AccessorImpl.cpp
index e5cf275..ef62d03 100644
--- a/media/bufferpool/2.0/AccessorImpl.cpp
+++ b/media/bufferpool/2.0/AccessorImpl.cpp
@@ -139,7 +139,7 @@
ResultStatus Accessor::Impl::connect(
const sp<Accessor> &accessor, sp<Connection> *connection,
- ConnectionId *pConnectionId, const QueueDescriptor** fmqDescPtr) {
+ ConnectionId *pConnectionId, const StatusDescriptor** fmqDescPtr) {
sp<Connection> newConnection = new Connection();
ResultStatus status = ResultStatus::CRITICAL_ERROR;
{
diff --git a/media/bufferpool/2.0/AccessorImpl.h b/media/bufferpool/2.0/AccessorImpl.h
index 4043940..1d33880 100644
--- a/media/bufferpool/2.0/AccessorImpl.h
+++ b/media/bufferpool/2.0/AccessorImpl.h
@@ -41,7 +41,7 @@
ResultStatus connect(
const sp<Accessor> &accessor, sp<Connection> *connection,
- ConnectionId *pConnectionId, const QueueDescriptor** fmqDescPtr);
+ ConnectionId *pConnectionId, const StatusDescriptor** fmqDescPtr);
ResultStatus close(ConnectionId connectionId);
diff --git a/media/bufferpool/2.0/BufferPoolClient.cpp b/media/bufferpool/2.0/BufferPoolClient.cpp
index 10158c3..4eeebb4 100644
--- a/media/bufferpool/2.0/BufferPoolClient.cpp
+++ b/media/bufferpool/2.0/BufferPoolClient.cpp
@@ -247,7 +247,7 @@
BufferPoolClient::Impl::Impl(const sp<Accessor> &accessor)
: mLocal(true), mValid(false), mAccessor(accessor), mSeqId(0),
mLastEvictCacheUs(getTimestampNow()) {
- const QueueDescriptor *fmqDesc;
+ const StatusDescriptor *fmqDesc;
ResultStatus status = accessor->connect(
&mLocalConnection, &mConnectionId, &fmqDesc, true);
if (status == ResultStatus::OK) {
@@ -269,7 +269,9 @@
Return<void> transResult = accessor->connect(
[&valid, &outConnection, &id, &outChannel]
(ResultStatus status, sp<IConnection> connection,
- ConnectionId connectionId, const QueueDescriptor& desc) {
+ ConnectionId connectionId, const StatusDescriptor& desc,
+ const InvalidationDescriptor& invDesc) {
+ (void) invDesc;
if (status == ResultStatus::OK) {
outConnection = connection;
id = connectionId;
diff --git a/media/bufferpool/2.0/BufferStatus.cpp b/media/bufferpool/2.0/BufferStatus.cpp
index 3379e21..0d3f5a3 100644
--- a/media/bufferpool/2.0/BufferStatus.cpp
+++ b/media/bufferpool/2.0/BufferStatus.cpp
@@ -41,7 +41,7 @@
static constexpr int kMinElementsToSyncInQueue = 128;
ResultStatus BufferStatusObserver::open(
- ConnectionId id, const QueueDescriptor** fmqDescPtr) {
+ ConnectionId id, const StatusDescriptor** fmqDescPtr) {
if (mBufferStatusQueues.find(id) != mBufferStatusQueues.end()) {
// TODO: id collision log?
return ResultStatus::CRITICAL_ERROR;
@@ -91,7 +91,7 @@
}
BufferStatusChannel::BufferStatusChannel(
- const QueueDescriptor &fmqDesc) {
+ const StatusDescriptor &fmqDesc) {
std::unique_ptr<BufferStatusQueue> queue =
std::make_unique<BufferStatusQueue>(fmqDesc);
if (!queue || queue->isValid() == false) {
diff --git a/media/bufferpool/2.0/BufferStatus.h b/media/bufferpool/2.0/BufferStatus.h
index a74f0a5..777a320 100644
--- a/media/bufferpool/2.0/BufferStatus.h
+++ b/media/bufferpool/2.0/BufferStatus.h
@@ -56,7 +56,7 @@
* NO_MEMORY when there is no memory.
* CRITICAL_ERROR otherwise.
*/
- ResultStatus open(ConnectionId id, const QueueDescriptor** fmqDescPtr);
+ ResultStatus open(ConnectionId id, const StatusDescriptor** fmqDescPtr);
/** Closes an FMQ for the specified connection(client).
*
@@ -89,7 +89,7 @@
*
* @param fmqDesc Descriptor of the created FMQ.
*/
- BufferStatusChannel(const QueueDescriptor &fmqDesc);
+ BufferStatusChannel(const StatusDescriptor &fmqDesc);
/** Returns whether the FMQ is connected successfully. */
bool isValid();
diff --git a/media/bufferpool/2.0/include/bufferpool/BufferPoolTypes.h b/media/bufferpool/2.0/include/bufferpool/BufferPoolTypes.h
index d2de628..eb845e1 100644
--- a/media/bufferpool/2.0/include/bufferpool/BufferPoolTypes.h
+++ b/media/bufferpool/2.0/include/bufferpool/BufferPoolTypes.h
@@ -58,7 +58,11 @@
};
typedef android::hardware::MessageQueue<BufferStatusMessage, kSynchronizedReadWrite> BufferStatusQueue;
-typedef BufferStatusQueue::Descriptor QueueDescriptor;
+typedef BufferStatusQueue::Descriptor StatusDescriptor;
+
+typedef android::hardware::MessageQueue<BufferInvalidationMessage, kSynchronizedReadWrite>
+ BufferInvalidationQueue;
+typedef BufferInvalidationQueue::Descriptor InvalidationDescriptor;
/**
* Allocation wrapper class for buffer pool.