#include "StdAfx.h" #include "TapiOpBase.h" #include "DevControl.h" #include "TapiLine.h" CTapiOpBase::CTapiOpBase(LONG Instance) : m_pHostLine(NULL), m_pAssistLine(NULL), m_Instance(Instance), m_InstanceCancel(CONST_TAPI_OP_INSTANCE_INVALID) { } CTapiOpBase::~CTapiOpBase(void) { } /***************************************************************** **【函数名称】 _notifyOpProcess **【函数功能】 通知操作进展事件 **【参数】 **【返回值】 ****************************************************************/ void CTapiOpBase::_notifyOpProcess( DevLinkInfoS* pInfoS ) { UINT HostLineId = 0; UINT AssoLineId = 0; sscanf_s(pInfoS->szResId, "%lu", &HostLineId); sscanf_s(pInfoS->szPeerResId, "%lu", &AssoLineId); CDevControl::GetInstance().onEventOpProcess(m_Instance, HostLineId, AssoLineId, (DEV_RES_TYPE)pInfoS->nPeerResType, pInfoS->szCallerNum, pInfoS->szCalleeNum); } /***************************************************************** **【函数名称】 attachHostLine **【函数功能】 关联操作与主控线路 **【参数】 pLine 主控线路指针 **【返回值】 ****************************************************************/ void CTapiOpBase::attachHostLine( CTapiLine* pLine ) { pLine->currTapiOp() = this; m_pHostLine = pLine; } /***************************************************************** **【函数名称】 attachAssistLine **【函数功能】 关联操作与辅助线路 **【参数】 pLine 辅助线路指针 **【返回值】 ****************************************************************/ void CTapiOpBase::attachAssistLine( CTapiLine* pLine ) { pLine->currTapiOp() = this; m_pAssistLine = pLine; } /***************************************************************** **【函数名称】 detachAllLines **【函数功能】 取消操作与线路的关联 **【参数】 **【返回值】 ****************************************************************/ void CTapiOpBase::detachAllLines( void ) { if(m_pHostLine != NULL) { m_pHostLine->currTapiOp() = NULL; m_pHostLine = NULL; } if(m_pAssistLine != NULL) { m_pAssistLine->currTapiOp() = NULL; m_pAssistLine = NULL; } }