resetSteps.add(new ResetStep(LoopController.Command.RESET_START, null)); if (diff < 0 || engineType.isFullPacketSeekAllowed()) { TreeSet<PacketPosition> seekPositions = getResetPacketsBeforeTick(wantedTick); resetSteps.add(new ResetStep(LoopController.Command.RESET_CLEAR, null)); while (seekPositions.size() > 0) { PacketPosition pp = seekPositions.pollFirst(); case STRINGTABLE: case FULL_PACKET: resetSteps.add(new ResetStep(LoopController.Command.CONTINUE, pp.getOffset())); resetSteps.add(new ResetStep(LoopController.Command.RESET_ACCUMULATE, null)); if (seekPositions.size() == 0) { resetSteps.add(new ResetStep(LoopController.Command.RESET_APPLY, null)); resetSteps.add(new ResetStep(LoopController.Command.CONTINUE, pp.getOffset())); resetSteps.add(new ResetStep(LoopController.Command.RESET_APPLY, null)); resetSteps.add(new ResetStep(LoopController.Command.RESET_FORWARD, null)); resetSteps.add(new ResetStep(LoopController.Command.RESET_COMPLETE, null)); loopController.controllerFunc = seekLoopControl;
resetSteps.add(new ResetStep(LoopController.Command.RESET_START, null)); if (diff < 0 || engineType.isFullPacketSeekAllowed()) { TreeSet<PacketPosition> seekPositions = getResetPacketsBeforeTick(wantedTick); resetSteps.add(new ResetStep(LoopController.Command.RESET_CLEAR, null)); while (seekPositions.size() > 0) { PacketPosition pp = seekPositions.pollFirst(); case STRINGTABLE: case FULL_PACKET: resetSteps.add(new ResetStep(LoopController.Command.CONTINUE, pp.getOffset())); resetSteps.add(new ResetStep(LoopController.Command.RESET_ACCUMULATE, null)); if (seekPositions.size() == 0) { resetSteps.add(new ResetStep(LoopController.Command.RESET_APPLY, null)); resetSteps.add(new ResetStep(LoopController.Command.CONTINUE, pp.getOffset())); resetSteps.add(new ResetStep(LoopController.Command.RESET_APPLY, null)); resetSteps.add(new ResetStep(LoopController.Command.RESET_FORWARD, null)); resetSteps.add(new ResetStep(LoopController.Command.RESET_COMPLETE, null)); loopController.controllerFunc = seekLoopControl;