📄 igaec.h
字号:
/*------------------------------------------------------------------------*
* *
* THIS IS AN UNPUBLISHED WORK CONTAINING CONFIDENTIAL AND PROPRIETARY *
* INFORMATION. IF PUBLICATION OCCURS, THE FOLLOWING NOTICE APPLIES: *
* "COPYRIGHT 2001 MIKET DSP SOLUTIONS, ALL RIGHTS RESERVED" *
* *
*-------------------------------------------------------------------------*/
#ifndef IGAEC_
#define IGAEC_
#include <std.h>
#include <ialg.h>
/*--------------------- public defs ---------------------------------------*/
#define IGAEC_FR_SZ (40)
#define IGAEC_FR_MS (5)
typedef struct IGAEC_Obj {
struct IGAEC_Fxns *fxns;
} IGAEC_Obj;
typedef struct IGAEC_Obj *IGAEC_Handle;
/*
* ------- control interface ---------
*
* use it while calling algControl()
*/
/* definition of Cmd param of LEC_control(), to be or'ed
0 = run normally (or if _ALL_OFF is clear).
*/
#define IGAEC_CMD_RESET (0x0001)
#define IGAEC_CMD_PRESERVE_FLT (0x0002)
#define IGAEC_CMD_VOLUME (0x0004)
#define IGAEC_CMD_CFG (0x0008)
#define IGAEC_CMD_ALL_OFF (0x0010)
#define IGAEC_CMD_ADAPT_OFF (0x0020)
#define IGAEC_CMD_CNL_OFF (0x0040)
#define IGAEC_CMD_RCV_NSE_OFF (0x0080)
#define IGAEC_CMD_NLP_OFF (0x0100)
#define IGAEC_CMD_NSE_RED_OFF (0x0200)
#define IGAEC_CMD_SND_MUTED (0x1000)
#define IGAEC_CMD_LOOPBACK (0x2000)
#define IGAEC_CMD_TONE (0x4000)
/* Configuration of LEC */
/* All relevant parameters are expressed in 0.1 dB */
#define IGAEC_DB(x) ((Int)(x*10))
/*
While setting configuration is left to discretion of the
user, it is recommended to be aware of the consequences.
The run-time configuration fields include:
*/
typedef struct IGAEC_tCfg {
Int sErlMin;
Int sDtThr;
Int sRcvDistThr;
Int sTCLst;
Int sTCLdt;
Int sWhiteThr;
} IGAEC_tCfg;
/*
* ======== IGAEC_Params ========
* This structure defines the parameters necessary to create an
* instance of a MF object.
*
*/
typedef struct IGAEC_Params {
Int size; /* sizeof the whole parameter struct */
IGAEC_tCfg *pCfg;
} IGAEC_Params;
typedef struct IGAEC_Status {
Int size; /* sizeof the whole parameter struct */
IGAEC_tCfg *pCfg; /* in: ptr to new cfg. used if and only if CMD_CFG indicated */
Int sVolume; /* extra Rcv volume in 0.1dB units*/
Int uCmdMask; /* what is affected */
} IGAEC_Status;
/*
* ======== IGAEC_Fxns ========
* By convention the name of the variable is LEC_MIKET_ISBEC, where
* MIKET is the vendor name.
*/
typedef struct IGAEC_Fxns {
IALG_Fxns ialg;
/* functions returns report word described above */
Int (*algProcess)(IALG_Handle handle, Int *pRcv, Int *pSnd);
} IGAEC_Fxns;
/*--------------------- local defs ----------------------------------------*/
/*--------------------- public vars ---------------------------------------*/
/*--------------------- local vars ----------------------------------------*/
/*--------------------- local functions -----------------------------------*/
/*--------------------- public functions ---------------------------------*/
#endif /* IGAEC_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -