[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] gzz ./TODO gfx/demo/mipzip.py gzz/client/Abstra...
From: |
Tuomas J. Lukka |
Subject: |
[Gzz-commits] gzz ./TODO gfx/demo/mipzip.py gzz/client/Abstra... |
Date: |
Sat, 18 Jan 2003 08:30:59 -0500 |
CVSROOT: /cvsroot/gzz
Module name: gzz
Changes by: Tuomas J. Lukka <address@hidden> 03/01/18 08:30:58
Modified files:
. : TODO
gfx/demo : mipzip.py
gzz/client : AbstractUpdateManager.java
gzz/gfx/gl : MipzipLoader.java
gzz/mem : MemoryPartitioner.java
Log message:
More information... now sticky, need to rework event input with using X
ConnectionNumber
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/TODO.diff?tr1=1.521&tr2=1.522&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gfx/demo/mipzip.py.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/client/AbstractUpdateManager.java.diff?tr1=1.29&tr2=1.30&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/gfx/gl/MipzipLoader.java.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/gzz/mem/MemoryPartitioner.java.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
Patches:
Index: gzz/TODO
diff -u gzz/TODO:1.521 gzz/TODO:1.522
--- gzz/TODO:1.521 Fri Jan 17 09:37:17 2003
+++ gzz/TODO Sat Jan 18 08:30:58 2003
@@ -252,7 +252,8 @@
colors (not "not" tests but test that the
color really is right)
tjl:
- - connect mipzip to memoryconsumer
+ - X11 ConnectionNumber and select and pipe for lower latency
+ and interruptibility of event wait.
- mipzip test program
- xupdf: distorted multi-page PDF view with xu links
- use mipzips
Index: gzz/gfx/demo/mipzip.py
diff -u gzz/gfx/demo/mipzip.py:1.3 gzz/gfx/demo/mipzip.py:1.4
--- gzz/gfx/demo/mipzip.py:1.3 Fri Jan 17 14:44:34 2003
+++ gzz/gfx/demo/mipzip.py Sat Jan 18 08:30:58 2003
@@ -18,7 +18,7 @@
self.mem = MemoryPartitioner(4 * 1024 * 1024)
self.files = []
self.tex = []
- for f in glob.glob("../mstmpimg/*.mipzip")[0:10]:
+ for f in glob.glob("../mstmpimg/*.mipzip")[0:5]:
ml = MipzipLoader(File(f))
# ml.loadToBaseLevelSynch(0)
mc = MipzipMemoryConsumer(self.mem, ml)
@@ -44,7 +44,7 @@
TexCoord %(x1)s %(y0)s
Vertex 1 0
End
- """ % { "x0" : 0, "y0" : 0, "x1": .5, "y1":.5 })
+ """ % { "x0" : .25, "y0" : .25, "x1": .5, "y1":.5 })
def scene(self, vs):
vs.map.put(background((.3,.7,.8)))
AbstractUpdateManager.setNoAnimation()
Index: gzz/gzz/client/AbstractUpdateManager.java
diff -u gzz/gzz/client/AbstractUpdateManager.java:1.29
gzz/gzz/client/AbstractUpdateManager.java:1.30
--- gzz/gzz/client/AbstractUpdateManager.java:1.29 Tue Jan 14 03:58:17 2003
+++ gzz/gzz/client/AbstractUpdateManager.java Sat Jan 18 08:30:58 2003
@@ -41,7 +41,7 @@
*/
public abstract class AbstractUpdateManager implements Runnable {
-public static final String rcsid = "$Id: AbstractUpdateManager.java,v 1.29
2003/01/14 08:58:17 tjl Exp $";
+public static final String rcsid = "$Id: AbstractUpdateManager.java,v 1.30
2003/01/18 13:30:58 tjl Exp $";
public static boolean dbg = false;
private static void pa(String s) { System.err.println(s); }
@@ -338,14 +338,15 @@
* @return true if something was done.
*/
protected boolean doIdle() {
+ Runnable r;
synchronized(queue) {
- Runnable r = (Runnable)queue.getAndRemoveLowest();
- if(r != null) {
- if(dbg) pa("Updmanager idle: run "+r);
- r.run();
- if(dbg) pa("Updmanager idle: finished run "+r);
- return true;
- }
+ r = (Runnable)queue.getAndRemoveLowest();
+ }
+ if(r != null) {
+ if(dbg) pa("Updmanager idle: run "+r);
+ r.run();
+ if(dbg) pa("Updmanager idle: finished run "+r);
+ return true;
}
return false;
}
@@ -392,6 +393,7 @@
System.gc();
// Wait for next event
+ if(dbg) pa("Updmanager: WAIT FOR EVENT!!!");
handleEvents(true);
}
// Thread.yield(); // Again, try to let the evena thread have
control.
Index: gzz/gzz/gfx/gl/MipzipLoader.java
diff -u gzz/gzz/gfx/gl/MipzipLoader.java:1.8
gzz/gzz/gfx/gl/MipzipLoader.java:1.9
--- gzz/gzz/gfx/gl/MipzipLoader.java:1.8 Fri Jan 17 14:44:34 2003
+++ gzz/gzz/gfx/gl/MipzipLoader.java Sat Jan 18 08:30:58 2003
@@ -201,10 +201,12 @@
Background bg, float priority) {
if(dbg) pa("MipzipLoader "+this+" goal "+level+
" now at "+currentBaseLevel);
- this.goalBaseLevel = level;
- this.bg = bg;
- this.priority = priority;
- bg.addTask(r_runBg, priority);
+ if(level != goalBaseLevel) {
+ this.goalBaseLevel = level;
+ this.bg = bg;
+ this.priority = priority;
+ bg.addTask(r_runBg, priority);
+ }
}
private Runnable r_runBg = new Runnable() {
@@ -229,7 +231,8 @@
try {
levels[i].loadData();
AbstractUpdateManager.doWhenIdle(
- levels[i], priority);
+ levels[i], priority - .1f * i);
+ AbstractUpdateManager.chg();
bg.addTask(r_runBg, priority);
} catch(IOException e) {
pa("Exception while loading mipzip data "+e);
@@ -246,10 +249,14 @@
// If yes, discard and reschedule.
// Then, set base level and return.
synchronized private void runGL() {
- if(dbg) pa("MipzipLoader "+this+" runGL!!");
+ if(dbg) pa("MipzipLoader "+this+" runGL!! "+
+ goalBaseLevel);
for(int i=0; i<goalBaseLevel && i < levels.length-1;
i++) {
if(levels[i].state != STATE_NONE) {
+ if(dbg) pa("MipzipLoader "+this+" discard: "+
+ i+" "+levels[i].state+" "+
+ currentBaseLevel);
if(currentBaseLevel <= i)
setBaseLevel(i+1);
levels[i].discard();
@@ -258,13 +265,21 @@
return;
}
}
+ if(dbg) pa("MipzipLoader "+this+" no discards");
// Find first texture that has not been teximaged.
- for(int i=levels.length-1; i >= goalBaseLevel && i >= 0;
+ int i = levels.length-1;
+ for(;i >= goalBaseLevel && i >= 0;
i--) {
- if(levels[i].state != STATE_INTEXTURE) {
- setBaseLevel(i+1);
- }
+ if(levels[i].state != STATE_INTEXTURE)
+ break;
+ }
+
+ if(dbg) pa("MipzipLoader "+this+" firstNotIn!! "+ i);
+ if(currentBaseLevel != i+1) {
+ setBaseLevel(i+1);
+ AbstractUpdateManager.chg();
+ return;
}
}
@@ -380,10 +395,20 @@
}
bitsPerTexel = GL.bitsPerTexel(texFormat);
if(bitsPerTexel < 0) {
- if(dbg) pa("Warning: memory consumption for "+texFormat+" not
known, assuming 32bpt");
+ if(dbg) pa("Warning: memory consumption for "+
+ texFormat+" not known, assuming 32bpt");
bitsPerTexel = 32;
}
currentBaseLevel = levels.length;
+ }
+
+ public String toString() {
+ StringBuffer b = new StringBuffer();
+ b.append(super.toString());
+ b.append(" ");
+ for(int i=0; i<levels.length; i++)
+ b.append(levels[i].state);
+ return b.toString();
}
}
Index: gzz/gzz/mem/MemoryPartitioner.java
diff -u gzz/gzz/mem/MemoryPartitioner.java:1.9
gzz/gzz/mem/MemoryPartitioner.java:1.10
--- gzz/gzz/mem/MemoryPartitioner.java:1.9 Fri Jan 17 10:06:37 2003
+++ gzz/gzz/mem/MemoryPartitioner.java Sat Jan 18 08:30:58 2003
@@ -170,7 +170,7 @@
try {
if(dbg) pa("Going to rerate");
rerate();
- AbstractUpdateManager.chg();
+ // AbstractUpdateManager.chg();
if(dbg) pa("rerated, sleeping");
Thread.sleep(50);
} catch(Exception e) {
- [Gzz-commits] gzz ./TODO gfx/demo/mipzip.py gzz/client/Abstra...,
Tuomas J. Lukka <=