www.pudn.com > PPPOE.rar > callmgr.h


 
//******************************************************************** 
//	ÈÕÆÚ:	2004/08/25 - 25:8:2004   14:17 
//	Ãûǰ:	tiamo 
//	ÃèÊö:	call manager 
//********************************************************************* 
 
#pragma once 
 
typedef struct __tagChannel *PCHANNEL; 
 
extern "C" 
{ 
	// open af  DISPATCH_LEVEL 
	NDIS_STATUS mcmOpenAf(PADAPTER pAdapter,PCO_ADDRESS_FAMILY pCoAf,NDIS_HANDLE hNdisAfHandle,PADAPTER *ppAdapter); 
 
	// close af <= DISPATCH_LEVEL  
	NDIS_STATUS mcmCloseAf(PADAPTER pAdapter); 
 
	// register sap <= DISPATCH_LEVEL  
	NDIS_STATUS mcmRegisterSap(PADAPTER pAdapter,PCO_SAP pSap,NDIS_HANDLE hNdisSapHandle,PCHANNEL *ppChannel); 
 
	// deregister sap <=  DISPATCH_LEVEL  
	NDIS_STATUS mcmDeregisterSap(PCHANNEL pChannel); 
 
	// create vc <= DISPATCH_LEVEL  
	NDIS_STATUS mcmCreateVc(PADAPTER pAdapter,NDIS_HANDLE hNdisVcHandle,PCHANNEL *ppChannel); 
 
	// delete vc <= DISPATCH_LEVEL  
	NDIS_STATUS mcmDeleteVc(PCHANNEL pChannel); 
 
	// activate vc complete <= DISPATCH_LEVEL  
	VOID mcmActivateVcComplete(NDIS_STATUS status,PCHANNEL pChannel,PCO_CALL_PARAMETERS pCallParams); 
 
	// deactivate vc complete <= DISPATCH_LEVEL  
	VOID mcmDeactivateVcComplete(NDIS_STATUS status,PCHANNEL pChannel); 
 
	// make call <= DISPATCH_LEVEL  
	NDIS_STATUS mcmMakeCall(PCHANNEL pChannel,PCO_CALL_PARAMETERS pCallParams,NDIS_HANDLE hNdisPartyHandle,PNDIS_HANDLE CallMgrPartyContext); 
 
	// close call <= DISPATCH_LEVEL  
	NDIS_STATUS mcmCloseCall(PCHANNEL pChannel,NDIS_HANDLE PartyContext,PVOID pCloseData,UINT uSize); 
 
	// request <= DISPATCH_LEVEL  
	NDIS_STATUS mcmRequest(PADAPTER pAdapter,PCHANNEL pChannel,NDIS_HANDLE ProtocolPartyContext,PNDIS_REQUEST pNdisRequest); 
 
	// request complete <= DISPATCH_LEVEL  
	VOID mcmRequestComplete(NDIS_STATUS status,PADAPTER pAdapter,PCHANNEL pChannel,NDIS_HANDLE ProtocolPartyContext,PNDIS_REQUEST pNdisRequest); 
 
	// incoming call complete <= DISPATCH_LEVEL  
	VOID mcmIncomingCallComplete(NDIS_STATUS status,PCHANNEL pChannel,PCO_CALL_PARAMETERS pCallParams); 
 
	// modify call qos <= DISPATCH_LEVEL  
	NDIS_STATUS mcmModifyCallQos(PCHANNEL pChannel,PCO_CALL_PARAMETERS pCallParams); 
} 
 
// private 
extern "C" 
{ 
	// rebind PASSIVE_LEVEL 
	VOID ExecReBindForMakeCall(PWORK_ITEM pItem,PWORK_ITEM_PARAM pParam); 
 
	// make call PASSIVE_LEVEL 
	VOID ExecMakeCall(PWORK_ITEM pItem,PWORK_ITEM_PARAM pParam); 
 
	// close call PASSIVE_LEVEL 
	VOID ExecCloseCall(PWORK_ITEM pItem,PWORK_ITEM_PARAM pParam); 
}