xref: /OK3568_Linux_fs/external/rockit/mpi/sdk/include/rk_mpi_gdc.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /* GPL-2.0 WITH Linux-syscall-note OR Apache 2.0 */
2*4882a593Smuzhiyun /* Copyright (c) 2021 Fuzhou Rockchip Electronics Co., Ltd */
3*4882a593Smuzhiyun 
4*4882a593Smuzhiyun #ifndef INCLUDE_RT_MPI_GDC_H_
5*4882a593Smuzhiyun #define INCLUDE_RT_MPI_GDC_H_
6*4882a593Smuzhiyun 
7*4882a593Smuzhiyun #include "rk_common.h"
8*4882a593Smuzhiyun #include "rk_comm_video.h"
9*4882a593Smuzhiyun #include "rk_comm_gdc.h"
10*4882a593Smuzhiyun 
11*4882a593Smuzhiyun #ifdef __cplusplus
12*4882a593Smuzhiyun #if __cplusplus
13*4882a593Smuzhiyun extern "C" {
14*4882a593Smuzhiyun #endif
15*4882a593Smuzhiyun #endif /*__cplusplus*/
16*4882a593Smuzhiyun 
17*4882a593Smuzhiyun RK_S32 RK_MPI_GDC_BeginJob(GDC_HANDLE *phHandle);
18*4882a593Smuzhiyun RK_S32 RK_MPI_GDC_EndJob(GDC_HANDLE hHandle);
19*4882a593Smuzhiyun RK_S32 RK_MPI_GDC_CancelJob(GDC_HANDLE hHandle);
20*4882a593Smuzhiyun RK_S32 RK_MPI_GDC_StopJob(GDC_HANDLE hHandle);
21*4882a593Smuzhiyun RK_S32 RK_MPI_GDC_SetConfig(GDC_HANDLE hHandle, const FISHEYE_JOB_CONFIG_S *pstJobConfig);
22*4882a593Smuzhiyun RK_S32 RK_MPI_GDC_AddCorrectionTask(GDC_HANDLE hHandle,
23*4882a593Smuzhiyun                                         const GDC_TASK_ATTR_S *pstTask,
24*4882a593Smuzhiyun                                         const FISHEYE_ATTR_S *pstFisheyeAttr);
25*4882a593Smuzhiyun RK_S32 RK_MPI_GDC_AddCorrectionExTask(GDC_HANDLE hHandle,
26*4882a593Smuzhiyun                                         const GDC_TASK_ATTR_S *pstTask,
27*4882a593Smuzhiyun                                         const FISHEYE_ATTR_EX_S *pstFishEyeAttrrEx,
28*4882a593Smuzhiyun                                         RK_BOOL bCheckMode);
29*4882a593Smuzhiyun RK_S32 RK_MPI_GDC_AddPMFTask(GDC_HANDLE hHandle,
30*4882a593Smuzhiyun                                         const GDC_TASK_ATTR_S *pstTask,
31*4882a593Smuzhiyun                                         const GDC_PMF_ATTR_S *pstGdcPmfAttrr);
32*4882a593Smuzhiyun RK_S32 RK_MPI_GDC_FisheyePosQueryDst2Src(const GDC_FISHEYE_POINT_QUERY_ATTR_S *pstFisheyePointQueryAttr,
33*4882a593Smuzhiyun                                         const VIDEO_FRAME_INFO_S *pstVideoInfo,
34*4882a593Smuzhiyun                                         const POINT_S *pstDstPoint,
35*4882a593Smuzhiyun                                         POINT_S *pstSrcPoint);
36*4882a593Smuzhiyun RK_S32 RK_MPI_GDC_FisheyePosQueryDst2SrcArray(const GDC_FISHEYE_POINT_QUERY_ATTR_S *pstFisheyePointQueryAttr,
37*4882a593Smuzhiyun                                                 const VIDEO_FRAME_INFO_S *pstVideoInfo,
38*4882a593Smuzhiyun                                                 const RK_U32 u32PointNum,
39*4882a593Smuzhiyun                                                 const POINT_S *pastDstPoint,
40*4882a593Smuzhiyun                                                 POINT_S *pastSrcPoint);
41*4882a593Smuzhiyun RK_S32 RK_MPI_GDC_FisheyePosQueryDst2Pano(const GDC_FISHEYE_POINT_QUERY_ATTR_S *pstFisheyePointQueryAttr,
42*4882a593Smuzhiyun                                             const VIDEO_FRAME_INFO_S *pstVideoInfo,
43*4882a593Smuzhiyun                                             const RK_U32 u32PanoRegionIndex,
44*4882a593Smuzhiyun                                             const POINT_S *pstDstPoint,
45*4882a593Smuzhiyun                                             POINT_S *pstPanoPoint);
46*4882a593Smuzhiyun RK_S32 RK_MPI_GDC_FisheyePosQueryDst2PanoArray(const GDC_FISHEYE_POINT_QUERY_ATTR_S *pstFisheyePointQueryAttr,
47*4882a593Smuzhiyun                                                 const VIDEO_FRAME_INFO_S *pstVideoInfo,
48*4882a593Smuzhiyun                                                 const RK_U32 u32PanoRegionIndex,
49*4882a593Smuzhiyun                                                 const RK_U32 u32PointNum,
50*4882a593Smuzhiyun                                                 const POINT_S *pastDstPoint,
51*4882a593Smuzhiyun                                                 POINT_S *pastPanoPoint);
52*4882a593Smuzhiyun #ifdef __cplusplus
53*4882a593Smuzhiyun #if __cplusplus
54*4882a593Smuzhiyun }
55*4882a593Smuzhiyun #endif
56*4882a593Smuzhiyun #endif /*__cplusplus*/
57*4882a593Smuzhiyun 
58*4882a593Smuzhiyun #endif /*end of __MPI_GDC_H__*/
59