bluetoothengine/btmac/inc/btmonocmdhandler/btmcprotocol.h
changeset 2 0b192a3a05a4
parent 0 f63038272f30
child 10 0707dd69d236
equal deleted inserted replaced
1:6a1fe72036e3 2:0b192a3a05a4
    19 #ifndef BTMCPROTOCOL_H
    19 #ifndef BTMCPROTOCOL_H
    20 #define BTMCPROTOCOL_H
    20 #define BTMCPROTOCOL_H
    21 
    21 
    22 #include <e32base.h>
    22 #include <e32base.h>
    23 #include <etelmm.h>
    23 #include <etelmm.h>
    24 #include <btengdiscovery.h>
       
    25 #include "btmcactive.h"
    24 #include "btmcactive.h"
    26 #include "btmcprofileid.h"
    25 #include "btmcprofileid.h"
    27 #include "btmcprotdatabuf.h"
    26 #include "btmcprotdatabuf.h"
    28 #include "HfpAtCmdHandler.h"
    27 #include "HfpAtCmdHandler.h"
    29 
    28 
    44 
    43 
    45 
    44 
    46 const TUint KBTHSRemoteAudioVolumeControl = 0x0302;
    45 const TUint KBTHSRemoteAudioVolumeControl = 0x0302;
    47 
    46 
    48 NONSHARABLE_CLASS(CBtmcProtocol) : public CBase, 
    47 NONSHARABLE_CLASS(CBtmcProtocol) : public CBase, 
    49     public MBtmcActiveObserver, 
    48     public MBtmcActiveObserver,
    50     public MBTEngSdpResultReceiver, 
       
    51     public MATExtObserver
    49     public MATExtObserver
    52       {
    50       {
    53     public:
    51     public:
    54         static CBtmcProtocol* NewL(
    52         static CBtmcProtocol* NewL(
    55             MBtmcObserver& aObserver, 
    53             MBtmcObserver& aObserver, 
    88         /**
    86         /**
    89          * Tells if AT+CHLD command handling is in progress
    87          * Tells if AT+CHLD command handling is in progress
    90          */
    88          */
    91         TBool ActiveChldHandling() const;
    89         TBool ActiveChldHandling() const;
    92         
    90         
    93     private:        
    91         /**
    94         // from MBTEngSdpResultReceiver
    92          * Set the support status of remote volume control of HSP in the remote device.
    95         void ServiceSearchComplete( const RSdpRecHandleArray& /*aResult*/, 
    93          * @param aSupported ETrue if remote volume control is supported by HS unit.
    96 		                                         TUint /*aTotalRecordsCount*/, TInt /*aErr*/ ) {}
    94          */
    97 		
    95         void SetHspRvcSupported(TBool aSupported);
    98         void AttributeSearchComplete( TSdpServRecordHandle /*aHandle*/, 
    96         
    99 		                                           const RSdpResultArray& /*aAttr*/, TInt /*aErr*/ ) {}
    97     private: 
   100 		
       
   101         void ServiceAttributeSearchComplete( TSdpServRecordHandle /*aHandle*/, 
       
   102 		                                                  const RSdpResultArray& /*aAttr*/, 
       
   103 		                                                  TInt /*aErr*/ );
       
   104 		
       
   105 		void DeviceSearchComplete( CBTDevice* /*aDevice*/, TInt /*aErr*/ ) {}
       
   106 
       
   107         
    98         
   108         // From MBtmcActiveObserver
    99         // From MBtmcActiveObserver
   109     
   100     
   110         void RequestCompletedL(CBtmcActive& aActive, TInt aErr);
   101         void RequestCompletedL(CBtmcActive& aActive, TInt aErr);
   111         
   102         
   172         TBtmcProtDataBuf iInDataBuf;
   163         TBtmcProtDataBuf iInDataBuf;
   173         TBool iHandleCmdPending;
   164         TBool iHandleCmdPending;
   174         CDesC8ArrayFlat* iOutgoPacketQueue; // owned
   165         CDesC8ArrayFlat* iOutgoPacketQueue; // owned
   175         TInt iCredit; // How many commands are allowed to acc
   166         TInt iCredit; // How many commands are allowed to acc
   176         TBool iVolumeSyncFromAccessory;
   167         TBool iVolumeSyncFromAccessory;
   177         CBTEngDiscovery* iBteng; // for volume query
       
   178         TBool iAccessoryInitiated; // who initiated the connection
   168         TBool iAccessoryInitiated; // who initiated the connection
   179         RMobilePhone::TMobilePhoneIdentityV1 iIdentity; // holds IMEI etc
   169         RMobilePhone::TMobilePhoneIdentityV1 iIdentity; // holds IMEI etc
   180         RMobilePhone::TMobilePhoneSubscriberId iId; // holds id
   170         RMobilePhone::TMobilePhoneSubscriberId iId; // holds id
   181         };
   171         };
   182 
   172