Commit | Line | Data |
---|---|---|
5763fb39 T |
1 | #ifndef _EXYNOS_SCALERBLEND_H_ |
2 | #define _EXYNOS_SCALERBLEND_H_ | |
3 | ||
4 | #include "libscaler-v4l2.h" | |
5 | ||
6 | class CScalerBlendV4L2 : public CScalerV4L2 { | |
7 | ||
8 | public: | |
9 | CScalerBlendV4L2(int instance, int allow_drm); | |
10 | ~CScalerBlendV4L2(); | |
11 | struct SrcBlendInfo m_SrcBlndCfg; | |
12 | ||
13 | // H/W Control | |
14 | virtual bool DevSetCtrl(); | |
15 | ||
16 | void GetCustomAlphaBlendFmt(int32_t &src_color_space, | |
17 | unsigned int srcblendfmt); | |
18 | ||
19 | inline void SetSrcBlendOp(SRC_BL_OP op) { | |
20 | m_SrcBlndCfg.blop = op; | |
21 | SetFlag(m_fStatus, SCF_SRC_BLEND); | |
22 | } | |
23 | ||
24 | inline void SetSrcBlendHPos(int srcblendhpos) { | |
25 | m_SrcBlndCfg.srcblendhpos = srcblendhpos; | |
26 | } | |
27 | ||
28 | inline void SetSrcBlendVPos(int srcblendvpos) { | |
29 | m_SrcBlndCfg.srcblendvpos = srcblendvpos; | |
30 | } | |
31 | ||
32 | inline void SetSrcBlendPremulti(int srcblendpremulti) { | |
33 | m_SrcBlndCfg.srcblendpremulti = srcblendpremulti; | |
34 | } | |
35 | ||
36 | inline void SetSrcBlendFmt(int srcblendfmt) { | |
37 | m_SrcBlndCfg.srcblendfmt = srcblendfmt; | |
38 | } | |
39 | ||
40 | inline void SetSrcBlendStride(int srcblendstride) { | |
41 | m_SrcBlndCfg.srcblendstride = srcblendstride; | |
42 | } | |
43 | ||
44 | inline void SetSrcBlendWidth(int srcblendwidth) { | |
45 | m_SrcBlndCfg.srcblendwidth= srcblendwidth; | |
46 | } | |
47 | ||
48 | inline void SetSrcBlendHeight(int srcblendheight) { | |
49 | m_SrcBlndCfg.srcblendheight = srcblendheight; | |
50 | } | |
51 | ||
52 | inline void SetSrcGlobalAlpha(int globalalpha, bool enable) { | |
53 | m_SrcBlndCfg.globalalpha.enable = enable; | |
54 | m_SrcBlndCfg.globalalpha.val = globalalpha; | |
55 | } | |
56 | ||
57 | inline void SetSrcBlendCSCSpace(bool enable, | |
58 | enum colorspace space, bool wide) { | |
59 | m_SrcBlndCfg.cscspec.enable = enable; | |
60 | m_SrcBlndCfg.cscspec.space = space; | |
61 | m_SrcBlndCfg.cscspec.wide = wide; | |
62 | } | |
63 | }; | |
64 | #endif |