Files
rk35xx-android14/hardware/google/graphics/common/libscaler/libscalerblend-v4l2.h
T
hmz007 36ed224bac Rockchip Anroid14_SDK 20240628-rkr5 (2556df1a)
Signed-off-by: hmz007 <hmz007@gmail.com>
Change-Id: Ib87fdbe7a0be7dc961af3500fe9ea4589a127f9f
2024-10-29 18:12:02 +08:00

65 lines
1.9 KiB
C++

#ifndef _EXYNOS_SCALERBLEND_H_
#define _EXYNOS_SCALERBLEND_H_
#include "libscaler-v4l2.h"
class CScalerBlendV4L2 : public CScalerV4L2 {
public:
CScalerBlendV4L2(int instance, int allow_drm);
~CScalerBlendV4L2();
struct SrcBlendInfo m_SrcBlndCfg;
// H/W Control
virtual bool DevSetCtrl();
void GetCustomAlphaBlendFmt(int32_t &src_color_space,
unsigned int srcblendfmt);
inline void SetSrcBlendOp(SRC_BL_OP op) {
m_SrcBlndCfg.blop = op;
SetFlag(m_fStatus, SCF_SRC_BLEND);
}
inline void SetSrcBlendHPos(int srcblendhpos) {
m_SrcBlndCfg.srcblendhpos = srcblendhpos;
}
inline void SetSrcBlendVPos(int srcblendvpos) {
m_SrcBlndCfg.srcblendvpos = srcblendvpos;
}
inline void SetSrcBlendPremulti(int srcblendpremulti) {
m_SrcBlndCfg.srcblendpremulti = srcblendpremulti;
}
inline void SetSrcBlendFmt(int srcblendfmt) {
m_SrcBlndCfg.srcblendfmt = srcblendfmt;
}
inline void SetSrcBlendStride(int srcblendstride) {
m_SrcBlndCfg.srcblendstride = srcblendstride;
}
inline void SetSrcBlendWidth(int srcblendwidth) {
m_SrcBlndCfg.srcblendwidth= srcblendwidth;
}
inline void SetSrcBlendHeight(int srcblendheight) {
m_SrcBlndCfg.srcblendheight = srcblendheight;
}
inline void SetSrcGlobalAlpha(int globalalpha, bool enable) {
m_SrcBlndCfg.globalalpha.enable = enable;
m_SrcBlndCfg.globalalpha.val = globalalpha;
}
inline void SetSrcBlendCSCSpace(bool enable,
enum colorspace space, bool wide) {
m_SrcBlndCfg.cscspec.enable = enable;
m_SrcBlndCfg.cscspec.space = space;
m_SrcBlndCfg.cscspec.wide = wide;
}
};
#endif