add MarinaPath.java
authoradam <adam@megacz.com>
Sat, 13 Dec 2008 04:27:38 +0000 (05:27 +0100)
committeradam <adam@megacz.com>
Sat, 13 Dec 2008 04:27:38 +0000 (05:27 +0100)
src/edu/berkeley/fleet/marina/MarinaFleet.java
src/edu/berkeley/fleet/marina/MarinaPath.java [new file with mode: 0644]

index 62806f8..192e9b6 100644 (file)
@@ -6,8 +6,8 @@ import java.util.*;
 
 public class MarinaFleet extends FleetTwoFleet {
 
-    private MarinaShip fakeShip = new MarinaShip(this);
-    private MarinaDock onlyDock = new MarinaDock(fakeShip, true);
+    MarinaShip fakeShip = new MarinaShip(this);
+    MarinaDock onlyDock = new MarinaDock(fakeShip, true);
 
     public MarinaFleet() {
         // use "internal encoding"
@@ -33,7 +33,8 @@ public class MarinaFleet extends FleetTwoFleet {
     }
 
     public BitVector getDestAddr(Path path) {
-        return new BitVector(0);
+        if (path==null) return new BitVector(0);
+        return ((MarinaPath)path).bv;
     }
 
     public Dock getOnlyInputDock() {
diff --git a/src/edu/berkeley/fleet/marina/MarinaPath.java b/src/edu/berkeley/fleet/marina/MarinaPath.java
new file mode 100644 (file)
index 0000000..0c9ba58
--- /dev/null
@@ -0,0 +1,30 @@
+package edu.berkeley.fleet.marina;
+import edu.berkeley.fleet.api.*;
+import edu.berkeley.fleet.two.*;
+
+public class MarinaPath extends FleetTwoPath {
+
+    private final MarinaFleet marina;
+    final BitVector bv;
+
+    public MarinaPath(MarinaFleet marina, BitVector bv) {
+        this.marina = marina;
+        this.bv = bv;
+        bv.setImmutable();
+    }
+
+    public String toString() { return "MarinaPath("+bv+")"; }
+
+    public BitVector getSignal() {
+        throw new RuntimeException("not implemented");
+    }
+    
+    public Dock getSource() { return marina.onlyDock; }
+    public Destination getDestination() {
+        throw new RuntimeException("not implemented");
+    }
+    public int getBufferingAmount() { return 1; }
+    public int getLatencyMetric() { return 0; }
+
+}
+