better colorization of interpreter logs
[fleet.git] / src / edu / berkeley / fleet / interpreter / Packet.java
index 3042201..d26b894 100644 (file)
@@ -1,29 +1,42 @@
 package edu.berkeley.fleet.interpreter;
-import java.io.*;
-import java.util.*;
-import java.util.concurrent.*;
-import java.lang.reflect.*;
-import edu.berkeley.fleet.*;
-import edu.berkeley.sbp.util.ANSI;
-import edu.berkeley.fleet.doc.*;
 import edu.berkeley.fleet.api.*;
-import edu.berkeley.fleet.ies44.*;
 
 class Packet {
 
-    Interpreter interpreter;
-    long        value;
-    InterpreterDestination destination;
+    private final InterpreterPath path;
+    private final BitVector value;
+    private final boolean isToken;
 
-    public Packet(Interpreter interpreter, InterpreterPump source, long value, InterpreterDestination destination) {
-        Log.data(value+"", source, (Destination)destination);
-        this.interpreter = interpreter;
+    public Packet(InterpreterPath path, BitVector value, boolean isToken) {
         this.value = value;
-        this.destination = destination;
+        this.path = path;
+        this.isToken = isToken;
+        this.value.setImmutable();
     }
 
     public void send() {
-        destination.addDataFromFabric(this);
+        Log.packet(this);
+        ((InterpreterDestination)path.getDestination()).addDataFromFabric(this);
     }
 
-}
\ No newline at end of file
+    public Destination getDestination() {
+        return path.getDestination();
+    }
+
+    public Dock getSource() {
+        return path.getSource();
+    }
+
+    public BitVector getSignal() {
+        return path.getSignal();
+    }
+
+    public BitVector getValue() {
+        return value;
+    }
+
+    public boolean isToken() {
+        return isToken;
+    }
+
+}