summaryrefslogtreecommitdiffstats
path: root/include/media/mediaplayer.h
diff options
context:
space:
mode:
authorJames Dong <jdong@google.com>2010-01-15 18:13:58 -0800
committerJames Dong <jdong@google.com>2010-01-15 18:28:16 -0800
commitdd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675 (patch)
tree538c2d1505e11dbb55aa0839c3181d96e812868c /include/media/mediaplayer.h
parent97419ed670a12f48a7609673da8ee5dc0376f075 (diff)
downloadframeworks_av-dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675.zip
frameworks_av-dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675.tar.gz
frameworks_av-dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675.tar.bz2
Media server death nodification
Diffstat (limited to 'include/media/mediaplayer.h')
-rw-r--r--include/media/mediaplayer.h28
1 files changed, 4 insertions, 24 deletions
diff --git a/include/media/mediaplayer.h b/include/media/mediaplayer.h
index 7132b18..87d23f6 100644
--- a/include/media/mediaplayer.h
+++ b/include/media/mediaplayer.h
@@ -21,8 +21,7 @@
#include <ui/Surface.h>
#include <media/IMediaPlayerClient.h>
#include <media/IMediaPlayer.h>
-#include <media/IMediaPlayerService.h>
-#include <utils/SortedVector.h>
+#include <media/IMediaDeathNotifier.h>
namespace android {
@@ -123,12 +122,13 @@ public:
virtual void notify(int msg, int ext1, int ext2) = 0;
};
-class MediaPlayer : public BnMediaPlayerClient
+class MediaPlayer : public BnMediaPlayerClient,
+ public virtual IMediaDeathNotifier
{
public:
MediaPlayer();
~MediaPlayer();
- void onFirstRef();
+ void died();
void disconnect();
status_t setDataSource(const char *url);
status_t setDataSource(int fd, int64_t offset, int64_t length);
@@ -164,19 +164,6 @@ private:
status_t getDuration_l(int *msec);
status_t setDataSource(const sp<IMediaPlayer>& player);
- static const sp<IMediaPlayerService>& getMediaPlayerService();
- static void addObitRecipient(const wp<MediaPlayer>& recipient);
- static void removeObitRecipient(const wp<MediaPlayer>& recipient);
-
- class DeathNotifier: public IBinder::DeathRecipient
- {
- public:
- DeathNotifier() {}
- virtual ~DeathNotifier();
-
- virtual void binderDied(const wp<IBinder>& who);
- };
-
sp<IMediaPlayer> mPlayer;
thread_id_t mLockThreadId;
Mutex mLock;
@@ -196,13 +183,6 @@ private:
float mRightVolume;
int mVideoWidth;
int mVideoHeight;
-
- friend class DeathNotifier;
-
- static Mutex sServiceLock;
- static sp<IMediaPlayerService> sMediaPlayerService;
- static sp<DeathNotifier> sDeathNotifier;
- static SortedVector< wp<MediaPlayer> > sObitRecipients;
};
}; // namespace android