From 0abdfb0889a4957faaba8a95903e529fced7316c Mon Sep 17 00:00:00 2001 From: Yi Jin Date: Thu, 16 Nov 2017 15:32:27 -0800 Subject: [PATCH] Expose how many bytes are written in ProtoOutputStream Bug: 69428467 Test: N/A Change-Id: If1405885949635cebd1c6d89e220c210ef9fa210 --- libs/protoutil/include/android/util/ProtoOutputStream.h | 6 ++++++ libs/protoutil/src/ProtoOutputStream.cpp | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/libs/protoutil/include/android/util/ProtoOutputStream.h b/libs/protoutil/include/android/util/ProtoOutputStream.h index ce4184967026..faea9b21311d 100644 --- a/libs/protoutil/include/android/util/ProtoOutputStream.h +++ b/libs/protoutil/include/android/util/ProtoOutputStream.h @@ -110,6 +110,12 @@ public: void end(long long token); /** + * Returns how many bytes are buffered in ProtoOutputStream. + * Notice, this is not the actual(compact) size of the output data. + */ + size_t bytesWritten(); + + /** * Flushes the protobuf data out to given fd. When the following functions are called, * it is not able to write to ProtoOutputStream any more since the data is compact. */ diff --git a/libs/protoutil/src/ProtoOutputStream.cpp b/libs/protoutil/src/ProtoOutputStream.cpp index 9d8ee729a80d..1904d40ea67a 100644 --- a/libs/protoutil/src/ProtoOutputStream.cpp +++ b/libs/protoutil/src/ProtoOutputStream.cpp @@ -295,6 +295,12 @@ ProtoOutputStream::end(long long token) } } +size_t +ProtoOutputStream::bytesWritten() +{ + return mBuffer.size(); +} + bool ProtoOutputStream::compact() { if (mCompact) return true; -- 2.11.0