From 330accb419ebfb1d8b9d7dcc3b616f56f737f29a Mon Sep 17 00:00:00 2001 From: Andreas Huber Date: Fri, 31 Aug 2012 13:40:12 -0700 Subject: Added an additional virtual method IStreamSource::flags(). Change-Id: I89e62d84328e12f08c8f73cbfd53cfb42569de97 --- media/libmedia/IStreamSource.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'media/libmedia/IStreamSource.cpp') diff --git a/media/libmedia/IStreamSource.cpp b/media/libmedia/IStreamSource.cpp index 078be94..78d810d 100644 --- a/media/libmedia/IStreamSource.cpp +++ b/media/libmedia/IStreamSource.cpp @@ -37,6 +37,7 @@ enum { SET_LISTENER = IBinder::FIRST_CALL_TRANSACTION, SET_BUFFERS, ON_BUFFER_AVAILABLE, + FLAGS, // IStreamListener QUEUE_BUFFER, @@ -72,6 +73,14 @@ struct BpStreamSource : public BpInterface { remote()->transact( ON_BUFFER_AVAILABLE, data, &reply, IBinder::FLAG_ONEWAY); } + + virtual uint32_t flags() const { + Parcel data, reply; + data.writeInterfaceToken(IStreamSource::getInterfaceDescriptor()); + remote()->transact(FLAGS, data, &reply); + + return reply.readInt32(); + } }; IMPLEMENT_META_INTERFACE(StreamSource, "android.hardware.IStreamSource"); @@ -109,6 +118,13 @@ status_t BnStreamSource::onTransact( break; } + case FLAGS: + { + CHECK_INTERFACE(IStreamSource, data, reply); + reply->writeInt32(this->flags()); + break; + } + default: return BBinder::onTransact(code, data, reply, flags); } -- cgit v1.1