summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMathias Agopian <mathias@google.com>2010-07-14 18:41:18 -0700
committerMathias Agopian <mathias@google.com>2010-07-14 18:43:19 -0700
commit5462fc9a38fa8c9dff434cd53fa5fb1782ae3042 (patch)
tree76ee9bdf73fb2460d074025ed451e56f8ec34a11
parent65ab47156e1c7dfcd8cc4266253a5ff30219e7f0 (diff)
downloadframeworks_av-5462fc9a38fa8c9dff434cd53fa5fb1782ae3042.zip
frameworks_av-5462fc9a38fa8c9dff434cd53fa5fb1782ae3042.tar.gz
frameworks_av-5462fc9a38fa8c9dff434cd53fa5fb1782ae3042.tar.bz2
added BinderService<> template to help creating native binder services
Change-Id: Id980899d2647b56479f8a27c89eaa949f9209dfe
-rw-r--r--services/audioflinger/AudioFlinger.cpp7
-rw-r--r--services/audioflinger/AudioFlinger.h11
-rw-r--r--services/camera/libcameraservice/CameraService.cpp5
-rw-r--r--services/camera/libcameraservice/CameraService.h9
4 files changed, 15 insertions, 17 deletions
diff --git a/services/audioflinger/AudioFlinger.cpp b/services/audioflinger/AudioFlinger.cpp
index 97eb6c0..771d885 100644
--- a/services/audioflinger/AudioFlinger.cpp
+++ b/services/audioflinger/AudioFlinger.cpp
@@ -6068,11 +6068,4 @@ status_t AudioFlinger::onTransact(
return BnAudioFlinger::onTransact(code, data, reply, flags);
}
-// ----------------------------------------------------------------------------
-
-void AudioFlinger::instantiate() {
- defaultServiceManager()->addService(
- String16("media.audio_flinger"), new AudioFlinger());
-}
-
}; // namespace android
diff --git a/services/audioflinger/AudioFlinger.h b/services/audioflinger/AudioFlinger.h
index 507c9ac..7013d76 100644
--- a/services/audioflinger/AudioFlinger.h
+++ b/services/audioflinger/AudioFlinger.h
@@ -31,10 +31,12 @@
#include <utils/Atomic.h>
#include <utils/Errors.h>
#include <utils/threads.h>
-#include <binder/MemoryDealer.h>
#include <utils/SortedVector.h>
#include <utils/Vector.h>
+#include <binder/BinderService.h>
+#include <binder/MemoryDealer.h>
+
#include <hardware_legacy/AudioHardwareInterface.h>
#include "AudioBufferProvider.h"
@@ -58,10 +60,13 @@ class AudioResampler;
static const nsecs_t kStandbyTimeInNsecs = seconds(3);
-class AudioFlinger : public BnAudioFlinger
+class AudioFlinger :
+ public BinderService<AudioFlinger>,
+ public BnAudioFlinger
{
+ friend class BinderService<AudioFlinger>;
public:
- static void instantiate();
+ static char const* getServiceName() { return "media.audio_flinger"; }
virtual status_t dump(int fd, const Vector<String16>& args);
diff --git a/services/camera/libcameraservice/CameraService.cpp b/services/camera/libcameraservice/CameraService.cpp
index 10668a4..c786f94 100644
--- a/services/camera/libcameraservice/CameraService.cpp
+++ b/services/camera/libcameraservice/CameraService.cpp
@@ -192,11 +192,6 @@ sp<CameraService::Client> CameraService::getClientById(int cameraId) {
return mClient[cameraId].promote();
}
-void CameraService::instantiate() {
- defaultServiceManager()->addService(String16("media.camera"),
- new CameraService());
-}
-
status_t CameraService::onTransact(
uint32_t code, const Parcel& data, Parcel* reply, uint32_t flags) {
// Permission checks
diff --git a/services/camera/libcameraservice/CameraService.h b/services/camera/libcameraservice/CameraService.h
index 8193e77..b0b2d7a 100644
--- a/services/camera/libcameraservice/CameraService.h
+++ b/services/camera/libcameraservice/CameraService.h
@@ -19,6 +19,8 @@
#ifndef ANDROID_SERVERS_CAMERA_CAMERASERVICE_H
#define ANDROID_SERVERS_CAMERA_CAMERASERVICE_H
+#include <binder/BinderService.h>
+
#include <camera/ICameraService.h>
#include <camera/CameraHardwareInterface.h>
@@ -30,11 +32,14 @@ namespace android {
class MemoryHeapBase;
class MediaPlayer;
-class CameraService: public BnCameraService
+class CameraService :
+ public BinderService<CameraService>,
+ public BnCameraService
{
class Client;
+ friend class BinderService<CameraService>;
public:
- static void instantiate();
+ static char const* getServiceName() { return "media.camera"; }
CameraService();
virtual ~CameraService();