mmshplugins/mmshaoplugin/inc/musaoplugin.h
branchRCL_3
changeset 33 bc78a40cd63c
parent 32 73a1feb507fb
equal deleted inserted replaced
32:73a1feb507fb 33:bc78a40cd63c
    26 #include <etel.h>    
    26 #include <etel.h>    
    27 #include <etelmm.h>  
    27 #include <etelmm.h>  
    28 #include <e32property.h>
    28 #include <e32property.h>
    29 
    29 
    30 #include "musunittesting.h"
    30 #include "musunittesting.h"
    31 #include "mmuscallstateobserver.h"
       
    32 #include "musmanager.h"
       
    33 
    31 
    34 // Enable the below line if Kodiak Ptt has to be monitered
    32 // Enable the below line if Kodiak Ptt has to be monitered
    35 //class CMusPttCallMonitor;
    33 //class CMusPttCallMonitor;
    36 class CMusPropertyMonitor;
    34 class CMusPropertyMonitor;
    37 class CMusTsyPropertyMonitor;
    35 class CMusTsyPropertyMonitor;
    41 /**
    39 /**
    42  * Main plugin class
    40  * Main plugin class
    43  *
    41  *
    44  * @lib musaoplugin.dll
    42  * @lib musaoplugin.dll
    45  */
    43  */
    46 class CMusAoPlugin : public CAlwaysOnlineEComInterface,
    44 class CMusAoPlugin : public CAlwaysOnlineEComInterface                      
    47                      public MMusCallStateObserver
       
    48     {
    45     {
    49 public:
    46 public:
    50 
    47 
    51     /**
    48     /**
    52      * Two-phased constructor
    49      * Two-phased constructor
    76      *
    73      *
    77      * @since S60 v3.2
    74      * @since S60 v3.2
    78      */
    75      */
    79 
    76 
    80     void DeleteProperties();
    77     void DeleteProperties();
    81     
       
    82     
       
    83 public: // from MMusCallStateObserver
       
    84 
       
    85     void MusCallStateChanged();
       
    86     
       
    87 
    78 
    88 private: // constructors
    79 private: // constructors
    89 
    80 
    90     /**
    81     /**
    91      * C++ constructor.
    82      * C++ constructor.
   105     /**
    96     /**
   106      * Utility function to define and set keys.
    97      * Utility function to define and set keys.
   107      */
    98      */
   108 	void DefinePropertyL(TInt aKey,RProperty::TType aType,const TDesC& aVal);
    99 	void DefinePropertyL(TInt aKey,RProperty::TType aType,const TDesC& aVal);
   109 
   100 
   110 	/**
   101     /**
   111      * Utility function to delete keys.
   102      * Utility function to delete keys.
   112      */
   103      */
   113 	void DeleteProperty(TInt aKey);
   104 	void DeleteProperty(TInt aKey);
   114 
       
   115 	/**
       
   116      * Starts Mus Manager Client.In turn it will start Mus Manager
       
   117      * Server and Availability Plugin.
       
   118      */
       
   119     void StartMusClientL();
       
   120 
       
   121     /*
       
   122      * Stops Mus Manager Client.
       
   123      */ 
       
   124     void StopMusClient();
       
   125 
       
   126 	
   105 	
   127 public: // from base class CAlwaysOnlineEComInterface
   106 public: // from base class CAlwaysOnlineEComInterface
   128 
   107 
   129     /**
   108     /**
   130      *  Commands from alwaysonlinemanager to plugin
   109      *  Commands from alwaysonlinemanager to plugin
   137     virtual TAny* HandleServerCommandL( TInt aCommand,
   116     virtual TAny* HandleServerCommandL( TInt aCommand,
   138                                         TDesC8* aParameters );	
   117                                         TDesC8* aParameters );	
   139 
   118 
   140 private: // data
   119 private: // data
   141    
   120    
   142     /**
       
   143      * Instance of MusManager Client. Owned.
       
   144      */
       
   145     CMusManager* iManager;
       
   146     
       
   147 
       
   148     /* Property Monitor  */
   121     /* Property Monitor  */
   149     CMusPropertyMonitor*      iPropertyMonitor;
   122     CMusPropertyMonitor*      iPropertyMonitor;
   150 
   123 
   151     /** 
   124     /** 
   152      *  Telephony Property Key monitor.
   125      *  Telephony Property Key monitor.
   172      *  Error status.
   145      *  Error status.
   173      */
   146      */
   174     TInt iError;
   147     TInt iError;
   175    
   148    
   176     MUS_UNITTEST( UT_CMusAoPlugin )
   149     MUS_UNITTEST( UT_CMusAoPlugin )
       
   150 
   177     };
   151     };
   178 
   152 
   179 #endif // MUSAOPLUGIN_H
   153 #endif // MUSAOPLUGIN_H