X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Ffleet%2Finterpreter%2FPacket.java;h=d1c292f742186b528ca0728520c6aff1ecafeece;hb=8d5bc648861a9e120e5dc2f43dd156ae2d4e01ca;hp=d26b894b408627ac78d6e6d2da70ae5b65a9293b;hpb=3bdab7841af0bc2ae201b25a5e3a3770c616085c;p=fleet.git diff --git a/src/edu/berkeley/fleet/interpreter/Packet.java b/src/edu/berkeley/fleet/interpreter/Packet.java index d26b894..d1c292f 100644 --- a/src/edu/berkeley/fleet/interpreter/Packet.java +++ b/src/edu/berkeley/fleet/interpreter/Packet.java @@ -1,5 +1,6 @@ package edu.berkeley.fleet.interpreter; import edu.berkeley.fleet.api.*; +import edu.berkeley.sbp.util.ANSI; class Packet { @@ -39,4 +40,27 @@ class Packet { return isToken; } + public String toString() { + Packet p = this; + BitVector data = p.getValue(); + Dock source = p.getSource(); + Destination dest = p.getDestination(); + if (dest.getDock().getInstructionDestination()==dest) { + if (p.isToken()) { + return (ANSI.yellow(ANSI.bold(" torpedo: ")) + (source + " -> " + ANSI.yellow(ANSI.bold(dest+"")))); + } else { + Instruction d = source.getShip().getFleet().decodeInstruction(data, source); + return (ANSI.red("dispatch: " + d)); + } + } else { + if (p.isToken()) { + return (ANSI.blue(ANSI.bold(" token: ")) + (source + " -> " + ANSI.blue(ANSI.bold(dest+"")))); + } else { + return (ANSI.cyan(" data: "+data) + + (source==null ? "" : + (" : " + source))+(" -> "+ANSI.cyan(""+dest))); + } + } + } + }