• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef LIBMPP_H_
2 #define LIBMPP_H_
3 
4 #include <log/log.h>
5 #include <sys/types.h>
6 #include <sys/ioctl.h>
7 #include <fcntl.h>
8 #include <stdbool.h>
9 #include <string.h>
10 #include <unistd.h>
11 #include <stdio.h>
12 #include <stdlib.h>
13 #include <time.h>
14 #include <system/graphics.h>
15 
16 #include <exynos_format.h>
17 #ifdef USES_GSCALER
18 #include <exynos_gscaler.h>
19 #endif
20 #ifdef USES_FIMC
21 #include "exynos_fimc.h"
22 #endif
23 
24 class LibMpp {
25 public:
LibMpp()26     LibMpp() {
27         ALOGD("%s\n", __func__);
28     }
~LibMpp()29     virtual ~LibMpp() {
30         ALOGD("%s\n", __func__);
31     }
32     virtual int ConfigMpp(void *handle, exynos_mpp_img *src,
33 				   exynos_mpp_img *dst) = 0;
34     virtual int RunMpp(void *handle, exynos_mpp_img *src,
35 				   exynos_mpp_img *dst) = 0;
36     virtual int StopMpp(void *handle) = 0;
37     virtual void DestroyMpp(void *handle) = 0;
38     virtual int SetCSCProperty(void *handle, unsigned int eqAuto,
39 		   unsigned int fullRange, unsigned int colorspace) = 0;
40     virtual int FreeMpp(void *handle) = 0;
41     virtual int SetInputCrop(void *handle, exynos_mpp_img *src, exynos_mpp_img *dst) = 0;
ConfigBlendMpp(void __unused * handle,exynos_mpp_img __unused * src,exynos_mpp_img __unused * dst,struct SrcBlendInfo __unused * srcblendinfo)42     virtual int ConfigBlendMpp(void __unused *handle, exynos_mpp_img __unused *src,
43                     exynos_mpp_img __unused *dst,
44                     struct SrcBlendInfo __unused *srcblendinfo) {return 0;};
45 };
46 
47 #endif
48