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;
+ }
+
+}