diff options
-rw-r--r-- | tools/debug_pools.patch | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/tools/debug_pools.patch b/tools/debug_pools.patch new file mode 100644 index 0000000..fffb0fc --- /dev/null +++ b/tools/debug_pools.patch @@ -0,0 +1,104 @@ +diff --git a/core/src/ch/asynk/tankontank/engine/Move.java b/core/src/ch/asynk/tankontank/engine/Move.java +index 06035c3..1bb55b1 100644 +--- a/core/src/ch/asynk/tankontank/engine/Move.java ++++ b/core/src/ch/asynk/tankontank/engine/Move.java +@@ -15,12 +15,30 @@ public class Move extends Path implements Iterable<Vector3> + EXIT; + } + ++ static int count = 0; ++ + private static final Pool<Move> movePool = new Pool<Move>() + { + @Override + protected Move newObject() { + return new Move(); + } ++ ++ @Override ++ public Move obtain() ++ { ++ count += 1; ++ System.err.println(" MovePool " + count + "/" + getFree()); ++ return super.obtain(); ++ } ++ ++ @Override ++ public void free(Move cmd) ++ { ++ count -= 1; ++ super.free(cmd); ++ System.err.println(" MovePool " + count + "/" + getFree()); ++ } + }; + + public static Move get(Pawn pawn, Tile from, Tile to, Orientation orientation, Path path) +diff --git a/core/src/ch/asynk/tankontank/game/Command.java b/core/src/ch/asynk/tankontank/game/Command.java +index 0d39e6c..db3c910 100644 +--- a/core/src/ch/asynk/tankontank/game/Command.java ++++ b/core/src/ch/asynk/tankontank/game/Command.java +@@ -19,12 +19,30 @@ public class Command extends Order + END_OF_TURN; + } + ++ static int count = 0; ++ + private static final Pool<Command> commandPool = new Pool<Command>() + { + @Override + protected Command newObject() { + return new Command(); + } ++ ++ @Override ++ public Command obtain() ++ { ++ count += 1; ++ System.err.println(" CommandPool " + count + "/" + getFree()); ++ return super.obtain(); ++ } ++ ++ @Override ++ public void free(Command cmd) ++ { ++ count -= 1; ++ super.free(cmd); ++ System.err.println(" CommandPool " + count + "/" + getFree()); ++ } + }; + + public static void clearPool() +diff --git a/core/src/ch/asynk/tankontank/game/Engagement.java b/core/src/ch/asynk/tankontank/game/Engagement.java +index 8f01008..d06ac6d 100644 +--- a/core/src/ch/asynk/tankontank/game/Engagement.java ++++ b/core/src/ch/asynk/tankontank/game/Engagement.java +@@ -8,11 +8,29 @@ import com.badlogic.gdx.utils.Disposable; + + public class Engagement implements Disposable, Pool.Poolable + { ++ static int count = 0; ++ + private static final Pool<Engagement> engagementPool = new Pool<Engagement>() { + @Override + protected Engagement newObject() { + return new Engagement(); + } ++ ++ @Override ++ public Engagement obtain() ++ { ++ count += 1; ++ System.err.println(" EngagementPool " + count + "/" + getFree()); ++ return super.obtain(); ++ } ++ ++ @Override ++ public void free(Engagement cmd) ++ { ++ count -= 1; ++ super.free(cmd); ++ System.err.println(" EngagementPool " + count + "/" + getFree()); ++ } + }; + + public static Engagement get(Unit attacker, Unit defender) |