mmserv/tms/tmscallserver/inc/callcsadpt.h
changeset 12 5a06f39ad45b
parent 0 71ca22bcf22a
equal deleted inserted replaced
0:71ca22bcf22a 12:5a06f39ad45b
    19 #define CALLCSADPT_H
    19 #define CALLCSADPT_H
    20 
    20 
    21 #include <TelephonyAudioRouting.h>
    21 #include <TelephonyAudioRouting.h>
    22 #include <MTelephonyAudioRoutingObserver.h>
    22 #include <MTelephonyAudioRoutingObserver.h>
    23 #include <e32msgqueue.h>
    23 #include <e32msgqueue.h>
       
    24 #include <etelmm.h>
       
    25 #include <rmmcustomapi.h>
    24 #include "tmsclientserver.h"
    26 #include "tmsclientserver.h"
       
    27 #include "dtmftoneplayerobserver.h"
    25 #include "calladpt.h"
    28 #include "calladpt.h"
    26 #include "mcspdevsoundobserver.h"
    29 #include "mcspdevsoundobserver.h"
       
    30 #include "mccpdtmfobserver.h"
    27 
    31 
    28 namespace TMS {
    32 namespace TMS {
    29 
    33 
    30 // FORWARD DECLARATIONS
    34 // FORWARD DECLARATIONS
    31 class CSUplink;
    35 class TMSCSUplink;
    32 class CSDownlink;
    36 class TMSCSDownlink;
    33 class TarSettings;
    37 class TMSTarSettings;
       
    38 class TMSAudioDtmfTonePlayer;
       
    39 class TMSDTMFProvider;
       
    40 class TMSDtmfNotifier;
    34 
    41 
    35 /*
    42 /*
    36  * CallCSAdapt class
    43  * CallCSAdapt class
    37  */
    44  */
    38 class CallCSAdpt : public CBase,
    45 class TMSCallCSAdpt : public TMSCallAdpt,
    39                    public CallAdpt,
    46                       public TMSCSPDevSoundObserver,
    40                    public MCSPDevSoundObserver,
    47                       public MTelephonyAudioRoutingObserver,
    41                    public MTelephonyAudioRoutingObserver
    48                       public TMSDTMFTonePlayerObserver,
       
    49                       public TMSCCPDTMFObserver
    42     {
    50     {
    43 public:
    51 public:
    44     CallCSAdpt();
    52     TMSCallCSAdpt();
    45     virtual ~CallCSAdpt();
    53     virtual ~TMSCallCSAdpt();
    46     virtual gint PostConstruct();
    54     virtual gint PostConstruct();
    47 
    55 
    48     virtual gint CreateStream(TMSCallType callType, TMSStreamType strmType,
    56     virtual gint CreateStream(TMSCallType callType, TMSStreamType strmType,
    49             gint& outStrmId);
    57             gint& outStrmId);
    50     virtual gint InitStreamL(TMSCallType callType, TMSStreamType strmType,
    58     virtual gint InitStreamL(TMSCallType callType, TMSStreamType strmType,
    96 
   104 
    97     virtual gint SetOutput(TMSAudioOutput output);
   105     virtual gint SetOutput(TMSAudioOutput output);
    98     virtual gint GetOutput(TMSAudioOutput& output);
   106     virtual gint GetOutput(TMSAudioOutput& output);
    99     virtual gint GetPreviousOutput(TMSAudioOutput& output);
   107     virtual gint GetPreviousOutput(TMSAudioOutput& output);
   100     virtual gint GetAvailableOutputsL(gint& count, CBufFlat*& outputsbuffer);
   108     virtual gint GetAvailableOutputsL(gint& count, CBufFlat*& outputsbuffer);
       
   109     virtual gint StartDTMF(TMSStreamType streamtype, TDes& dtmfstring);
       
   110     virtual gint StopDTMF(TMSStreamType streamtype);
       
   111     virtual gint ContinueDTMF(TBool continuesending);
   101 
   112 
   102     void NotifyClient(const gint strmId, const gint aCommand,
   113     void NotifyClient(const gint strmId, const gint aCommand,
   103             const gint aStatus = KErrNone, const gint64 aInt64 = TInt64(0));
   114             const gint aStatus = KErrNone, const gint64 aInt64 = TInt64(0));
   104 
   115 
   105     //From MCSPDevSoundObserver
   116     //From TMSCSPDevSoundObserver
   106     void DownlinkInitCompleted(TInt status);
   117     void DownlinkInitCompleted(TInt status);
   107     void UplinkInitCompleted(TInt status);
   118     void UplinkInitCompleted(TInt status);
   108     void UplinkActivatedSuccessfully();
   119     void UplinkActivatedSuccessfully();
   109     void DownlinkActivatedSuccessfully();
   120     void DownlinkActivatedSuccessfully();
   110     void UplinkActivationFailed();
   121     void UplinkActivationFailed();
   111     void DownlinkActivationFailed();
   122     void DownlinkActivationFailed();
       
   123 
       
   124     //From DTMFTonePlayerObserver
       
   125     void DTMFInitCompleted(TInt error);
       
   126     void DTMFToneFinished(TInt error);
       
   127 
       
   128     //From TMSCCPDTMFObserver
       
   129      void HandleDTMFEvent(const TMSCCPDTMFObserver::TCCPDtmfEvent aEvent,
       
   130              const TInt aError, const TChar aTone);
   112 
   131 
   113 protected:
   132 protected:
   114     void AvailableOutputsChanged(
   133     void AvailableOutputsChanged(
   115             CTelephonyAudioRouting& aTelephonyAudioRouting);
   134             CTelephonyAudioRouting& aTelephonyAudioRouting);
   116     void OutputChanged(CTelephonyAudioRouting& aTelephonyAudioRouting);
   135     void OutputChanged(CTelephonyAudioRouting& aTelephonyAudioRouting);
   119     void GetSupportedBitRatesL(CBufFlat*& brbuffer);
   138     void GetSupportedBitRatesL(CBufFlat*& brbuffer);
   120 
   139 
   121 private:
   140 private:
   122     gint iNextStreamId;
   141     gint iNextStreamId;
   123 
   142 
   124     CSUplink* iCSUplink;
   143     TMSCSUplink* iCSUplink;
   125     CSDownlink* iCSDownlink;
   144     TMSCSDownlink* iCSDownlink;
   126     CTelephonyAudioRouting* iRouting;
   145     CTelephonyAudioRouting* iRouting;
   127     TarSettings* iTarSettings;
   146     TMSTarSettings* iTarSettings;
       
   147     TMSAudioDtmfTonePlayer* iDTMFDnlinkPlayer;
       
   148     TMSDtmfNotifier* iDTMFNotifier;
       
   149     TMSDTMFProvider* iDTMFUplinkPlayer;
   128     TMSStreamType iStrmtype;
   150     TMSStreamType iStrmtype;
   129 
   151 
   130     RMsgQueue<TmsMsgBuf> iMsgQueueUp;
   152     RMsgQueue<TmsMsgBuf> iMsgQueueUp;
   131     RMsgQueue<TmsMsgBuf> iMsgQueueDn;
   153     RMsgQueue<TmsMsgBuf> iMsgQueueDn;
   132     TmsMsgBuf iMsgBuffer;
   154     TmsMsgBuf iMsgBuffer;