summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qvsp2blendingdevice.h
diff options
context:
space:
mode:
authorJohan Klokkhammer Helsing <johan.helsing@qt.io>2018-01-29 15:32:55 +0100
committerJohan Helsing <johan.helsing@qt.io>2018-02-05 13:12:01 +0000
commit3058e21af0f36d78e5515cef0fe88969310fa912 (patch)
tree9c73cda7d109b2bdd1cf2884ef4de60a2fbed203 /src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qvsp2blendingdevice.h
parent38c6d10bc83dedf9283b7a89d076ea2980de7843 (diff)
eglfs_kms_vsp2: Add support for setting layer alpha
Exposed through QEglFSFunctions::vsp2SetLayerAlpha. Change-Id: I2a600971d5a2aa56d4bf7cde03df3323f17249cd Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Diffstat (limited to 'src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qvsp2blendingdevice.h')
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qvsp2blendingdevice.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qvsp2blendingdevice.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qvsp2blendingdevice.h
index ff2d581d72..be48954f47 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qvsp2blendingdevice.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qvsp2blendingdevice.h
@@ -59,6 +59,7 @@ public:
bool disableInput(int i);
bool setInputBuffer(int index, int dmabufFd);
bool setInputPosition(int index, const QPoint &position);
+ bool setInputAlpha(int index, qreal alpha);
bool blend(int outputDmabufFd);
int numInputs() const;
bool isDirty() const { return m_dirty; }
@@ -71,6 +72,7 @@ private:
struct Input {
bool enabled = false;
QRect geometry;
+ qreal alpha = 1;
struct {
int fd = -1;
uint bytesUsed = 0;
@@ -79,6 +81,7 @@ private:
struct media_link *linkToBru = nullptr; //rpf.x:1 -> bru:x
struct media_pad *inputFormatPad = nullptr; // rpf.x:0
struct media_pad *outputFormatPad = nullptr; // rpf.x:1
+ int outputFormatFd = -1; // rpf.x:1 (again, because v4l2_subdev_* doesn't have a way to set alpha)
struct media_pad *bruInputFormatPad = nullptr; // bru:x
QLinuxMediaDevice::OutputSubDevice *rpfInput = nullptr; // rpf.x input
};