mpi_vb.h 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. /******************************************************************************
  2. Copyright (C), 2016, Hisilicon Tech. Co., Ltd.
  3. ******************************************************************************
  4. File Name : mpi_vb.h
  5. Version : Initial Draft
  6. Author : Hisilicon multimedia software group
  7. Created : 2016/07/15
  8. Last Modified :
  9. Description : MPP Programe Interface for video buffer management moudle
  10. Function List :
  11. ******************************************************************************/
  12. #ifndef __MPI_VB_H__
  13. #define __MPI_VB_H__
  14. #include "hi_comm_vb.h"
  15. #include "hi_comm_video.h"
  16. #ifdef __cplusplus
  17. #if __cplusplus
  18. extern "C"{
  19. #endif
  20. #endif /* End of #ifdef __cplusplus */
  21. VB_POOL HI_MPI_VB_CreatePool(VB_POOL_CONFIG_S *pstVbPoolCfg);
  22. HI_S32 HI_MPI_VB_DestroyPool(VB_POOL Pool);
  23. VB_BLK HI_MPI_VB_GetBlock(VB_POOL Pool, HI_U64 u64BlkSize,const HI_CHAR *pcMmzName);
  24. HI_S32 HI_MPI_VB_ReleaseBlock(VB_BLK Block);
  25. VB_BLK HI_MPI_VB_PhysAddr2Handle(HI_U64 u64PhyAddr);
  26. HI_U64 HI_MPI_VB_Handle2PhysAddr(VB_BLK Block);
  27. VB_POOL HI_MPI_VB_Handle2PoolId(VB_BLK Block);
  28. HI_S32 HI_MPI_VB_InquireUserCnt(VB_BLK Block);
  29. HI_S32 HI_MPI_VB_GetSupplementAddr(VB_BLK Block, VIDEO_SUPPLEMENT_S *pstSupplement);
  30. HI_S32 HI_MPI_VB_SetSupplementConfig(const VB_SUPPLEMENT_CONFIG_S *pstSupplementConfig);
  31. HI_S32 HI_MPI_VB_GetSupplementConfig(VB_SUPPLEMENT_CONFIG_S *pstSupplementConfig);
  32. HI_S32 HI_MPI_VB_Init(HI_VOID);
  33. HI_S32 HI_MPI_VB_Exit(HI_VOID);
  34. HI_S32 HI_MPI_VB_SetConfig(const VB_CONFIG_S *pstVbConfig);
  35. HI_S32 HI_MPI_VB_GetConfig(VB_CONFIG_S *pstVbConfig);
  36. HI_S32 HI_MPI_VB_MmapPool(VB_POOL Pool);
  37. HI_S32 HI_MPI_VB_MunmapPool(VB_POOL Pool);
  38. HI_S32 HI_MPI_VB_GetBlockVirAddr(VB_POOL Pool, HI_U64 u64PhyAddr, HI_VOID **ppVirAddr);
  39. HI_S32 HI_MPI_VB_InitModCommPool(VB_UID_E enVbUid);
  40. HI_S32 HI_MPI_VB_ExitModCommPool(VB_UID_E enVbUid);
  41. HI_S32 HI_MPI_VB_SetModPoolConfig(VB_UID_E enVbUid, const VB_CONFIG_S *pstVbConfig);
  42. HI_S32 HI_MPI_VB_GetModPoolConfig(VB_UID_E enVbUid, VB_CONFIG_S *pstVbConfig);
  43. #ifdef __cplusplus
  44. #if __cplusplus
  45. }
  46. #endif
  47. #endif /* End of #ifdef __cplusplus */
  48. #endif /*__MPI_VI_H__ */