#include "StdAfx.h" #include "ReqBase.h" #include "Config.h" #include "ProxyShell.h" #include "ProxyExten.h" #include "ProxyDti.h" CReqBase::CReqBase(CProxyShell* pParent, CPduEntity& ReqPdu) : m_pParent(pParent), m_pHostLine(NULL), m_InstanceCancel(0), m_ReqPdu(ReqPdu) { ASSERT(m_pParent != NULL); m_InstanceCall = ReqPdu.GetDataLong(0); } /***************************************************************** **【函数名称】 _notifyOpProcess **【函数功能】 通知操作进展事件 **【参数】 HostLine 主控线路ID AssoLine 关联线路ID AssoLineType 关联线路类型 lpCallerNum 主叫号码 lpCalleeNum 被叫号码 **【返回值】 ****************************************************************/ void CReqBase::_notifyOpProcess( UINT HostLine, UINT AssoLine, DEV_RES_TYPE AssoLineType, LPCTSTR lpCallerNum, LPCTSTR lpCalleeNum ) { m_pParent->notifyReqProcess(*this, HostLine, AssoLine, AssoLineType, lpCallerNum, lpCalleeNum); } /***************************************************************** **【函数名称】 attachHostLine **【函数功能】 关联操作与主控线路 **【参数】 pLine 主控线路指针 **【返回值】 ****************************************************************/ void CReqBase::attachHostLine( CVirtualProxy* pLine ) { m_pHostLine = pLine; pLine->currLineReq() = this; } /***************************************************************** **【函数名称】 DetachHostLine **【函数功能】 取消操作与线路的关联 **【参数】 **【返回值】 ****************************************************************/ void CReqBase::detachHostLine() { if(m_pHostLine != NULL) { m_pHostLine->currLineReq() = NULL; m_pHostLine = NULL; } }