From 0cb126a34fe32f81c830858102471e7be2ce85b1 Mon Sep 17 00:00:00 2001 From: Jeff Tinker Date: Tue, 2 Apr 2013 13:08:05 -0700 Subject: Implement async event callout from drm plugin to Java app Change-Id: I007f147d693664e777b8758be2bb8a4c7ec0236b --- media/libmediaplayerservice/Drm.h | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'media/libmediaplayerservice/Drm.h') diff --git a/media/libmediaplayerservice/Drm.h b/media/libmediaplayerservice/Drm.h index f24921e..3da8ad4 100644 --- a/media/libmediaplayerservice/Drm.h +++ b/media/libmediaplayerservice/Drm.h @@ -21,6 +21,7 @@ #include "SharedLibrary.h" #include +#include #include namespace android { @@ -28,7 +29,7 @@ namespace android { struct DrmFactory; struct DrmPlugin; -struct Drm : public BnDrm { +struct Drm : public BnDrm, public DrmPluginListener { Drm(); virtual ~Drm(); @@ -108,10 +109,21 @@ struct Drm : public BnDrm { Vector const &signature, bool &match); + virtual status_t setListener(const sp& listener); + + virtual void sendEvent(DrmPlugin::EventType eventType, int extra, + Vector const *sessionId, + Vector const *data); + private: mutable Mutex mLock; status_t mInitCheck; + + sp mListener; + mutable Mutex mEventLock; + mutable Mutex mNotifyLock; + sp mLibrary; DrmFactory *mFactory; DrmPlugin *mPlugin; -- cgit v1.1