mirror of
https://gitlab.freedesktop.org/xorg/proto/xorgproto.git
synced 2026-05-08 07:48:01 +02:00
Eliminate inverse matrix from randr transform protocol
It is easier, and potentially more precise, to compute the inverse in the server where everything can eventually be kept in floating point form.
This commit is contained in:
parent
aa5cd18a9f
commit
2d09f9cac3
2 changed files with 7 additions and 15 deletions
16
randrproto.h
16
randrproto.h
|
|
@ -568,13 +568,11 @@ typedef struct {
|
|||
CARD16 length B16;
|
||||
RRCrtc crtc B32;
|
||||
xRenderTransform transform;
|
||||
CARD32 pad0 B32;
|
||||
xRenderTransform inverse;
|
||||
CARD16 nbytesFilter; /* number of bytes in filter name */
|
||||
CARD16 pad B16;
|
||||
} xRRSetCrtcTransformReq;
|
||||
|
||||
#define sz_xRRSetCrtcTransformReq 88
|
||||
#define sz_xRRSetCrtcTransformReq 48
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
|
|
@ -592,19 +590,17 @@ typedef struct {
|
|||
CARD32 length B32;
|
||||
xRenderTransform pendingTransform;
|
||||
BYTE hasTransforms;
|
||||
CARD8 pad0a;
|
||||
CARD16 pad0 B16;
|
||||
xRenderTransform pendingInverse;
|
||||
CARD16 pendingNbytesFilter B16; /* number of bytes in filter name */
|
||||
CARD16 pendingNparamsFilter B16; /* number of filter params */
|
||||
CARD8 pad0;
|
||||
CARD16 pad1 B16;
|
||||
xRenderTransform currentTransform;
|
||||
CARD32 pad2 B32;
|
||||
xRenderTransform currentInverse;
|
||||
CARD16 pendingNbytesFilter B16; /* number of bytes in filter name */
|
||||
CARD16 pendingNparamsFilter B16; /* number of filter params */
|
||||
CARD16 currentNbytesFilter B16; /* number of bytes in filter name */
|
||||
CARD16 currentNparamsFilter B16; /* number of filter params */
|
||||
} xRRGetCrtcTransformReply;
|
||||
|
||||
#define sz_xRRGetCrtcTransformReply 168
|
||||
#define sz_xRRGetCrtcTransformReply 96
|
||||
|
||||
/*
|
||||
* event
|
||||
|
|
|
|||
|
|
@ -983,7 +983,6 @@ dynamic changes in the display environment.
|
|||
RRSetCrtcTransform
|
||||
crtc: CRTC
|
||||
transform: TRANSFORM
|
||||
inverse: TRANSFORM
|
||||
filter: STRING8
|
||||
values: LISTofFIXED
|
||||
└───
|
||||
|
|
@ -994,8 +993,7 @@ rotation and reflection values for describing the transformation from frame
|
|||
buffer image to crtc presentation. 'transform' is a full 2D projective
|
||||
transformations from screen coordinate space to crtc coordinate space. This
|
||||
transformation is applied before the rotation and reflection values to
|
||||
compute the complete transform. 'inverse' must be the
|
||||
multiplicative inverse of 'transform' or a Match error results.
|
||||
compute the complete transform.
|
||||
|
||||
'filter' and 'values' specify a Render filter that may be used by the server
|
||||
when transforming data from frame buffer to crtc.
|
||||
|
|
@ -1014,11 +1012,9 @@ the screen when the mode is set.
|
|||
crtc: CRTC
|
||||
▶
|
||||
pending-transform: TRANSFORM
|
||||
pending-inverse: TRANSFORM
|
||||
pending-filter: STRING8
|
||||
pending-values: LISTofFIXED
|
||||
current-transform: TRANSFORM
|
||||
current-inverse: TRANSFORM
|
||||
current-filter: STRING8
|
||||
current-values: LISTofFIXED
|
||||
└───
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue