gzz-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gzz-commits] fenfire docs/design_SpanImages.rst org/fenfire/...


From: Tuomas J. Lukka
Subject: [Gzz-commits] fenfire docs/design_SpanImages.rst org/fenfire/...
Date: Thu, 12 Jun 2003 07:07:45 -0400

CVSROOT:        /cvsroot/fenfire
Module name:    fenfire
Branch:         
Changes by:     Tuomas J. Lukka <address@hidden>        03/06/12 07:07:45

Modified files:
        docs           : design_SpanImages.rst 
        org/fenfire/spanimages/gl: MuxSpanImageFactory.java 
Added files:
        org/fenfire/spanimages/gl: PageScrollBlockImager.java 
                                   ScrollBlockImager.java 
                                   SingleImage.java 

Log message:
        More page loading work

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/docs/design_SpanImages.rst.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/spanimages/gl/PageScrollBlockImager.java?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/spanimages/gl/ScrollBlockImager.java?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/spanimages/gl/SingleImage.java?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/spanimages/gl/MuxSpanImageFactory.java.diff?tr1=1.3&tr2=1.4&r1=text&r2=text

Patches:
Index: fenfire/docs/design_SpanImages.rst
diff -u fenfire/docs/design_SpanImages.rst:1.2 
fenfire/docs/design_SpanImages.rst:1.3
--- fenfire/docs/design_SpanImages.rst:1.2      Wed Jun 11 12:55:08 2003
+++ fenfire/docs/design_SpanImages.rst  Thu Jun 12 07:07:45 2003
@@ -47,13 +47,14 @@
 ======================
 
 The interfaces ``SpanImageFactory`` and ``SpanImageVob`` in the package
-``org.fenfire.spanimage`` are the 
+``org.fenfire.spanimages`` are the 
 
 ..  UML:: fenfirespansint1
 
-    jlinkpackage org.fenfire.spanimage
+    jlinkpackage org.fenfire.spanimages
 
     class SpanImageFactory "abstract"
+       jlink
        methods
            static getDefaultInstance()
            getSpanImageVob(ImageSpan s)
@@ -61,6 +62,7 @@
     dep "create" SpanImageFactory SpanImageVob
 
     class SpanImageVob "interface"
+       jlink
        inherit org.nongnu.libvob.Vob
 
     class org.nongnu.libvob.Vob "interface"
@@ -82,8 +84,8 @@
 Implementation
 ==============
 
-The implementations are in ``org.fenfire.spanimage.gl`` (once an AWT 
implementation
-is made, it will be in the package ``org.fenfire.spanimage.fuzzybear``).
+The implementations are in ``org.fenfire.spanimages.gl`` (once an AWT 
implementation
+is made, it will be in the package ``org.fenfire.spanimages.fuzzybear``).
 
 ImageSpan vs PageImageSpan
 --------------------------
@@ -93,11 +95,11 @@
 
 ..  UML:: fenfirespansint2
 
-    jlinkpackage org.fenfire.spanimage
+    jlinkpackage org.fenfire.spanimages
     class SpanImageFactory "abstract"
        jlink
 
-    jlinkpackage org.fenfire.spanimage.gl
+    jlinkpackage org.fenfire.spanimages.gl
     class MuxSpanImageFactory 
        jlink
        realize SpanImageFactory
@@ -120,7 +122,7 @@
 
 ..  UML:: fenfirespans_sbimg
 
-    jlinkpackage org.fenfire.spanimage.gl
+    jlinkpackage org.fenfire.spanimages.gl
 
     class ScrollBlockImager "abstract"
        jlink
@@ -150,7 +152,9 @@
 
     class SingleImage
        assoc compos multi(1) - multi(1) org.nongnu.libvob.gl.MipzipLoader
+       assoc compos multi(1) - multi(1) org.nongnu.libvob.gl.GL.TexAccum
 
+    class org.nongnu.libvob.gl.GL.TexAccum
 
     jlinkpackage org.nongnu.libvob.gl
 
@@ -160,14 +164,18 @@
            float origWidth, origHeight
 
     ---
-    pq.w = PageScrollBlockImager.e;
-    iq.w = ImageScrollBlockImager.e;
+    pq.n = PageScrollBlockImager.s;
+    iq.n = ImageScrollBlockImager.s;
 
-    vertically(80, xx, PageScrollBlockImager, ImageScrollBlockImager);
+    horizontally(40, xx, PageScrollBlockImager, ImageScrollBlockImager);
 
-    horizontally(150, yy, ScrollBlockImager, xx, SingleImage);
+    vertically(50, yy, ScrollBlockImager, xx, SingleImage);
 
-    vertically(80, zz, SingleImage, org.nongnu.libvob.gl.MipzipLoader);
+    horizontally(60, ww, org.nongnu.libvob.gl.MipzipLoader,
+                   org.nongnu.libvob.gl.GL.TexAccum
+    );
+    vertically(80, zz, SingleImage, ww);
+    
 
 An important architectural feature is that the classes are not static: this 
allows
 us to, e.g, plug in filters for the images of PageImageSpan.
@@ -184,7 +192,7 @@
 
 ..  UML:: fenfirespans_paper
 
-    jlinkpackage org.fenfire.spanimage.gl
+    jlinkpackage org.fenfire.spanimages.gl
 
     class PaperMaker "interface"
        jlink
@@ -203,6 +211,37 @@
     horizontally(100, xx, PaperMaker, org.nongnu.libvob.gl.Paper);
     vertically(70, yy, PaperMaker, SingleImage);
 
+Statistics accumulation and memory pool handling
+------------------------------------------------
+
+Now we come to the *raison d'etre* of this architecture:
+centralized handling of the feedback from vobscene rendering.
+The TexAccum class in Libvob is able to accumulate the approximate
+number of pixels rendered at each mipmap level of each texture.
+
+..  UML:: fenfirespans_texaccum
+
+    jlinkpackage org.fenfire.spanimages.gl
+
+    class org.nongnu.libvob.memory.MemoryPartitioner
+
+    class PoolManager
+       jlink
+       assoc compos - org.nongnu.libvob.memory.MemoryPartitioner
+       methods
+           SpanImageVob makeVob(SingleImage i, Paper p, float[] texgen, float 
w, float h)
+
+    qual q
+       fields
+           SingleImage i
+
+    ---
+    q.n = PoolManager.s;
+
+    org.nongnu.libvob.memory.MemoryPartitioner.s + (0, -60) = PoolManager.n;
+
+    
+
 The final piece: the default implementation of ``SpanImageFactory``
 -------------------------------------------------------------------
 
@@ -214,11 +253,11 @@
 
 ..  UML:: fenfirespans_imgfactoryimpl
 
-    jlinkpackage org.fenfire.spanimage
+    jlinkpackage org.fenfire.spanimages
 
     class SpanImageFactory "abstract"
 
-    jlinkpackage org.fenfire.spanimage.gl
+    jlinkpackage org.fenfire.spanimages.gl
 
     class DefaultSpanImageFactory
        realize SpanImageFactory
Index: fenfire/org/fenfire/spanimages/gl/MuxSpanImageFactory.java
diff -u fenfire/org/fenfire/spanimages/gl/MuxSpanImageFactory.java:1.3 
fenfire/org/fenfire/spanimages/gl/MuxSpanImageFactory.java:1.4
--- fenfire/org/fenfire/spanimages/gl/MuxSpanImageFactory.java:1.3      Wed Jun 
11 13:00:24 2003
+++ fenfire/org/fenfire/spanimages/gl/MuxSpanImageFactory.java  Thu Jun 12 
07:07:45 2003
@@ -24,7 +24,8 @@
  * Written by Tuomas J. Lukka
  */
 
-package org.fenfire.spanimages;
+package org.fenfire.spanimages.gl;
+import org.fenfire.spanimages.*;
 import org.nongnu.alph.*;
 
 /** A spanimagefactory that redirects pageimage and image spans




reply via email to

[Prev in Thread] Current Thread [Next in Thread]