diff options
Diffstat (limited to 'libjava/gnu/java/awt/java2d')
-rw-r--r-- | libjava/gnu/java/awt/java2d/AbstractGraphics2D.h | 14 | ||||
-rw-r--r-- | libjava/gnu/java/awt/java2d/ActiveEdges.h | 52 | ||||
-rw-r--r-- | libjava/gnu/java/awt/java2d/PolyEdge.h | 26 | ||||
-rw-r--r-- | libjava/gnu/java/awt/java2d/Scanline.h | 42 | ||||
-rw-r--r-- | libjava/gnu/java/awt/java2d/ScanlineConverter.h | 80 |
5 files changed, 200 insertions, 14 deletions
diff --git a/libjava/gnu/java/awt/java2d/AbstractGraphics2D.h b/libjava/gnu/java/awt/java2d/AbstractGraphics2D.h index b8933b3..48d474b 100644 --- a/libjava/gnu/java/awt/java2d/AbstractGraphics2D.h +++ b/libjava/gnu/java/awt/java2d/AbstractGraphics2D.h @@ -20,6 +20,7 @@ extern "Java" namespace java2d { class AbstractGraphics2D; + class ScanlineConverter; class ShapeCache; } } @@ -29,6 +30,7 @@ extern "Java" { namespace awt { + class BasicStroke; class Color; class Composite; class Font; @@ -50,7 +52,6 @@ extern "Java" namespace geom { class AffineTransform; - class Rectangle2D; } namespace image { @@ -175,11 +176,9 @@ public: // actually protected virtual void rawCopyArea(jint, jint, jint, jint, jint, jint); private: void copyAreaImpl(jint, jint, jint, jint, jint, jint); - void fillShapeImpl(::java::util::ArrayList *, ::java::awt::geom::Rectangle2D *, ::java::awt::geom::Rectangle2D *, ::java::awt::geom::Rectangle2D *); public: // actually protected - virtual void fillScanline(::java::awt::PaintContext *, jint, jint, jint); + virtual void fillScanline(jint, jint, jint); private: - void fillShapeAntialias(::java::util::ArrayList *, ::java::awt::geom::Rectangle2D *, ::java::awt::geom::Rectangle2D *, ::java::awt::geom::Rectangle2D *); void fillScanlineAA(JArray< jint > *, jint, jint, jint, ::java::awt::PaintContext *, jint); public: // actually protected virtual void init(); @@ -189,14 +188,17 @@ private: void updateOptimization(); static ::java::awt::Rectangle * computeIntersection(jint, jint, jint, jint, ::java::awt::Rectangle *); void updateClip(::java::awt::geom::AffineTransform *); - ::java::util::ArrayList * getSegments(::java::awt::Shape *, ::java::awt::geom::AffineTransform *, ::java::awt::geom::Rectangle2D *, jboolean); ::gnu::java::awt::java2d::ShapeCache * getShapeCache(); + ::gnu::java::awt::java2d::ScanlineConverter * getScanlineConverter(); + static ::java::awt::Font * FONT; static const jint AA_SAMPLING = 8; static ::java::lang::ThreadLocal * shapeCache; + static ::java::lang::ThreadLocal * scanlineConverters; public: // actually protected ::java::awt::geom::AffineTransform * __attribute__((aligned(__alignof__( ::java::awt::Graphics2D)))) transform__; private: ::java::awt::Paint * paint; + ::java::awt::PaintContext * paintContext; ::java::awt::Color * background; ::java::awt::Font * font; ::java::awt::Composite * composite; @@ -207,6 +209,8 @@ private: JArray< jint > * alpha; JArray< ::java::util::ArrayList * > * edgeTable; jboolean isOptimized; + static ::java::awt::BasicStroke * STANDARD_STROKE; + static ::java::util::HashMap * STANDARD_HINTS; public: static ::java::lang::Class class$; }; diff --git a/libjava/gnu/java/awt/java2d/ActiveEdges.h b/libjava/gnu/java/awt/java2d/ActiveEdges.h new file mode 100644 index 0000000..9310460 --- /dev/null +++ b/libjava/gnu/java/awt/java2d/ActiveEdges.h @@ -0,0 +1,52 @@ + +// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- + +#ifndef __gnu_java_awt_java2d_ActiveEdges__ +#define __gnu_java_awt_java2d_ActiveEdges__ + +#pragma interface + +#include <java/lang/Object.h> +#include <gcj/array.h> + +extern "Java" +{ + namespace gnu + { + namespace java + { + namespace awt + { + namespace java2d + { + class ActiveEdges; + class PolyEdge; + } + } + } + } +} + +class gnu::java::awt::java2d::ActiveEdges : public ::java::lang::Object +{ + +public: // actually package-private + ActiveEdges(); + void clear(); + void add(::gnu::java::awt::java2d::PolyEdge *); + void intersectSortAndPack(jint, jint); + jint getNumActiveEdges(); + ::gnu::java::awt::java2d::PolyEdge * getActiveEdge(jint); + void remove(jint); +public: + ::java::lang::String * toString(); +private: + JArray< ::gnu::java::awt::java2d::PolyEdge * > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) activeEdges; + jint numActiveEdges; +public: // actually package-private + static jboolean $assertionsDisabled; +public: + static ::java::lang::Class class$; +}; + +#endif // __gnu_java_awt_java2d_ActiveEdges__ diff --git a/libjava/gnu/java/awt/java2d/PolyEdge.h b/libjava/gnu/java/awt/java2d/PolyEdge.h index 6698599..e51a868 100644 --- a/libjava/gnu/java/awt/java2d/PolyEdge.h +++ b/libjava/gnu/java/awt/java2d/PolyEdge.h @@ -28,18 +28,26 @@ class gnu::java::awt::java2d::PolyEdge : public ::java::lang::Object { public: // actually package-private - PolyEdge(jdouble, jdouble, jdouble, jdouble, jboolean); + PolyEdge(); + PolyEdge(jint, jint, jint, jint, jint, jboolean); + void init(jint, jint, jint, jint, jint, jboolean); public: - virtual jint compareTo(::java::lang::Object *); - virtual ::java::lang::String * toString(); - jdouble __attribute__((aligned(__alignof__( ::java::lang::Object)))) x0; - jdouble y0; - jdouble x1; - jdouble y1; + jint compareTo(::java::lang::Object *); public: // actually package-private - jdouble slope; - jdouble xIntersection; + void intersect(jint, jint); +public: + ::java::lang::String * toString(); + jint __attribute__((aligned(__alignof__( ::java::lang::Object)))) x0; + jint y0; + jint x1; + jint y1; +private: + jint slope; +public: // actually package-private + jint xIntersection; jboolean isClip; + ::gnu::java::awt::java2d::PolyEdge * poolNext; + ::gnu::java::awt::java2d::PolyEdge * scanlineNext; public: static ::java::lang::Class class$; }; diff --git a/libjava/gnu/java/awt/java2d/Scanline.h b/libjava/gnu/java/awt/java2d/Scanline.h new file mode 100644 index 0000000..ce2be0e --- /dev/null +++ b/libjava/gnu/java/awt/java2d/Scanline.h @@ -0,0 +1,42 @@ + +// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- + +#ifndef __gnu_java_awt_java2d_Scanline__ +#define __gnu_java_awt_java2d_Scanline__ + +#pragma interface + +#include <java/lang/Object.h> +extern "Java" +{ + namespace gnu + { + namespace java + { + namespace awt + { + namespace java2d + { + class PolyEdge; + class Scanline; + } + } + } + } +} + +class gnu::java::awt::java2d::Scanline : public ::java::lang::Object +{ + +public: // actually package-private + virtual void clear(); + Scanline(); + virtual void addEdge(::gnu::java::awt::java2d::PolyEdge *); + virtual ::gnu::java::awt::java2d::PolyEdge * getEdges(); +private: + ::gnu::java::awt::java2d::PolyEdge * __attribute__((aligned(__alignof__( ::java::lang::Object)))) edges; +public: + static ::java::lang::Class class$; +}; + +#endif // __gnu_java_awt_java2d_Scanline__ diff --git a/libjava/gnu/java/awt/java2d/ScanlineConverter.h b/libjava/gnu/java/awt/java2d/ScanlineConverter.h new file mode 100644 index 0000000..febf495 --- /dev/null +++ b/libjava/gnu/java/awt/java2d/ScanlineConverter.h @@ -0,0 +1,80 @@ + +// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*- + +#ifndef __gnu_java_awt_java2d_ScanlineConverter__ +#define __gnu_java_awt_java2d_ScanlineConverter__ + +#pragma interface + +#include <java/lang/Object.h> +#include <gcj/array.h> + +extern "Java" +{ + namespace gnu + { + namespace java + { + namespace awt + { + namespace java2d + { + class AbstractGraphics2D; + class ActiveEdges; + class PolyEdge; + class Scanline; + class ScanlineConverter; + } + } + } + } + namespace java + { + namespace awt + { + class Shape; + namespace geom + { + class AffineTransform; + class PathIterator; + } + } + } +} + +class gnu::java::awt::java2d::ScanlineConverter : public ::java::lang::Object +{ + +public: // actually package-private + ScanlineConverter(); + void renderShape(::gnu::java::awt::java2d::AbstractGraphics2D *, ::java::awt::Shape *, ::java::awt::Shape *, ::java::awt::geom::AffineTransform *, jint); +private: + void clear(); + void doScanline(::gnu::java::awt::java2d::AbstractGraphics2D *, jint, jboolean, jboolean); + void setResolution(jint); + void setUpperBounds(jint); + void addShape(::java::awt::geom::PathIterator *, jboolean); + void addEdge(::gnu::java::awt::java2d::PolyEdge *); + jint fit(jint); + jint scanlineIndex(jint); + void edgePoolAdd(jint, jint, jint, jint, jboolean); + static jint FIXED_DIGITS; + static jint ONE; + jint __attribute__((aligned(__alignof__( ::java::lang::Object)))) numScanlines; + JArray< ::gnu::java::awt::java2d::Scanline * > * scanlines; + jint upperBounds; + jint resolution; + jint halfStep; + JArray< jfloat > * coords; + ::gnu::java::awt::java2d::ActiveEdges * activeEdges; + ::gnu::java::awt::java2d::PolyEdge * edgePool; + ::gnu::java::awt::java2d::PolyEdge * edgePoolLast; + jint minY; + jint maxY; +public: // actually package-private + static jboolean $assertionsDisabled; +public: + static ::java::lang::Class class$; +}; + +#endif // __gnu_java_awt_java2d_ScanlineConverter__ |