[PATCH 02/43] core: reintroduce bot-scan-converter functions

"Enrico Weigelt, metux IT consult" <[email protected]>
Newsgroups gmane.comp.lib.cairo
Message-ID <[email protected]>
These functions have been accidentially removed by commit:
494cfd7eb9d994a5e2024e299986e66a3ef9a562.

They're still needed by the DRM backend.
(will be used by subsequent patches)

Signed-off-by: Enrico Weigelt, metux IT consult <[email protected]>
---
 src/cairo-botor-scan-converter.c | 36 ++++++++++++++++++++++++++++++++++++
 src/cairo-spans-private.h        |  4 ++++
 2 files changed, 40 insertions(+)

diff --git a/src/cairo-botor-scan-converter.c b/src/cairo-botor-scan-converter.c
index 515305b..e23aefe 100644
--- a/src/cairo-botor-scan-converter.c
+++ b/src/cairo-botor-scan-converter.c
@@ -2128,6 +2128,42 @@ botor_add_edge (cairo_botor_scan_converter_t *self,
     return CAIRO_STATUS_SUCCESS;
 }
 
+static cairo_status_t
+_cairo_botor_scan_converter_add_edge (void		*converter,
+				      const cairo_point_t *p1,
+				      const cairo_point_t *p2,
+				      int top, int bottom,
+				      int dir)
+{
+    cairo_botor_scan_converter_t *self = converter;
+    cairo_edge_t edge;
+
+    edge.line.p1 = *p1;
+    edge.line.p2 = *p2;
+    edge.top = top;
+    edge.bottom = bottom;
+    edge.dir = dir;
+
+    return botor_add_edge (self, &edge);
+}
+
+cairo_status_t
+_cairo_botor_scan_converter_add_polygon (cairo_botor_scan_converter_t *converter,
+					 const cairo_polygon_t *polygon)
+{
+    cairo_botor_scan_converter_t *self = converter;
+    cairo_status_t status;
+    int i;
+
+    for (i = 0; i < polygon->num_edges; i++) {
+	status = botor_add_edge (self, &polygon->edges[i]);
+	if (unlikely (status))
+	    return status;
+    }
+
+    return CAIRO_STATUS_SUCCESS;
+}
+
 static void
 _cairo_botor_scan_converter_destroy (void *converter)
 {
diff --git a/src/cairo-spans-private.h b/src/cairo-spans-private.h
index b158f4d..653183f 100644
--- a/src/cairo-spans-private.h
+++ b/src/cairo-spans-private.h
@@ -168,6 +168,10 @@ _cairo_botor_scan_converter_init (cairo_botor_scan_converter_t *self,
 				  const cairo_box_t *extents,
 				  cairo_fill_rule_t fill_rule);
 
+cairo_private cairo_status_t
+_cairo_botor_scan_converter_add_polygon (cairo_botor_scan_converter_t *converter,
+					const cairo_polygon_t *polygon);
+
 /* cairo-spans.c: */
 
 cairo_private cairo_scan_converter_t *
-- 
2.6.4.442.g545299f

-- 
cairo mailing list
[email protected]
http://lists.cairographics.org/mailman/listinfo/cairo
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.