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:
Keith Packard 2008-03-18 16:01:10 -07:00
parent aa5cd18a9f
commit 2d09f9cac3
2 changed files with 7 additions and 15 deletions

View file

@ -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

View file

@ -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
└───