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; |