mmserv/tms/tmsimpl/src/tmsdtmfbodyimpl.cpp
changeset 33 5e8b14bae8c3
parent 20 b67dd1fc57c5
child 36 73253677b50a
--- a/mmserv/tms/tmsimpl/src/tmsdtmfbodyimpl.cpp	Fri Jun 25 17:36:03 2010 -0500
+++ b/mmserv/tms/tmsimpl/src/tmsdtmfbodyimpl.cpp	Fri Jul 09 16:43:35 2010 -0500
@@ -52,31 +52,30 @@
     TRACE_PRN_FN_EXT;
     }
 
-gint TMSDTMFBodyImpl::Create(TMSStreamType streamtype, TMSDTMFBody*& bodyimpl)
+gint TMSDTMFBodyImpl::Create(TMSStreamType streamtype, TMSDTMF& parent,
+        TMSDTMFBody*& bodyimpl)
     {
     gint ret(TMS_RESULT_INSUFFICIENT_MEMORY);
     TMSDTMFBodyImpl* self = new TMSDTMFBodyImpl();
     if (self)
         {
-        ret = self->PostConstruct();
+        ret = self->PostConstruct(streamtype, parent);
         if (ret != TMS_RESULT_SUCCESS)
             {
             delete self;
             self = NULL;
             }
-        else
-            {
-            self->iStreamType = streamtype;
-            }
         }
     bodyimpl = self;
     return ret;
     }
 
-gint TMSDTMFBodyImpl::PostConstruct()
+gint TMSDTMFBodyImpl::PostConstruct(TMSStreamType streamtype, TMSDTMF& parent)
     {
     gint ret(TMS_RESULT_SUCCESS);
     iClientId = 1;
+    iParent = &parent;
+    iStreamType = streamtype;
     iProxy = new TMSProxy();
     if (!iProxy)
         {
@@ -109,6 +108,7 @@
             if (ret == TMS_RESULT_SUCCESS)
                 {
                 ret = iProxy->StartDTMFNotifier();
+                ret |= iProxy->InitDTMFPlayer(iStreamType);
                 }
             }
         else
@@ -179,7 +179,6 @@
     __ASSERT_ALWAYS(string, PANIC(TMS_RESULT_NULL_ARGUMENT));
 
     gint ret(TMS_RESULT_SUCCESS);
-
     if (iString)
         {
         if (iString->len)
@@ -206,8 +205,3 @@
     return ret;
     }
 
-void TMSDTMFBodyImpl::SetParent(TMSDTMF*& parent)
-    {
-    iParent = parent;
-    }
-