Author: dnusinow
Date: 2005-06-09 20:44:22 -0500 (Thu, 09 Jun 2005)
New Revision: 47

Added:
   trunk/AUTHORS
   trunk/NEWS
Modified:
   trunk/ChangeLog
   trunk/autogen.sh
   trunk/configure.ac
   trunk/debian/changelog
   trunk/debian/copyright
   trunk/protocol
   trunk/render.h
   trunk/renderproto.h
Log:
- Update to newest release (tagged as 0.9 by Daniel, but not in CVS that I
  can see)
- Update debian/copyright download location


Added: trunk/AUTHORS
===================================================================
--- trunk/AUTHORS       2005-05-09 19:04:22 UTC (rev 46)
+++ trunk/AUTHORS       2005-06-10 01:44:22 UTC (rev 47)
@@ -0,0 +1 @@
+Keith Packard while at HP Cambridge Research Laboratory, and SuSE, Inc.

Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog     2005-05-09 19:04:22 UTC (rev 46)
+++ trunk/ChangeLog     2005-06-10 01:44:22 UTC (rev 47)
@@ -1,3 +1,31 @@
+2004-07-29  Keith Packard  <[EMAIL PROTECTED]>
+
+       * configure.ac:
+       * protocol:
+       * render.h:
+       * renderproto.h:
+       Specify new AddTraps request.
+       Change pixelization specification.
+
+2004-07-03  Eric Anholt  <[EMAIL PROTECTED]>
+
+       * render.h:
+       Bugzilla #635: Correct the definition of CPLastBit to account for
+       ComponentAlpha, which may fix behavior of an X server's
+       SetPictureToDefaults.
+
+2004-02-03  Jim Gettys  <[EMAIL PROTECTED]>
+
+       * Add AUTHOR file.
+
+2004-01-15  Daniel Stone  <[EMAIL PROTECTED]>
+       * Tag release 0.8 for first freedesktop.org clientside lib release.
+
+2003-11-09  Eric Anholt  <[EMAIL PROTECTED]>
+
+       * configure.ac:
+       Rename dist to renderext
+
 2003-04-21     Keith Packard <[EMAIL PROTECTED]>
 
        + Added ChangeLog

Added: trunk/NEWS
===================================================================

Modified: trunk/autogen.sh
===================================================================
--- trunk/autogen.sh    2005-05-09 19:04:22 UTC (rev 46)
+++ trunk/autogen.sh    2005-06-10 01:44:22 UTC (rev 47)
@@ -1,50 +1,12 @@
 #! /bin/sh
-#
-# $Id: autogen.sh,v 1.1 2003/04/17 18:17:05 nlevitt Exp $
-#
-# runs autotools to create ./configure and friends
-#
 
-PROJECT=Render
+srcdir=`dirname $0`
+test -z "$srcdir" && srcdir=.
 
-srcdir=`dirname "$0"`
-test -z $srcdir && srcdir=.
+ORIGDIR=`pwd`
+cd $srcdir
 
-origdir=`pwd`
-cd "$srcdir"
+autoreconf -v --install || exit 1
+cd $ORIGDIR || exit $?
 
-if test -z "$AUTOGEN_SUBDIR_MODE" && test -z "$*"
-then
-  echo "I am going to run ./configure with no arguments - if you wish "
-  echo "to pass any to it, please specify them on the $0 command line."
-fi
-
-# Use the versioned executables if available.
-aclocal=aclocal-1.7
-automake=automake-1.7
-$aclocal  --version </dev/null >/dev/null 2>&1 || aclocal=aclocal
-$automake --version </dev/null >/dev/null 2>&1 || automake=automake
-
-
-rm -f config.guess config.sub depcomp install-sh missing mkinstalldirs
-rm -f config.cache acconfig.h
-rm -rf autom4te.cache
-
-set_option=':'
-test -n "${BASH_VERSION+set}" && set_option='set'
-
-$set_option -x
-
-$aclocal $ACLOCAL_FLAGS                  || exit 1
-$automake --foreign --add-missing --copy || exit 1
-autoconf                                 || exit 1
-cd "$origdir"                            || exit 1
-
-if test -z "$AUTOGEN_SUBDIR_MODE"
-then
-  "$srcdir/configure" "$@" || exit 1
-  $set_option +x
-fi
-
-exit 0
-
+$srcdir/configure --enable-maintainer-mode "$@"

Modified: trunk/configure.ac
===================================================================
--- trunk/configure.ac  2005-05-09 19:04:22 UTC (rev 46)
+++ trunk/configure.ac  2005-06-10 01:44:22 UTC (rev 47)
@@ -1,5 +1,5 @@
 dnl 
-dnl  $Id: configure.ac,v 1.1 2003/04/17 18:16:03 nlevitt Exp $
+dnl  $Id: configure.ac,v 1.4 2004/07/29 07:58:03 keithp Exp $
 dnl 
 dnl  Copyright © 2003 Keith Packard, Noah Levitt
 dnl 
@@ -23,9 +23,10 @@
 dnl
 dnl Process this file with autoconf to create configure.
 
-AC_PREREQ([2.50])
-AC_INIT([render], [0.8])
-AM_INIT_AUTOMAKE(render, 0.8)
+AC_PREREQ([2.57])
+AC_INIT([renderext], [0.9], [EMAIL PROTECTED], [renderext])
+AM_INIT_AUTOMAKE([dist-bzip2])
+AM_MAINTAINER_MODE
 
 AC_OUTPUT([Makefile
            render.pc])

Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog      2005-05-09 19:04:22 UTC (rev 46)
+++ trunk/debian/changelog      2005-06-10 01:44:22 UTC (rev 47)
@@ -1,3 +1,9 @@
+render (1:0.9-1) UNRELEASED; urgency=low
+
+  * New upstream release
+
+ -- David Nusinow <[EMAIL PROTECTED]>  Thu,  9 Jun 2005 21:40:01 -0400
+
 render (1:0.8-1) unstable; urgency=low
 
   * Sponsored upload of package prepared at Branden's request by Josh Triplett

Modified: trunk/debian/copyright
===================================================================
--- trunk/debian/copyright      2005-05-09 19:04:22 UTC (rev 46)
+++ trunk/debian/copyright      2005-06-10 01:44:22 UTC (rev 47)
@@ -1,7 +1,7 @@
 This package was Debianized by Branden Robinson <[EMAIL PROTECTED]> on
 Sun,  4 May 2003 01:12:21 -0500.
 
-Downloaded from: http://pdx.freedesktop.org/~xlibs/release/render-0.8.tar.gz
+Downloaded from: http://cvs.freedesktop.org/xlibs/Render/
 
 Upstream copyright:
 

Modified: trunk/protocol
===================================================================
--- trunk/protocol      2005-05-09 19:04:22 UTC (rev 46)
+++ trunk/protocol      2005-06-10 01:44:22 UTC (rev 47)
@@ -1,6 +1,6 @@
                        The X Rendering Extension
-                             Version 0.8
-                               2003-5-3
+                             Version 0.9
+                               2004-7-23
                              Keith Packard
                            [EMAIL PROTECTED]
 
@@ -29,7 +29,7 @@
        how OpenGL works.
 
  +     Carl Worth for providing the sample implementation of
-       trapezoid rendering
+       trapezoid rendering and showing how broken the spec was
 
  +     Sam Pottle and Jamey Sharp for helping demonstrate the correctness
        of the trapezoid specification.
@@ -208,9 +208,13 @@
                        p1, p2:         POINTFIX
                ]
 TRAP           [
+                       top, bottom:    SPANFIX
+               ]
+TRAPEZOID      [
                        top, bottom:    FIXED
                        left, right:    LINEFIX
                ]
+(TRAPEZOID is deprecated)
 COLORTRIANGLE  [
                        p1, p2, p3:     COLORPOINT
                ]
@@ -372,22 +376,13 @@
 
 10. Polygon Rasterization
 
-All polygons must be convex.  Rendering of concave polygons is unspecified
+Render provides only two kinds of polygons, trapezoids and triangles.  To
+improve efficiency, several different wire encodings exist for each. 
+
+All trapezoids must be convex.  Rendering of concave trapezoids is unspecified
 except that the result must obey the clipping rules.
 
-Each polygon request fills the region closed by the specified path.  The
-path is automatically closed if the last point does not coincide with the
-first point.
-
-A point is infinitely small and the path is an infinitely thin line.  A
-pixel is inside if the center point of the pixel is inside and the center
-point is not on the boundary.  If the center point is on the boundary, the
-pixel is inside if and only if the polygon interior is immediately to its
-right (x increasing direction).  Pixels with centers along a horizontal edge
-are a special case and are inside if and only if the polygon interior is
-immediately below (y increasing direction).  A polygon contains a pixel if
-the pixel is inside the polygon.
-
+Composite
 Polygons are rasterized by implicit generating an alpha mask and using that
 in the general compositing operator along with a supplied source image:
 
@@ -404,22 +399,21 @@
 the alpha width in the fallback format before application of the compositing
 operator.
 
----
+Rasterization
+Alpha values are generated by point sampling the coverage of a square
+surrounding the center of each pixel by the polygon. 
 
-This needs rewriting to match current trapezoid specification and
-base other polygons on that.  I suspect imprecise polygons will need
-to have a relaxed specification as well; hardware is unlikely to
-meet the "sum to one" constraint.
+In Precise poly mode, the sample points are located in a regular grid.  When
+alpha depth 'e' is even, the regular grid is 2**(e/2) + 1 samples wide and
+2**(e/2) -1 samples high.  For odd alpha depth 'o', the sample grid is 2**o
+- 1 samples wide and 1 sample high.  Note that odd alpha depth usually
+occurs only at depth 1, so this misshapen sample grid has no ill effects.
+The sample grid is centered within the pixel and then each sample point is
+rounded down to a point on the sub-pixel coordinate grid.
 
----
+In Imprecise mode, the location of the sample points is not specified, but
+the implementation must conform to the following constraints:
 
-When rasterized in Precise mode, the pixelization will match this
-specification exactly.
-
-When rasterized in Imprecise mode, the pixelization may deviate from this
-specification by up to 1/2 pixel along any edge subject to the following
-constraints:
-
  +     Abutting edges must match precisely.  When specifying two polygons
        abutting along a common edge, if that edge is specified with the
        same coordinates in each polygon then the sum of alpha values for
@@ -436,16 +430,6 @@
  +     Order independent. Two identical polygons specified with vertices
        in different orders must generate identical results.
 
-Polygons can also be specified with colors for each vertex.  These color
-values are interpolated along the edges and across each scanline.
-
-When rasterized in Precise mode, the interpolated colors are exact.
-
-When rasterized in Imprecise mode, the color of each pixel may optionally be
-interpolated from a triangle containing the pixel which is formed from any
-three polygon vertices.  Any interpolated color value can err up to 1 lsb in
-each channel.
-
 11. Image Filtering
 
 When computing pixels from source and mask images, a filter may be applied
@@ -460,8 +444,8 @@
 
        Filter Name     Description
 
-       Nearest         Nearest neighbor filtering
-       Bilinear        Linear interpolation in two dimensions
+       nearest         Nearest neighbor filtering
+       bilinear        Linear interpolation in two dimensions
 
 Additional names may be provided for any filter as aliases.  A set of
 standard alias names are required to be mapped to a provided filter so that
@@ -469,13 +453,29 @@
 
        Alias name      Intended interpretation
        
-       Fast            High performance, quality similar to Nearest
-       Good            Reasonable performance, quality similar to Bilinear
-       Best            Highest quality available, performance may not
+       fast            High performance, quality similar to Nearest
+       good            Reasonable performance, quality similar to Bilinear
+       best            Highest quality available, performance may not
                        be suitable for interactive use
 
 Aliases must map directly to a non-aliased filter name.
 
+There is also a set of standard filters which are not required but may be
+provided.  If they are provided, using the standard name, they must match
+the definition specified here.
+
+       Filter Name     Description
+       
+       convolution     MxN convolution filter.  The values specified
+                       in SetPictureFilter are M, N and then M * N
+                       filter parameters.  M and N must be integers
+                       represented as fixed point numbers.
+       gaussian        Gaussian blur.  The value specified is a radius
+                       in pixels (which can be fractional).  A standard
+                       Gaussian 2D convolution filter will be applied.
+       binomial        Binomial blur. An approximation of a Gaussian
+                       blur using binomial coefficients
+
 12. Glyph Rendering
 
 Glyphs are small alpha masks which can be stored in the X server and
@@ -816,14 +816,15 @@
        src-x, src-y:   INT16
        dst:            PICTURE
        mask-format:    PICTFORMAT or None
-       traps:          LISTofTRAP
+       traps:          LISTofTRAPEZOID
 
-       This request rasterizes the list of trapezoids.  For each trap, the
-       area between the left and right edges is filled from the top to the
-       bottom.  src-x and src-y register the pattern to the floor of the
-       top x and y coordinate of the left edge of the first trapezoid, they
-       are adjusted for subsequent trapezoids so that the pattern remains
-       globally aligned within the destination.
+       This request rasterizes the list of trapezoids.
+       
+       For each trap, the area between the left and right edges is filled
+       from the top to the bottom.  src-x and src-y register the pattern to
+       the floor of the top x and y coordinate of the left edge of the
+       first trapezoid, they are adjusted for subsequent trapezoids so that
+       the pattern remains globally aligned within the destination.
 
        When mask-format is not None, trapezoids are rendered in the
        following way with the effective mask computed in mask-format:
@@ -1110,6 +1111,19 @@
        'cursors', showing each cursor in the element for the number of
        milliseconds indicated by the 'delay' member of that element.
 
+AddTraps
+       picture:        PICTURE
+       off-x, off-y:   INT16
+       trapezoids:     LISTofTRAP
+
+       Errors:         Match
+
+       Each trap is PictOpAdd'ed to 'picture'.  'off-x', 'off-y'
+       are added to each coordinate.
+
+       'picture' must be an alpha-only picture else a 'Match' error is
+       returned.
+       
 15. Extension Versioning
 
 The Render extension was developed in parallel with the implementation to
@@ -1158,3 +1172,5 @@
                QueryPictIndexValues
        0.8:
                CreateAnimCursor
+       0.9:
+               AddTrapezoids

Modified: trunk/render.h
===================================================================
--- trunk/render.h      2005-05-09 19:04:22 UTC (rev 46)
+++ trunk/render.h      2005-06-10 01:44:22 UTC (rev 47)
@@ -1,5 +1,5 @@
 /*
- * $Id: render.h,v 1.12 2003/04/21 17:19:22 keithp Exp $
+ * $Id: render.h,v 1.14 2004/07/29 07:58:03 keithp Exp $
  *
  * Copyright � 2000 SuSE, Inc.
  *
@@ -33,7 +33,7 @@
 
 #define RENDER_NAME    "RENDER"
 #define RENDER_MAJOR   0
-#define RENDER_MINOR   8
+#define RENDER_MINOR   9
 
 #define X_RenderQueryVersion               0
 #define X_RenderQueryPictFormats           1
@@ -68,8 +68,11 @@
 #define X_RenderSetPictureTransform        28
 #define X_RenderQueryFilters               29
 #define X_RenderSetPictureFilter           30
+/* 0.8 */
 #define X_RenderCreateAnimCursor           31
-#define RenderNumberRequests               (X_RenderCreateAnimCursor+1)
+/* 0.9 */
+#define X_RenderAddTraps                   32
+#define RenderNumberRequests               (X_RenderAddTraps+1)
 
 #define BadPictFormat                      0
 #define BadPicture                         1
@@ -150,11 +153,15 @@
 #define CPPolyMode                         (1 << 10)
 #define CPDither                           (1 << 11)
 #define CPComponentAlpha                   (1 << 12)
-#define CPLastBit                          11
+#define CPLastBit                          12
 
 /* Filters included in 0.6 */
 #define FilterNearest                      "nearest"
 #define FilterBilinear                     "bilinear"
+/* Other standard, but not required filters */
+#define FilterConvolution                  "convolution"
+#define FilterGaussian                     "gaussian"
+#define FilterBinomial                     "binomial"
 
 #define FilterFast                         "fast"
 #define FilterGood                         "good"

Modified: trunk/renderproto.h
===================================================================
--- trunk/renderproto.h 2005-05-09 19:04:22 UTC (rev 46)
+++ trunk/renderproto.h 2005-06-10 01:44:22 UTC (rev 47)
@@ -1,5 +1,5 @@
 /*
- * $Id: renderproto.h,v 1.14 2003/04/21 17:19:22 keithp Exp $
+ * $Id: renderproto.h,v 1.15 2004/07/29 07:58:03 keithp Exp $
  *
  * Copyright � 2000 SuSE, Inc.
  *
@@ -168,6 +168,18 @@
 
 #define sz_xGlyphElt   8
 
+typedef struct {
+    Fixed   l, r, y;
+} xSpanFix;
+
+#define sz_xSpanFix    12
+
+typedef struct {
+    xSpanFix   top, bot;
+} xTrap;
+
+#define sz_xTrap       24
+
 /* 
  * requests and replies
  */
@@ -568,6 +580,19 @@
 
 #define sz_xRenderCreateAnimCursorReq              8
 
+/* 0.9 and higher */
+
+typedef struct {
+    CARD8              reqType;
+    CARD8              renderReqType;
+    CARD16             length B16;
+    Picture            picture;
+    INT16              xOff B16;
+    INT16              yOff B16;
+} xRenderAddTrapsReq;
+
+#define sz_xRenderAddTrapsReq                      12
+    
 #undef Window
 #undef Drawable
 #undef Font


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to