added BinderService<> template to help creating native binder services

Change-Id: Id980899d2647b56479f8a27c89eaa949f9209dfe
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 @@
 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();