Mercurial > hg > Database > Alice
view src/alice/test/topology/fishmodel/alpha/AutoIncrement.java @ 132:1044a79ce4ef working
delete cs from OutputCodeSegment
author | sugi |
---|---|
date | Tue, 14 Aug 2012 19:43:10 +0900 |
parents | 669dba7cbb69 |
children | 26b4b18c51fa |
line wrap: on
line source
package alice.test.topology.fishmodel.alpha; import alice.codesegment.CodeSegment; import alice.datasegment.CommandType; import alice.datasegment.Receiver; public class AutoIncrement extends CodeSegment { public Receiver position = ids.create(CommandType.PEEK); String key; float max = 3.3f; float min = -1.3f; public AutoIncrement(String key){ this.key = key; this.position.setKey("local", key); } @Override public void run() { FishPoint fp = this.position.asClass(FishPoint.class); if (fp.getX()+0.01>max){ fp.setXY(min, fp.getY()); } else if (fp.getX()+0.01< min){ fp.setXY(max, fp.getY()); } else { fp.setXY(fp.getX()+0.01f, fp.getY()); } ods.update("local", key, fp); synchronized(this){ try { // TODO // Waiting should be done in Alice kernel // ids.create(CommandType.WAIT); wait(10); } catch (InterruptedException e) { e.printStackTrace(); } } new AutoIncrement(this.key); } }