亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? i_cpd.c

?? CP detector (CPD) only reports the onset and removal of a tone. The analysis of timing (if required)
?? C
字號:
/*------------------------------------------------------------------------*
*                                                                         *
*   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"          *
*                                                                         *
*-------------------------------------------------------------------------*/
/*
 *  This file contains an implementation of the IALG interface
 *  required by XDAS.
 */
 
#include <cpdi.h>

#include <string.h>         /* memcpy() declaration */

#if ! defined(_dsp)
#include "icpd.cpp"
#endif

/*--------------------- local defs ----------------------------------------*/
#define HISTORY 1
#define WORKBUF 2
#define NUMBUFS 3

typedef struct CPD_MIKET_Obj {
    IALG_Obj    alg;            /* MUST be first field of all XDAS algs */
    CPD_tDb *pDb;
    CPD_tSc *pSc;
} CPD_MIKET_Obj;

/*--------------------- local vars ----------------------------------------*/

/*--------------------- local functions -----------------------------------*/

static Void activate
(IALG_Handle handle);

static Void deactivate
(IALG_Handle handle);

static Int alloc
(const IALG_Params *algParams, IALG_Fxns **pf, IALG_MemRec memTab[]);

static Int free
(IALG_Handle handle, IALG_MemRec memTab[]);                     

static Int control
(IALG_Handle, IALG_Cmd, IALG_Status *);

static Int initObj
(IALG_Handle handle, const IALG_MemRec memTab[], 
IALG_Handle parent,const IALG_Params *algParams);
                
static Void moved
(IALG_Handle handle, const IALG_MemRec memTab[], 
IALG_Handle parent,const IALG_Params *algParams);
                
static Int process
(IALG_Handle handle,Int *pIn);

#if defined (_dsp)

#pragma CODE_SECTION(activate, ".text:algActivate")
#pragma CODE_SECTION(alloc, ".text:algAlloc")
#pragma CODE_SECTION(deactivate, ".text:algDeactivate")
#pragma CODE_SECTION(control, ".text:algControl")
#pragma CODE_SECTION(free, ".text:algFree")
#pragma CODE_SECTION(initObj, ".text:algInit")
#pragma CODE_SECTION(moved, ".text:algMoved")
#pragma CODE_SECTION(process, ".text:algProcess")
#pragma CODE_SECTION(CPD_MIKET_init, ".text:init")
#pragma CODE_SECTION(CPD_MIKET_exit, ".text:exit")
#pragma DATA_SECTION(CPD_MIKET_ICPD, ".const:cpd_miket_icpd")
#endif

/*-------------------------------------------------------------------------*/
static Int 					alloc
/*-------------------------------------------------------------------------*/
(
const IALG_Params *algParams,
IALG_Fxns **pf, 
IALG_MemRec memTab[]
)
{
#if 0
    const ICPD_Params *params = (const ICPD_Params *)algParams;

    if (params == NULL) {
        params = &Params;  /* set default parameters */
    }
#endif
    /* Request memory for FIR object */
    memTab[0].size = sizeof(CPD_MIKET_Obj);
    memTab[0].alignment = 4; /* pointers are long */
    memTab[0].space = IALG_EXTERNAL;
    memTab[0].attrs = IALG_PERSIST;

    /*
     *  Request memory filter's "inter-frame" state (i.e., the
     *  delay history)
     *
     *  Note we could have simply added the delay buffer size to the
     *  end of the FIR object by combining this request with the one
     *  above, thereby saving some code.  We separate it here for
     *  clarity.
     */
    memTab[HISTORY].size = sizeof (CPD_tDb);
    memTab[HISTORY].alignment = 0;
    memTab[HISTORY].space = IALG_SARAM;
    memTab[HISTORY].attrs = IALG_PERSIST;

    /*
     *  Request memory for shared working buffer
     */
    memTab[WORKBUF].size = sizeof (CPD_tSc);
    memTab[WORKBUF].alignment = 0;
    memTab[WORKBUF].space = IALG_DARAM0;
    memTab[WORKBUF].attrs = IALG_SCRATCH;
    
    return (NUMBUFS);
}
/*-------------------------------------------------------------------------*/
static Int 						free
/*-------------------------------------------------------------------------*/
(
IALG_Handle handle, 
IALG_MemRec memTab[]
)
{
    CPD_MIKET_Obj *pObj = (CPD_MIKET_Obj *)handle;

    alloc(NULL, NULL, memTab);

    memTab[HISTORY].base = pObj->pDb;
    memTab[HISTORY].size = sizeof(CPD_tDb);

    memTab[WORKBUF].base = pObj->pSc;
    memTab[WORKBUF].size = sizeof(CPD_tSc);

    return (NUMBUFS);
}

/*-------------------------------------------------------------------------*/
static Int 						initObj
/*-------------------------------------------------------------------------*/
(
IALG_Handle handle,
const IALG_MemRec memTab[], 
IALG_Handle p,
const IALG_Params *algParams
)
{
    CPD_MIKET_Obj *pObj = (CPD_MIKET_Obj *)handle;

    pObj->pSc = (CPD_tSc*)memTab[WORKBUF].base;
    pObj->pDb = (CPD_tDb*)memTab[HISTORY].base;

	if (algParams == NULL)
	{
	    CPD_MIKET_init_db(pObj->pDb, ICPD_MIKET_DefaultParams.pCfg);
	}
	else
	{
	    CPD_MIKET_init_db(pObj->pDb, ((ICPD_Params *)algParams)->pCfg);
	}
    return (IALG_EOK);
}

/*-------------------------------------------------------------------------*/
static Int 						control
/*-------------------------------------------------------------------------*/
(
IALG_Handle handle, 
IALG_Cmd Cmd, 
IALG_Status *pStatus
)
{
    CPD_MIKET_Obj *pObj = (CPD_MIKET_Obj *)handle;
	CPD_MIKET_control(pObj->pDb, Cmd, (ICPD_Status *)pStatus);
    return (IALG_EOK);
}
/*-------------------------------------------------------------------------*/
static Void 					activate
/*-------------------------------------------------------------------------*/
(
IALG_Handle handle
)
{
/*   TG_MIKET_Obj *pObj = (Void *)handle; */
}

/*-------------------------------------------------------------------------*/
static Void 					deactivate
/*-------------------------------------------------------------------------*/
(
IALG_Handle handle
)
{                 
}
/*-------------------------------------------------------------------------*/
static Void 					moved
/*-------------------------------------------------------------------------*/
(
IALG_Handle handle,
const IALG_MemRec memTab[], 
IALG_Handle p,
const IALG_Params *algParams
)
{
    CPD_MIKET_Obj *pObj = (CPD_MIKET_Obj *)handle;

    pObj->pSc = (CPD_tSc*)memTab[WORKBUF].base;
    pObj->pDb = (CPD_tDb*)memTab[HISTORY].base;
}              

/*-------------------------------------------------------------------------*/
static Int 						process
/*-------------------------------------------------------------------------*/
(
IALG_Handle handle,
Int *pOut
)
{
    CPD_MIKET_Obj *pObj = (CPD_MIKET_Obj *)handle;

	return CPD_MIKET_process(pObj->pDb, pObj->pSc, pOut);
}

/*--------------------- public  functions ---------------------------------*/

/*-------------------------------------------------------------------------*/
Void 				CPD_MIKET_exit
/*-------------------------------------------------------------------------*/
(
) 
{
}
/*-------------------------------------------------------------------------*/
Void 				CPD_MIKET_init
/*-------------------------------------------------------------------------*/
(
)
{
}

/*--------------------- public vars ---------------------------------------*/

#if defined (_dsp)
	asm(" .global _CPD_MIKET_IALG");
	asm("_CPD_MIKET_IALG .set _CPD_MIKET_ICPD");
#endif

const ICPD_Fxns CPD_MIKET_ICPD = {       /* module_vendor_interface */
    (void *)&CPD_MIKET_ICPD,       /* module ID */ 
    activate,    /* activate */  
    alloc,       /* alloc */     
    control,     /* control */   
    deactivate,  /* deactivate */
    free,        /* free */      
    initObj,     /* init */      
    moved,       /* moved */     
    NULL,                 /* numAlloc (NULL => IALG_MAXMEMRECS) */\
    process      /*  */
};

/*-------------------------------------------------------------------------*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲色图第一区| 欧美久久久久中文字幕| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 欧美日韩在线免费视频| 国产精品不卡在线| 激情综合色播激情啊| 91精品欧美综合在线观看最新 | 成人91在线观看| 中文字幕欧美日韩一区| 国产一区二区三区四区五区美女 | 国产成人免费视频精品含羞草妖精 | 中文字幕在线视频一区| 国产精品亚洲а∨天堂免在线| 日韩精品中午字幕| 蜜臀av一区二区在线观看 | 97精品超碰一区二区三区| 国产欧美日韩激情| 国产福利一区二区三区视频在线| 欧美变态口味重另类| 国产一区二区91| 中文字幕免费不卡| 成人v精品蜜桃久久一区| 中文字幕不卡一区| 丁香婷婷深情五月亚洲| 国产精品成人一区二区三区夜夜夜| 国产成人综合在线| 中文字幕欧美一| 色天使色偷偷av一区二区| 一区二区三区欧美久久| a美女胸又www黄视频久久| 亚洲精品成人在线| 欧美日韩www| 国产一区二区美女| 亚洲视频一区在线| 欧美精品久久一区二区三区| 看片网站欧美日韩| 国产精品三级视频| 在线观看亚洲精品| 日韩福利电影在线| 精品国产3级a| bt7086福利一区国产| 天天av天天翘天天综合网| 久久综合色婷婷| 正在播放一区二区| 色狠狠色狠狠综合| 国产成人无遮挡在线视频| 五月婷婷综合激情| 日韩美女精品在线| 亚洲精品在线免费播放| 欧美天堂一区二区三区| 成人av一区二区三区| 青青草视频一区| 亚洲一区二区三区三| 国产精品不卡在线观看| 久久综合色婷婷| 日韩欧美一区二区在线视频| 欧美日韩中字一区| 91尤物视频在线观看| 成人精品免费看| 丰满亚洲少妇av| 国产精品亚洲人在线观看| 免费国产亚洲视频| 图片区小说区区亚洲影院| 一二三区精品福利视频| 国产精品久久网站| 久久久综合九色合综国产精品| 欧美一区永久视频免费观看| 欧美日韩精品免费| 91搞黄在线观看| 色天使久久综合网天天| 91污片在线观看| 91网址在线看| 91福利精品第一导航| 色综合久久久久综合99| 波多野结衣中文字幕一区二区三区| 国产成人午夜高潮毛片| 成人小视频在线| youjizz久久| 99vv1com这只有精品| 91色|porny| 在线看不卡av| 欧美男人的天堂一二区| 欧美三级中文字幕| 欧美日韩成人综合| 日韩一区二区在线观看视频| 日韩美一区二区三区| 欧美一级片在线看| 欧美大片顶级少妇| 久久久美女艺术照精彩视频福利播放| 精品乱人伦一区二区三区| 欧美xxxxxxxx| 中文字幕乱码日本亚洲一区二区 | 欧美最猛黑人xxxxx猛交| 欧美伊人精品成人久久综合97| 91久久香蕉国产日韩欧美9色| 欧美影院精品一区| 日韩一区二区三区av| 久久久综合网站| 国产精品护士白丝一区av| 亚洲精品高清在线观看| 日韩专区中文字幕一区二区| 久久66热re国产| 成人免费va视频| 日本福利一区二区| 538prom精品视频线放| 久久综合视频网| 亚洲精品高清在线| 美腿丝袜在线亚洲一区| 国产suv精品一区二区三区| 成+人+亚洲+综合天堂| 欧美午夜片在线看| 久久尤物电影视频在线观看| 亚洲视频免费在线观看| 视频一区二区欧美| 国精产品一区一区三区mba视频| 99久久精品免费| 日韩亚洲欧美综合| 国产亚洲精品中文字幕| 一区二区三区四区不卡在线 | 成人免费视频caoporn| 欧美少妇性性性| 久久久久久久久久久久久夜| 一区二区在线观看免费视频播放| 青青草成人在线观看| 国产成人免费av在线| 欧美妇女性影城| 亚洲三级在线看| 国精产品一区一区三区mba视频| 91激情五月电影| 国产日韩在线不卡| 日韩avvvv在线播放| 99在线视频精品| 久久综合色婷婷| 丝袜美腿亚洲一区二区图片| www.欧美.com| 亚洲精品一区二区三区福利| 洋洋av久久久久久久一区| 国产精品一区二区三区网站| 欧美一区二区在线免费观看| 有坂深雪av一区二区精品| 国产成人av一区| 精品欧美一区二区三区精品久久| 亚洲一线二线三线久久久| 成人毛片视频在线观看| 精品国产污污免费网站入口| 日韩精品亚洲专区| 欧美午夜不卡在线观看免费| 亚洲色图制服丝袜| 丁香激情综合五月| 久久亚洲一级片| 久久99精品久久久久久动态图| 7777精品伊人久久久大香线蕉超级流畅| 中文字幕中文字幕一区| 国产成人av福利| 国产网站一区二区三区| 精品无码三级在线观看视频| 日韩美女天天操| 老司机一区二区| 欧美一区二区三区喷汁尤物| 天天av天天翘天天综合网色鬼国产| 欧美优质美女网站| 亚洲一区av在线| 欧美日韩精品欧美日韩精品一综合| 亚洲精品你懂的| 欧美午夜精品一区二区蜜桃| 亚洲 欧美综合在线网络| 欧洲一区二区av| 亚洲高清不卡在线| 欧美熟乱第一页| 视频一区在线播放| 日韩午夜中文字幕| 另类综合日韩欧美亚洲| 日韩欧美一卡二卡| 久久99精品久久久久| 26uuu精品一区二区三区四区在线| 紧缚奴在线一区二区三区| 日韩精品自拍偷拍| 国产精品一区二区三区99| 国产三区在线成人av| 不卡av在线免费观看| 亚洲男人的天堂av| 欧美日韩国产123区| 麻豆精品在线视频| 久久精品亚洲一区二区三区浴池| 暴力调教一区二区三区| 亚洲一区二区三区四区在线免费观看 | 午夜a成v人精品| 欧美哺乳videos| 成人av资源站| 亚洲国产精品久久人人爱| 日韩一区二区在线观看| 国产成人精品亚洲午夜麻豆| 亚洲乱码国产乱码精品精98午夜 | 91色综合久久久久婷婷| 亚洲与欧洲av电影| 欧美高清你懂得| 国产成人一级电影| 亚洲欧美电影一区二区| 精品视频在线免费观看| 老司机免费视频一区二区三区|