📄 wmdrm_interface.c
字号:
/***************************************** * Copyright <A9> 2006 * Sigma Designs, Inc. All Rights Reserved * Proprietary and Confidential * *****************************************//** @file wmdrm_interface.c @brief RMDRM loader macros for the wmdrm library interface @author David Bryson @date 2006-05-12*/#define ALLOW_OS_CODE 1#include "rmdef/rmdef.h"#include "rmdrm/include/rmdrm.h"#include "wmdrm.h"#include "wmdrm_interface.h"#if 1#define WMDRMDBG ENABLE#else#define WMDRMDBG DISABLE#endif#if ((EM86XX_CHIP == EM86XX_CHIPID_TANGO2) && (EM86XX_MODE == EM86XX_MODEID_STANDALONE))static struct wmdrm_interface_s *wmdrm_interface;#undef FUNC0#undef FUNC1#undef FUNC2#undef FUNC3#undef FUNC#define FUNC(name, return_error, ...) \if (wmdrm_interface){ \ RMDBGLOG((WMDRMDBG,"got %p for " #name "\n", wmdrm_interface->name)); \ return wmdrm_interface->name(__VA_ARGS__); \} else { \ RMDBGLOG((WMDRMDBG,"Attempting to load WMDRM...\n")); \ if ((wmdrm_interface = load_drm(WMDRM, WMDRM_LIBRARY_NAME))) { \ RMDBGLOG((WMDRMDBG,"got %p for " #name "\n", wmdrm_interface->name)); \ return wmdrm_interface->name(__VA_ARGS__); \ } else { \ RMDBGLOG((WMDRMDBG,"Cannot load WMDRM\n")); \ return return_error; \ } \}#define FUNC0(name, return_type, return_error) \ return_type name (void) { \ FUNC(name, return_error) \ }#define FUNC1(name, return_type, return_error) \ return_type name (void){ \ FUNC(name, return_error)\ }#define FUNC2(name, return_type, return_error, t1, p1, t2, p2, t3, p3) \ return_type name (t1 p1, t2 p2, t3 p3){ \ FUNC(name, return_error, p1, p2, p3) \ } #define FUNC3(name, return_type, return_error, t1, p1, t2, p2) \ return_type name (t1 p1, t2 p2){ \ FUNC(name, return_error, p1, p2) \ }#include "../include/wmdrm_interface.inc"#endif /* EM86XX_CHIPID_TANGO2 && EM86XX_MODE == EM86XX_MODEID_STANDALONE*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -