summaryrefslogtreecommitdiffstats
path: root/include/binder/Parcel.h
diff options
context:
space:
mode:
authorAndroid (Google) Code Review <android-gerrit@google.com>2009-08-17 16:39:43 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2009-08-17 16:39:43 -0700
commit517825091a2fdbdb20dc569184f2736c78ecc1bd (patch)
tree10326bc1a49befa36ed4ed82c1350e99dbb05e98 /include/binder/Parcel.h
parent20ea6ce0e8a758cc5c33eb2577495bf9f4dce16e (diff)
parent2f10ae08d435b12e1798d93e0b90605717c66081 (diff)
downloadframeworks_base-517825091a2fdbdb20dc569184f2736c78ecc1bd.zip
frameworks_base-517825091a2fdbdb20dc569184f2736c78ecc1bd.tar.gz
frameworks_base-517825091a2fdbdb20dc569184f2736c78ecc1bd.tar.bz2
Merge change 21576 into eclair
* changes: Support for marshalling pointers / intptr_t in Parcel.
Diffstat (limited to 'include/binder/Parcel.h')
-rw-r--r--include/binder/Parcel.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/binder/Parcel.h b/include/binder/Parcel.h
index 58c2d9a..ba6c711 100644
--- a/include/binder/Parcel.h
+++ b/include/binder/Parcel.h
@@ -74,6 +74,7 @@ public:
status_t writeInt64(int64_t val);
status_t writeFloat(float val);
status_t writeDouble(double val);
+ status_t writeIntPtr(intptr_t val);
status_t writeCString(const char* str);
status_t writeString8(const String8& str);
status_t writeString16(const String16& str);
@@ -109,6 +110,8 @@ public:
status_t readFloat(float *pArg) const;
double readDouble() const;
status_t readDouble(double *pArg) const;
+ intptr_t readIntPtr() const;
+ status_t readIntPtr(intptr_t *pArg) const;
const char* readCString() const;
String8 readString8() const;
@@ -163,6 +166,14 @@ private:
void initState();
void scanForFds() const;
+ template<class T>
+ status_t readAligned(T *pArg) const;
+
+ template<class T> T readAligned() const;
+
+ template<class T>
+ status_t writeAligned(T val);
+
status_t mError;
uint8_t* mData;
size_t mDataSize;