xref: /OK3568_Linux_fs/external/rockit/mpi/sdk/include/rk_mpi_tde.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 SRC_RT_MPI_INCLUDE_RK_MPI_TDE_H_
5*4882a593Smuzhiyun #define SRC_RT_MPI_INCLUDE_RK_MPI_TDE_H_
6*4882a593Smuzhiyun 
7*4882a593Smuzhiyun #include "rk_type.h"
8*4882a593Smuzhiyun #include "rk_comm_tde.h"
9*4882a593Smuzhiyun 
10*4882a593Smuzhiyun #ifdef __cplusplus
11*4882a593Smuzhiyun #if __cplusplus
12*4882a593Smuzhiyun extern "C" {
13*4882a593Smuzhiyun #endif /* __cplusplus */
14*4882a593Smuzhiyun #endif /* __cplusplus */
15*4882a593Smuzhiyun 
16*4882a593Smuzhiyun RK_S32 RK_TDE_Open(RK_VOID);
17*4882a593Smuzhiyun 
18*4882a593Smuzhiyun RK_VOID RK_TDE_Close(RK_VOID);
19*4882a593Smuzhiyun 
20*4882a593Smuzhiyun TDE_HANDLE RK_TDE_BeginJob(RK_VOID);
21*4882a593Smuzhiyun 
22*4882a593Smuzhiyun RK_S32 RK_TDE_EndJob(TDE_HANDLE s32Handle, RK_BOOL bSync, RK_BOOL bBlock, RK_U32 u32TimeOut);
23*4882a593Smuzhiyun 
24*4882a593Smuzhiyun RK_S32 RK_TDE_CancelJob(TDE_HANDLE s32Handle);
25*4882a593Smuzhiyun 
26*4882a593Smuzhiyun RK_S32 RK_TDE_WaitForDone(TDE_HANDLE s32Handle);
27*4882a593Smuzhiyun 
28*4882a593Smuzhiyun RK_S32 RK_TDE_WaitAllDone(RK_VOID);
29*4882a593Smuzhiyun 
30*4882a593Smuzhiyun RK_S32 RK_TDE_QuickCopy(TDE_HANDLE s32Handle,
31*4882a593Smuzhiyun                                const TDE_SURFACE_S *pstSrc,
32*4882a593Smuzhiyun                                const TDE_RECT_S *pstSrcRect,
33*4882a593Smuzhiyun                                const TDE_SURFACE_S *pstDst,
34*4882a593Smuzhiyun                                const TDE_RECT_S *pstDstRect);
35*4882a593Smuzhiyun 
36*4882a593Smuzhiyun RK_S32 RK_TDE_QuickResize(TDE_HANDLE s32Handle,
37*4882a593Smuzhiyun                                  const TDE_SURFACE_S *pstSrc,
38*4882a593Smuzhiyun                                  const TDE_RECT_S *pstSrcRect,
39*4882a593Smuzhiyun                                  const TDE_SURFACE_S *pstDst,
40*4882a593Smuzhiyun                                  const TDE_RECT_S *pstDstRect);
41*4882a593Smuzhiyun 
42*4882a593Smuzhiyun RK_S32 RK_TDE_Bitblit(TDE_HANDLE s32Handle,
43*4882a593Smuzhiyun                          const TDE_SURFACE_S *pstBackGround,
44*4882a593Smuzhiyun                          const TDE_RECT_S *pstBackGroundRect,
45*4882a593Smuzhiyun                          const TDE_SURFACE_S *pstForeGround,
46*4882a593Smuzhiyun                          const TDE_RECT_S *pstForeGroundRect,
47*4882a593Smuzhiyun                          const TDE_SURFACE_S *pstDst,
48*4882a593Smuzhiyun                          const TDE_RECT_S *pstDstRect,
49*4882a593Smuzhiyun                          const TDE_OPT_S *pstOpt);
50*4882a593Smuzhiyun 
51*4882a593Smuzhiyun RK_S32 RK_TDE_QuickFill(TDE_HANDLE s32Handle,
52*4882a593Smuzhiyun                          TDE_SURFACE_S *pstDst,
53*4882a593Smuzhiyun                          TDE_RECT_S *pstDstRect,
54*4882a593Smuzhiyun                          RK_U32 u32FillData);
55*4882a593Smuzhiyun 
56*4882a593Smuzhiyun RK_S32 RK_TDE_Rotate(TDE_HANDLE s32Handle,
57*4882a593Smuzhiyun                          TDE_SURFACE_S *pstSrc,
58*4882a593Smuzhiyun                          TDE_RECT_S *pstSrcRect,
59*4882a593Smuzhiyun                          TDE_SURFACE_S *pstDst,
60*4882a593Smuzhiyun                          TDE_RECT_S *pstDstRect,
61*4882a593Smuzhiyun                          ROTATION_E enRotateAngle);
62*4882a593Smuzhiyun 
63*4882a593Smuzhiyun #ifdef __cplusplus
64*4882a593Smuzhiyun #if __cplusplus
65*4882a593Smuzhiyun }
66*4882a593Smuzhiyun #endif /* __cplusplus */
67*4882a593Smuzhiyun #endif /* __cplusplus */
68*4882a593Smuzhiyun 
69*4882a593Smuzhiyun #endif /* SRC_RT_MPI_INCLUDE_RK_MPI_TDE_H_ */
70