Deprecate buffer_hub_client.{h, cpp}
buffer_hub_client.h used to contain BufferHubBuffer, BufferProducer
and BufferConsumer. Now those classes are all renamed and moved into
their own headers. Time to deprecate buffer_hub_client.h and move
BufferHubClient, which is only used by DetachedBuffer into
detached_buffer.h
Bug: 116855254
Test: atest buffer_hub-test
Change-Id: Id0bfb32165f955c060d982f1410ab11bfcf76bec
diff --git a/libs/vr/libbufferhub/detached_buffer.cpp b/libs/vr/libbufferhub/detached_buffer.cpp
index 7716cfa..47e5828 100644
--- a/libs/vr/libbufferhub/detached_buffer.cpp
+++ b/libs/vr/libbufferhub/detached_buffer.cpp
@@ -1,6 +1,8 @@
-#include <private/dvr/detached_buffer.h>
-
+#include <pdx/default_transport/client_channel.h>
+#include <pdx/default_transport/client_channel_factory.h>
#include <pdx/file_handle.h>
+#include <private/dvr/bufferhub_rpc.h>
+#include <private/dvr/detached_buffer.h>
#include <ui/DetachedBufferHandle.h>
#include <poll.h>
@@ -8,10 +10,30 @@
using android::pdx::LocalChannelHandle;
using android::pdx::LocalHandle;
using android::pdx::Status;
+using android::pdx::default_transport::ClientChannel;
+using android::pdx::default_transport::ClientChannelFactory;
namespace android {
namespace dvr {
+BufferHubClient::BufferHubClient()
+ : Client(ClientChannelFactory::Create(BufferHubRPC::kClientPath)) {}
+
+BufferHubClient::BufferHubClient(LocalChannelHandle channel_handle)
+ : Client(ClientChannel::Create(std::move(channel_handle))) {}
+
+bool BufferHubClient::IsValid() const {
+ return IsConnected() && GetChannelHandle().valid();
+}
+
+LocalChannelHandle BufferHubClient::TakeChannelHandle() {
+ if (IsConnected()) {
+ return std::move(GetChannelHandle());
+ } else {
+ return {};
+ }
+}
+
DetachedBuffer::DetachedBuffer(uint32_t width, uint32_t height,
uint32_t layer_count, uint32_t format,
uint64_t usage, size_t user_metadata_size) {