csl_osdopen.c
来自「TI达芬奇dm644x各硬件模块测试代码」· C语言 代码 · 共 65 行
C
65 行
/** @file csl_osdOpen.c
*
* @brief File for functional layer of CSL API @a CSL_osdOpen()
*
* Description
* - The @a CSL_osdOpen() function definition & it's associated functions
*
* Modification 1
* - Created on: 10/04/2004
* - Reason: Created the sources
*
* @date 4th October, 2004
* @author Santosh Narayanan.
*/
#include <csl_osd.h>
#include <_csl_resource.h>
#pragma CODE_SECTION (CSL_osdOpen, ".text:csl_section:osd");
extern void _CSL_osdGetAttrs(CSL_OsdNum osdNum , CSL_OsdHandle hOsd);
/** @brief Reserves the specified OSD for use.
*/
CSL_OsdHandle CSL_osdOpen (
/** Pointer to the object that holds reference to the
* instance of OSD requested after the call
*/
CSL_OsdObj *hOsdObj,
/** Instance of Osd to which a handle is requested
*/
CSL_OsdNum osdNum,
/** Specifies if OSD should be opened with exclusive or
* shared access to the associate pins
*/
CSL_OpenMode openMode,
/** This returns the status (success/errors) of the call
*/
CSL_Status *status
){
CSL_OsdNum osdInst;
CSL_OsdHandle hOsd = (CSL_OsdHandle)NULL;
hOsdObj->openMode = openMode;
if (osdNum >= 0 ) {
_CSL_osdGetAttrs(osdNum, hOsdObj);
hOsd = (CSL_OsdHandle)_CSL_certifyOpen((CSL_ResHandle)hOsdObj, status);
}
else {
for(osdInst=(CSL_OsdNum)0;osdInst < (CSL_OsdNum)CSL_OSD_PER_CNT;++osdInst){
_CSL_osdGetAttrs(osdInst, hOsdObj);
hOsd = (CSL_OsdHandle)_CSL_certifyOpen((CSL_ResHandle)hOsdObj, status);
if (*status == CSL_SOK)
break;
}
if (osdInst == CSL_OSD_PER_CNT)
*status = CSL_ESYS_OVFL;
}
return hOsd;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?