~emersion/drmdb

ref: fca493e0891500577fe6bfa91d10d27840599a81 drmdb/drmdoc/plane-blending-properties.go -rw-r--r-- 4.9 KiB
fca493e0Simon Ser drmdoc: update docs a month ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Code generated by running "go generate". DO NOT EDIT.

package drmdoc

var planeBlendingProperties = map[string]string{
	"CRTC_H":           "Height for the destination rectangle. CRTC_Y plus CRTC_H can extend past\nthe currently visible vertical area of the &drm_crtc.",
	"CRTC_ID":          "Mode object ID of the &drm_crtc this plane should be connected to.",
	"CRTC_W":           "Width for the destination rectangle. CRTC_X plus CRTC_W can extend past\nthe currently visible horizontal area of the &drm_crtc.",
	"CRTC_X":           "X coordinate offset for the destination rectangle. Can be negative.",
	"CRTC_Y":           "Y coordinate offset for the destination rectangle. Can be negative.",
	"FB_ID":            "Mode object ID of the &drm_framebuffer this plane should scan out.",
	"SCALING_FILTER":   "Indicates scaling filter to be used for plane scaler\n\nThe value of this property can be one of the following:\n\nDefault:\n        Driver's default scaling filter\nNearest Neighbor:\n        Nearest Neighbor scaling filter",
	"SRC_H":            "Height for the source rectangle within the &drm_framebuffer, in 16.16\nfixed point. SRC_Y plus SRC_H must be within the height of the source\nframebuffer. Must be positive.",
	"SRC_W":            "Width for the source rectangle within the &drm_framebuffer, in 16.16\nfixed point. SRC_X plus SRC_W must be within the width of the source\nframebuffer. Must be positive.",
	"SRC_X":            "X coordinate offset for the source rectangle within the\n&drm_framebuffer, in 16.16 fixed point. Must be positive.",
	"SRC_Y":            "Y coordinate offset for the source rectangle within the\n&drm_framebuffer, in 16.16 fixed point. Must be positive.",
	"alpha":            "Alpha is setup with drm_plane_create_alpha_property(). It controls the\nplane-wide opacity, from transparent (0) to opaque (0xffff). It can be\ncombined with pixel alpha.\nThe pixel values in the framebuffers are expected to not be\npre-multiplied by the global alpha associated to the plane.",
	"pixel blend mode": "Pixel blend mode is set up with drm_plane_create_blend_mode_property().\nIt adds a blend mode for alpha blending equation selection, describing\nhow the pixels from the current plane are composited with the\nbackground.\n\n Three alpha blending equations are defined:\n\n \"None\":\n\t Blend formula that ignores the pixel alpha::\n\n\t\t out.rgb = plane_alpha * fg.rgb +\n\t\t\t (1 - plane_alpha) * bg.rgb\n\n \"Pre-multiplied\":\n\t Blend formula that assumes the pixel color values\n\t have been already pre-multiplied with the alpha\n\t channel values::\n\n\t\t out.rgb = plane_alpha * fg.rgb +\n\t\t\t (1 - (plane_alpha * fg.alpha)) * bg.rgb\n\n \"Coverage\":\n\t Blend formula that assumes the pixel color values have not\n\t been pre-multiplied and will do so when blending them to the\n\t background color values::\n\n\t\t out.rgb = plane_alpha * fg.alpha * fg.rgb +\n\t\t\t (1 - (plane_alpha * fg.alpha)) * bg.rgb\n\n Using the following symbols:\n\n \"fg.rgb\":\n\t Each of the RGB component values from the plane's pixel\n \"fg.alpha\":\n\t Alpha component value from the plane's pixel. If the plane's\n\t pixel format has no alpha component, then this is assumed to be\n\t 1.0. In these cases, this property has no effect, as all three\n\t equations become equivalent.\n \"bg.rgb\":\n\t Each of the RGB component values from the background\n \"plane_alpha\":\n\t Plane alpha value set by the plane \"alpha\" property. If the\n\t plane does not expose the \"alpha\" property, then this is\n\t assumed to be 1.0",
	"rotation":         "Rotation is set up with drm_plane_create_rotation_property(). It adds a\nrotation and reflection step between the source and destination rectangles.\nWithout this property the rectangle is only scaled, but not rotated or\nreflected.\n\nPossbile values:\n\n\"rotate-<degrees>\":\n\tSignals that a drm plane is rotated <degrees> degrees in counter\n\tclockwise direction.\n\n\"reflect-<axis>\":\n\tSignals that the contents of a drm plane is reflected along the\n\t<axis> axis, in the same way as mirroring.\n\nreflect-x::\n\n\t\t|o |    | o|\n\t\t|  | -> |  |\n\t\t| v|    |v |\n\nreflect-y::\n\n\t\t|o |    | ^|\n\t\t|  | -> |  |\n\t\t| v|    |o |",
	"zpos":             "Z position is set up with drm_plane_create_zpos_immutable_property() and\ndrm_plane_create_zpos_property(). It controls the visibility of overlapping\nplanes. Without this property the primary plane is always below the cursor\nplane, and ordering between all other planes is undefined. The positive\nZ axis points towards the user, i.e. planes with lower Z position values\nare underneath planes with higher Z position values. Two planes with the\nsame Z position value have undefined ordering. Note that the Z position\nvalue can also be immutable, to inform userspace about the hard-coded\nstacking of planes, see drm_plane_create_zpos_immutable_property(). If\nany plane has a zpos property (either mutable or immutable), then all\nplanes shall have a zpos property.",
}