mmserv/tms/inc/tmsproxy.h
changeset 12 5a06f39ad45b
parent 0 71ca22bcf22a
child 14 80975da52420
--- a/mmserv/tms/inc/tmsproxy.h	Tue Feb 02 01:08:46 2010 +0200
+++ b/mmserv/tms/inc/tmsproxy.h	Fri Apr 16 15:29:42 2010 +0300
@@ -32,6 +32,12 @@
 class TMSEffectObserver;
 class TMSGlobalRouting;
 class TMSGlobalRoutingObserver;
+class TMSDTMF;
+class TMSDTMFObserver;
+class TMSRingTone;
+class TMSRingToneObserver;
+class TMSInbandTone;
+class TMSInbandToneObserver;
 
 // TMSProxy class
 class TMSProxy : public RSessionBase,
@@ -77,6 +83,24 @@
     IMPORT_C gint GetMaxGain(guint& level);
     IMPORT_C gint SetGain(guint level);
 
+    // Ringtone
+    IMPORT_C gint InitRT(const TMSRingToneType type, GString* str,
+            GString* tts);
+    IMPORT_C gint DeinitRT();
+    IMPORT_C gint PlayRT();
+    IMPORT_C gint StopRT();
+    IMPORT_C gint PauseRT();
+    IMPORT_C gint MuteRT();
+
+    // TMSDTMF
+    IMPORT_C gint StartDTMF(TMSStreamType streamtype, GString* tone);
+    IMPORT_C gint StopDTMF(TMSStreamType streamtype);
+    IMPORT_C gint ContinueDTMFStringSending(TBool continuesending);
+
+    // TMSInbandTone
+    IMPORT_C gint StartInbandTone(TMSInbandToneType inbandtonetype);
+    IMPORT_C gint StopInbandTone();
+
     // Global notifiers
     IMPORT_C gint StartDTMFNotifier();
     IMPORT_C gint CancelDTMFNotifier();
@@ -105,20 +129,38 @@
     gint AddRoutingObserver(TMSGlobalRoutingObserver& obsrvr,
             TMSGlobalRouting& parent, gint clientid);
     gint RemoveRoutingObserver(TMSGlobalRoutingObserver& obsrvr);
+    gint AddRingToneObserver(TMSRingToneObserver& obsrvr, TMSRingTone& parent,
+            gint clientid);
+    gint RemoveRingToneObserver(TMSRingToneObserver& obsrvr);
+    gint AddDTMFObserver(TMSDTMFObserver& obsrvr, TMSDTMF& parent,
+            gint clientid);
+    gint RemoveDTMFObserver(TMSDTMFObserver& obsrvr);
+    gint AddInbandToneObserver(TMSInbandToneObserver& obsrvr,
+            TMSInbandTone& parent, gint clientid);
+    gint RemoveInbandToneObserver(TMSInbandToneObserver& obsrvr);
 
     gint CreateQueue(const gint aNumSlots);
     void ReceiveMsgQHandlerEventsL();
+    void ResetObjectLists();
 
 private:
     TRoutingMsgBufPckg ipckg;
+
     RPointerArray<TMSEffectObserver> iEffectsObsrvrList;
+    RPointerArray<TMSGlobalRoutingObserver> iRoutingObsrvrList;
+    RPointerArray<TMSRingToneObserver> iRingToneObsrvrList;
+    RPointerArray<TMSDTMFObserver> iDTMFObsrvrList;
+    RPointerArray<TMSInbandToneObserver> iInbandToneObsrvrList;
+
     RPointerArray<TMSEffect> iEffectsParentList;
-    RPointerArray<TMSGlobalRoutingObserver> iRoutingObsrvrList;
     RPointerArray<TMSGlobalRouting> iRoutingParentList;
+    RPointerArray<TMSRingTone> iRingToneParentList;
+    RPointerArray<TMSDTMF> iDTMFParentList;
+    RPointerArray<TMSInbandTone> iInbandToneParentList;
 
     // Message queue and the handler
     RMsgQueue<TmsMsgBuf> iMsgQueue;
-    CQueueHandler* iMsgQHandler;
+    TMSQueueHandler* iMsgQHandler;
     };
 
 } //namespace TMS