80 lines
3.2 KiB
C
Executable File
Vendored
80 lines
3.2 KiB
C
Executable File
Vendored
/* SigmaStar trade secret */
|
|
/* Copyright (c) [2019~2020] SigmaStar Technology.
|
|
All rights reserved.
|
|
|
|
Unless otherwise stipulated in writing, any and all information contained
|
|
herein regardless in any format shall remain the sole proprietary of
|
|
SigmaStar and be kept in strict confidence
|
|
(SigmaStar Confidential Information) by the recipient.
|
|
Any unauthorized act including without limitation unauthorized disclosure,
|
|
copying, use, reproduction, sale, distribution, modification, disassembling,
|
|
reverse engineering and compiling of the contents of SigmaStar Confidential
|
|
Information is unlawful and strictly prohibited. SigmaStar hereby reserves the
|
|
rights to any and all damages, losses, costs and expenses resulting therefrom.
|
|
*/
|
|
#ifndef _MI_SHADOW_H_
|
|
#define _MI_SHADOW_H_
|
|
#include "mi_shadow_datatype.h"
|
|
|
|
#define SHADOW_MAJOR_VERSION 2
|
|
#define SHADOW_SUB_VERSION 3
|
|
#define MACRO_TO_STR(macro) #macro
|
|
#define SHADOW_VERSION_STR(major_version,sub_version) ({char *tmp = sub_version/100 ? \
|
|
"mi_shadow_version_" MACRO_TO_STR(major_version)"." MACRO_TO_STR(sub_version) : sub_version/10 ? \
|
|
"mi_shadow_version_" MACRO_TO_STR(major_version)".0" MACRO_TO_STR(sub_version) : \
|
|
"mi_shadow_version_" MACRO_TO_STR(major_version)".00" MACRO_TO_STR(sub_version);tmp;})
|
|
#define MI_SHADOW_API_VERSION SHADOW_VERSION_STR(SHADOW_MAJOR_VERSION,SHADOW_SUB_VERSION)
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
MI_S32 MI_SHADOW_RegisterDev(
|
|
MI_SHADOW_RegisterDevParams_t *pstDevParams,
|
|
MI_SHADOW_HANDLE *phShadow);
|
|
MI_S32 MI_SHADOW_UnRegisterDev(MI_SHADOW_HANDLE hShadow);
|
|
MI_S32 MI_SHADOW_GetOutputPortBuf(
|
|
MI_SHADOW_HANDLE hShadow,
|
|
MI_U32 u32ChnId,
|
|
MI_U32 u32PortId,
|
|
MI_SYS_BufConf_t *pstBufConfig,
|
|
|
|
MI_BOOL *pbBlockedByRateCtrl,
|
|
MI_SYS_BufInfo_t *pstBufInfo,
|
|
MI_SYS_BUF_HANDLE *phBufHandle);
|
|
MI_S32 MI_SHADOW_GetInputPortBuf(
|
|
MI_SHADOW_HANDLE hShadow,
|
|
MI_U32 u32ChnId,
|
|
MI_U32 u32PortId,
|
|
|
|
MI_SYS_BufInfo_t *pstBufInfo,
|
|
MI_SYS_BUF_HANDLE *phBufHandle);
|
|
MI_S32 MI_SHADOW_FinishBuf(MI_SHADOW_HANDLE hShadow, MI_SYS_BUF_HANDLE hBufHandle);
|
|
MI_S32 MI_SHADOW_RewindBuf(MI_SHADOW_HANDLE hShadow, MI_SYS_BUF_HANDLE hBufHandle);
|
|
MI_S32 MI_SHADOW_WaitOnInputTaskAvailable(MI_SHADOW_HANDLE hShadow ,MI_S32 u32TimeOutMs);
|
|
|
|
MI_S32 MI_SHADOW_EnableChannel(MI_SHADOW_HANDLE hShadow, MI_U32 u32ChnId);
|
|
MI_S32 MI_SHADOW_DisableChannel(MI_SHADOW_HANDLE hShadow, MI_U32 u32ChnId);
|
|
MI_S32 MI_SHADOW_EnableOutputPort(MI_SHADOW_HANDLE hShadow, MI_U32 u32ChnId, MI_U32 u32PortId);
|
|
MI_S32 MI_SHADOW_DisableOutputPort(MI_SHADOW_HANDLE hShadow, MI_U32 u32ChnId, MI_U32 u32PortId);
|
|
MI_S32 MI_SHADOW_EnableInputPort(MI_SHADOW_HANDLE hShadow, MI_U32 u32ChnId, MI_U32 u32PortId);
|
|
MI_S32 MI_SHADOW_DisableInputPort(MI_SHADOW_HANDLE hShadow, MI_U32 u32ChnId, MI_U32 u32PortId);
|
|
MI_S32 MI_SHADOW_SetInputPortBufExtConf(
|
|
MI_SHADOW_HANDLE hShadow,
|
|
MI_U32 u32ChnId,
|
|
MI_U32 u32PortId,
|
|
MI_SYS_FrameBufExtraConfig_t * pstBufExtraConf
|
|
);
|
|
MI_S32 MI_SHADOW_SetOutputPortBufExtConf(
|
|
MI_SHADOW_HANDLE hShadow,
|
|
MI_U32 u32ChnId,
|
|
MI_U32 u32PortId,
|
|
MI_SYS_FrameBufExtraConfig_t * pstBufExtraConf
|
|
);
|
|
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif ///_MI_SHADOW_H_
|