diff options
author | Dan Stoza <stoza@google.com> | 2014-12-01 10:01:10 -0800 |
---|---|---|
committer | Dan Stoza <stoza@google.com> | 2014-12-01 11:13:11 -0800 |
commit | 41a0f2f86c0ca7d2fef50aef6215987f445a7231 (patch) | |
tree | a02857dc77b65467a3260c54d0768c9ae36795ed | |
parent | 104e12594e085bc8dd32eedb96643b774b1508a0 (diff) | |
download | frameworks_native-41a0f2f86c0ca7d2fef50aef6215987f445a7231.zip frameworks_native-41a0f2f86c0ca7d2fef50aef6215987f445a7231.tar.gz frameworks_native-41a0f2f86c0ca7d2fef50aef6215987f445a7231.tar.bz2 |
binder: Add {read,write}Uint32 methods to Parcel
Adds readUint32 and writeUint32 methods to the Parcel class. This
saves a lot of static_casting in anything implementing a Binder
interface on the native side.
Change-Id: Iafc73b0633654a3a4c49767f41806b56906c924f
-rw-r--r-- | include/binder/Parcel.h | 3 | ||||
-rw-r--r-- | libs/binder/Parcel.cpp | 15 |
2 files changed, 18 insertions, 0 deletions
diff --git a/include/binder/Parcel.h b/include/binder/Parcel.h index 2ee99f8..fee8090 100644 --- a/include/binder/Parcel.h +++ b/include/binder/Parcel.h @@ -94,6 +94,7 @@ public: void* writeInplace(size_t len); status_t writeUnpadded(const void* data, size_t len); status_t writeInt32(int32_t val); + status_t writeUint32(uint32_t val); status_t writeInt64(int64_t val); status_t writeFloat(float val); status_t writeDouble(double val); @@ -152,6 +153,8 @@ public: const void* readInplace(size_t len) const; int32_t readInt32() const; status_t readInt32(int32_t *pArg) const; + uint32_t readUint32() const; + status_t readUint32(uint32_t *pArg) const; int64_t readInt64() const; status_t readInt64(int64_t *pArg) const; float readFloat() const; diff --git a/libs/binder/Parcel.cpp b/libs/binder/Parcel.cpp index 99e539c..c526399 100644 --- a/libs/binder/Parcel.cpp +++ b/libs/binder/Parcel.cpp @@ -624,6 +624,12 @@ status_t Parcel::writeInt32(int32_t val) { return writeAligned(val); } + +status_t Parcel::writeUint32(uint32_t val) +{ + return writeAligned(val); +} + status_t Parcel::writeInt32Array(size_t len, const int32_t *val) { if (!val) { return writeAligned(-1); @@ -1035,6 +1041,15 @@ int32_t Parcel::readInt32() const return readAligned<int32_t>(); } +status_t Parcel::readUint32(uint32_t *pArg) const +{ + return readAligned(pArg); +} + +uint32_t Parcel::readUint32() const +{ + return readAligned<uint32_t>(); +} status_t Parcel::readInt64(int64_t *pArg) const { |