mmshplugins/mmshaoplugin/inc/musaoplugin.h
branchRCL_3
changeset 22 73a1feb507fb
parent 0 f0cf47e981f9
child 23 bc78a40cd63c
--- a/mmshplugins/mmshaoplugin/inc/musaoplugin.h	Thu Aug 19 09:51:39 2010 +0300
+++ b/mmshplugins/mmshaoplugin/inc/musaoplugin.h	Tue Aug 31 15:12:07 2010 +0300
@@ -28,6 +28,8 @@
 #include <e32property.h>
 
 #include "musunittesting.h"
+#include "mmuscallstateobserver.h"
+#include "musmanager.h"
 
 // Enable the below line if Kodiak Ptt has to be monitered
 //class CMusPttCallMonitor;
@@ -41,7 +43,8 @@
  *
  * @lib musaoplugin.dll
  */
-class CMusAoPlugin : public CAlwaysOnlineEComInterface                      
+class CMusAoPlugin : public CAlwaysOnlineEComInterface,
+                     public MMusCallStateObserver
     {
 public:
 
@@ -75,6 +78,12 @@
      */
 
     void DeleteProperties();
+    
+    
+public: // from MMusCallStateObserver
+
+    void MusCallStateChanged();
+    
 
 private: // constructors
 
@@ -98,10 +107,22 @@
      */
 	void DefinePropertyL(TInt aKey,RProperty::TType aType,const TDesC& aVal);
 
-    /**
+	/**
      * Utility function to delete keys.
      */
 	void DeleteProperty(TInt aKey);
+
+	/**
+     * Starts Mus Manager Client.In turn it will start Mus Manager
+     * Server and Availability Plugin.
+     */
+    void StartMusClientL();
+
+    /*
+     * Stops Mus Manager Client.
+     */ 
+    void StopMusClient();
+
 	
 public: // from base class CAlwaysOnlineEComInterface
 
@@ -118,6 +139,12 @@
 
 private: // data
    
+    /**
+     * Instance of MusManager Client. Owned.
+     */
+    CMusManager* iManager;
+    
+
     /* Property Monitor  */
     CMusPropertyMonitor*      iPropertyMonitor;
 
@@ -147,7 +174,6 @@
     TInt iError;
    
     MUS_UNITTEST( UT_CMusAoPlugin )
-
     };
 
 #endif // MUSAOPLUGIN_H