proto/randrproto: Branch 'transform-proposal'

Keith Packard keithp at kemper.freedesktop.org
Tue Mar 18 16:00:28 PDT 2008


 randrproto.h   |   16 ++++++----------
 randrproto.txt |    6 +-----
 2 files changed, 7 insertions(+), 15 deletions(-)

New commits:
commit 2d09f9cac379c74f492b528a8aa2ac3b5997d617
Author: Keith Packard <keithp at keithp.com>
Date:   Tue Mar 18 16:01:10 2008 -0700

    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.

diff --git a/randrproto.h b/randrproto.h
index e6bab25..6c52eea 100644
--- a/randrproto.h
+++ b/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
diff --git a/randrproto.txt b/randrproto.txt
index ac40f93..eac79c7 100644
--- a/randrproto.txt
+++ b/randrproto.txt
@@ -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
 └───


More information about the xorg-commit mailing list