⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xms_demo_event.h

📁 基于东进Keygoe交换机的电话银行演示程序
💻 H
字号:
#ifndef _XMS_DEMO_EVENT_H_
#define _XMS_DEMO_EVENT_H_


#include "DJAcsDataDef.h"
#include "DJAcsAPIDef.h"

//
#define		MAX_DSP_MODULE_NUMBER_OF_XMS		256

#define		MAX_PCM_NUM_IN_THIS_DEMO			64
#define		MAX_TRUNK_NUM_IN_THIS_DEMO			(32*MAX_PCM_NUM_IN_THIS_DEMO)

#define		M_OneVoice(DevID)		AllDeviceRes[(DevID).m_s8ModuleID].pVoice[(DevID).m_s16ChannelID]
#define		M_OnePcm(DevID)			AllDeviceRes[(DevID).m_s8ModuleID].pPcm[(DevID).m_s16ChannelID]
#define		M_OneTrunk(DevID)		AllDeviceRes[(DevID).m_s8ModuleID].pTrunk[(DevID).m_s16ChannelID]

enum	REMOVE_STATE
{
	DSP_REMOVE_STATE_NONE	=	0,		// 没有删除DSP硬件
	DSP_REMOVE_STATE_START	=	1,		// 准备删除DSP硬件,等待所有设备资源释放
	DSP_REMOVE_STATE_READY	=	2,		// 所有资源已经释放,可以删除DSP硬件了
};

// --------------------------------------------------------------------------------
// 定义结构:单个DSP可以提供的设备资源
typedef	struct
{
	long	lFlag;				// 本DSP是否存在, 0:不存在,1:存在

	DeviceID_t	deviceID;		// 本DSP模块的deviceID
	int			iSeqID;			// 本DSP模块的顺序号
	bool		bOpenFlag;		// OpenDevice成功的标志
	bool		bErrFlag;		// 发生过CloseDevice事件的标志
	REMOVE_STATE	RemoveState;	// 停止DSP硬件的标志

	long	lVocNum;			// 该DSP上的ACS_DEVMAIN_VOICE数量
	long	lVocOpened;			// 该DSP上OpenDevice成功的VOICE数量
	long	lVocFreeNum;		// 该DSP上可用的VOICE数量
	VOICE_STRUCT	*pVoice;	// 根据需要,分配相应的结构

	long	lPcmNum;			// 该DSP上的ACS_DEVMAIN_DIGITAL_PORT数量
	long	lPcmOpened;			// 该DSP上OpenDevice成功的Pcm数量
	PCM_STRUCT		*pPcm;		// 根据需要,分配相应的结构

	long	lTrunkNum;			// 该DSP上的ACS_DEVMAIN_INTERFACE_CH数量
	long	lTrunkOpened;		// 该DSP上OpenDevice成功的Trunk数量
	TRUNK_STRUCT	*pTrunk;			// 根据需要,分配相应的结构

} TYPE_XMS_DSP_DEVICE_RES_DEMO;

// 定义结构:从通道号,可以方便地查找到模块和通道
//           不要更改此结构,也不要将状态或者变量放入此结构中
typedef struct
{
    ModuleID_t      m_s8ModuleID;    /*device module type*/
    ChannelID_t     m_s16ChannelID;  /*device chan id*/
} TYPE_CHANNEL_MAP_TABLE;
// 

DJ_Void EvtHandler(DJ_U32 esrParam);

void	InitAllDeviceRes (void);
void	FreeAllDeviceRes (void);

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -