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

📄 bcc_close.c

📁 Sample code for use on smp 863x processor.
💻 C
字号:
#include "bcc.h"#include "ccparse.h"#include "rua/include/rua_property.h"#include "rmdef/rmdef.h"#define DEBUG	ENABLEstatic RMstatus destroy_bcc_parser(struct bcc *);static RMstatus close_cc_fifo     (struct bcc *, struct RUA *);RMstatus bcc_close(struct bcc *pbcc, struct RUA *pRUA){	RMstatus status = RM_OK;	if (RMFAILED((status = destroy_bcc_parser(pbcc))))	{		RMDBGLOG((ENABLE, "Failed to destroy the BCC parser.\n"));	}	if (RMFAILED((status = close_cc_fifo(pbcc, pRUA))))	{		RMDBGLOG((ENABLE, "Failed to close CC fifo.\n"));	}		return status;}static RMstatus destroy_bcc_parser(struct bcc *pbcc){	RMstatus status = RM_OK;		if (RMFAILED((status = rmbcc_close(pbcc->bcc_parser))))	{		RMDBGLOG((ENABLE, "Error %s: failed to close BCC parser!\n"				"Destroying anyways.\n", RMstatusToString(status)));	}	if (RMFAILED((status = rmbcc_destroy(pbcc->bcc_parser))))	{		RMDBGLOG((ENABLE, "Error %s: failed to destroy BCC parser!\n",				RMstatusToString(status)));	}		return status;}static RMstatus close_cc_fifo(struct bcc *pbcc, struct RUA *pRUA){	RMstatus status = RM_OK;	while (RM_PENDING == (status = RUASetProperty(pRUA, pbcc->ccfifo_id, 			RMCCFifoPropertyID_Clear, NULL, 0, 0)));	if (RMFAILED(status))	{		RMDBGLOG((ENABLE, "Error %s: cannot clear CC fifo.\n"				"Closing anyways.\n", RMstatusToString(status)));	}	while ((status = RUASetProperty(pRUA, pbcc->ccfifo_id,			RMCCFifoPropertyID_Close, NULL, 0, 0)) == RM_PENDING);	if (RMFAILED(status))	{		RMDBGLOG((ENABLE, "Error %s: cannot close CC fifo.\n"				"Freeing buffer memory anyways.\n",				RMstatusToString(status)));	}	RUAFree(pRUA, pbcc->ccfifo_buffer);	RMDBGLOG((ENABLE, "Done closing CC fifo #%lu.\n",				EMHWLIB_MODULE_INDEX(pbcc->ccfifo_id)));	return status;}       

⌨️ 快捷键说明

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