--- a/mmserv/tms/tmsserver/inc/tmsserver.h Fri Jun 25 17:36:03 2010 -0500
+++ b/mmserv/tms/tmsserver/inc/tmsserver.h Fri Jul 09 16:43:35 2010 -0500
@@ -15,8 +15,8 @@
*
*/
-#ifndef __TMSSERVER_H
-#define __TMSSERVER_H
+#ifndef TMSSERVER_H
+#define TMSSERVER_H
#include <e32base.h>
#include <mmcccodecinformation.h>
@@ -25,6 +25,8 @@
#include "tmsclientserver.h"
#include "tmsrtplayerobsrv.h"
#include "tmsrtplayer.h"
+#include "tmsdtmfobserver.h"
+#include "tmsdtmftoneplayerobserver.h"
namespace TMS {
@@ -37,13 +39,18 @@
class TMSCSPCenRepListener;
class TMSCenRepAudioHandler;
class TMSDtmfEventHandler;
+class TMSAudioDtmfTonePlayer;
+class TMSDTMFProvider;
+class TMSDtmfNotifier;
// -----------------------------------------------------------------------------
// TMSServer class
// -----------------------------------------------------------------------------
//
class TMSServer : public CServer2,
- private TMSRtPlayerObsrv
+ private TMSRtPlayerObsrv,
+ private TMSDTMFObserver,
+ private TMSDTMFTonePlayerObserver
{
public:
static void RunServerL();
@@ -53,12 +60,6 @@
void DropSession();
TInt SessionCount() const;
- void SetDnLinkSession(const TBool aSession);
- void SetUpLinkSession(const TBool aSession);
-
- TBool HasDnLinkSession() const;
- TBool HasUpLinkSession() const;
-
void GetNewTMSCallSessionHandleL(RHandleBase& aHandle);
TInt SetOutput(CSession2* sid, TInt output);
TInt GetOutput(const RMessage2& aMessage);
@@ -75,12 +76,15 @@
TInt GetSupportedCodecs(const TMSStreamType strmType,
RArray<TFourCC>*& aCodecs);
- TInt NotifyTarClients(TRoutingMsgBufPckg routingpckg);
+ // for DTMF player
+ TInt InitDTMF(const RMessage2& aMessage);
TInt StartDTMF(const RMessage2& aMessage);
TInt StopDTMF(const RMessage2& aMessage);
TInt ContinueSendingDTMF(const RMessage2& aMessage);
TInt NotifyDtmfClients(TmsMsgBufPckg dtmfpckg);
+ gint FindActiveCallType();
+ TInt NotifyTarClients(TRoutingMsgBufPckg routingpckg);
void StartDTMFNotifierL();
void CancelDTMFNotifier();
void StartRoutingNotifierL();
@@ -106,6 +110,14 @@
// from TMSRtPlayerObsrv
void RtPlayerEvent(TInt aEventType, TInt aError);
+ //From TMSDTMFTonePlayerObserver
+ void DTMFInitCompleted(gint status);
+ void DTMFToneFinished(gint status);
+
+ //From TMSDTMFObserver
+ void HandleDTMFEvent(const TMSDTMFObserver::TCCPDtmfEvent event,
+ const gint status, const TChar tone);
+
private:
static TMSServer* NewLC();
TMSServer();
@@ -122,9 +134,6 @@
TInt iSession;
TMSServerShutDown *iShutdownTimer;
- TBool iDnlinkSession;
- TBool iUplinkSession;
-
mutable RPointerArray<TMSStartAndMonitorTMSCallThread> iTMSCallServList;
TMSGlobalEffectsSettings* iEffectSettings;
TMSTarEventHandler* iTarHandler;
@@ -134,6 +143,7 @@
TInt iTarHandlerCount;
TInt iAudioCenRepHandlerCount;
TInt iDTMFHandlerCount;
+ TMSCallType iActiveCallType;
// for RT
TMSRingTonePlayer* iTMSRtPlayer;
@@ -141,6 +151,12 @@
HBufC8* iRtSequence;
HBufC* iTtsText;
+ // for DTMF
+ TMSAudioDtmfTonePlayer* iDTMFDnlinkPlayer;
+ TMSDtmfNotifier* iDTMFNotifier;
+ TMSAudioDtmfTonePlayer* iDTMFUplinkPlayer;
+ TMSDTMFProvider* iDTMFUplinkPlayerEtel;
+
// for codecs count
RArray<TFourCC> iDnlCodecs;
RArray<TFourCC> iUplCodecs;
@@ -191,6 +207,5 @@
} //namespace TMS
-#endif //__TMSSERVER_H
+#endif //TMSSERVER_H
-// End of file