|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectrobocode.control.RobocodeEngine
public class RobocodeEngine
The RobocodeEngine is the interface provided for external applications in order to let these applications run battles within the Robocode application, and to get the results from these battles.
This class in the main class of therobocode.control package, and the
reason for having this control package.
The RobocodeEngine is used by RoboRumble@Home, which is integrated in
Robocode, but also RoboLeague and RobocodeJGAP. In addition, the
RobocodeEngine is also used by the test units for testing the Robocode
application itself.
| Constructor Summary | |
|---|---|
RobocodeEngine()
Creates a new RobocodeEngine for controlling Robocode. |
|
RobocodeEngine(File robocodeHome)
Creates a new RobocodeEngine for controlling Robocode. |
|
RobocodeEngine(File robocodeHome,
RobocodeListener listener)
Deprecated. Since 1.6.2. Use RobocodeEngine.RobocodeEngine(File) and
addBattleListener() instead.
Creates a new RobocodeEngine for controlling Robocode. |
|
RobocodeEngine(IBattleListener listener)
|
|
RobocodeEngine(RobocodeListener listener)
Deprecated. Since 1.6.2. Use RobocodeEngine.RobocodeEngine() and
addBattleListener() instead.
Creates a new RobocodeEngine for controlling Robocode. The JAR file of
Robocode is used to determine the root directory of Robocode. |
|
| Method Summary | |
|---|---|
void |
abortCurrentBattle()
Aborts the current battle if it is running. |
void |
addBattleListener(IBattleListener listener)
Adds a battle listener that must receive events occurring in battles. |
void |
close()
Closes the RobocodeEngine and releases any allocated resources. |
protected void |
finalize()
|
static File |
getCurrentWorkingDir()
Returns the current working directory. |
RobotSpecification[] |
getLocalRepository()
Returns all robots available from the local robot repository of Robocode. |
RobotSpecification[] |
getLocalRepository(String selectedRobots)
Returns a selection of robots available from the local robot repository of Robocode. |
static File |
getRobotsDir()
Returns the directory containing the robots. |
String |
getVersion()
Returns the installed version of Robocode. |
static void |
printRunningThreads()
Print out all running threads to standard system out. |
void |
removeBattleListener(IBattleListener listener)
Removes a battle listener that has previously been added to this object. |
void |
runBattle(BattleSpecification battleSpecification)
Runs the specified battle. |
void |
runBattle(BattleSpecification battleSpecification,
boolean waitTillOver)
Runs the specified battle. |
void |
runBattle(BattleSpecification battleSpecification,
String initialPositions,
boolean waitTillOver)
Runs the specified battle. |
void |
setVisible(boolean visible)
Shows or hides the Robocode window. |
void |
waitTillBattleOver()
Will block caller until current battle is over |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public RobocodeEngine()
RobocodeEngine.RobocodeEngine(File),
RobocodeEngine.close()public RobocodeEngine(File robocodeHome)
robocodeHome - the root directory of Robocode, e.g. C:\Robocode.RobocodeEngine.RobocodeEngine(),
RobocodeEngine.close()
@Deprecated
public RobocodeEngine(File robocodeHome,
RobocodeListener listener)
RobocodeEngine.RobocodeEngine(File) and
addBattleListener() instead.
Creates a new RobocodeEngine for controlling Robocode.
robocodeHome - the root directory of Robocode, e.g. C:\Robocode.listener - the listener that must receive the callbacks from this
RobocodeEngine.RobocodeEngine.RobocodeEngine(),
RobocodeEngine.RobocodeEngine(File),
RobocodeEngine.close()@Deprecated public RobocodeEngine(RobocodeListener listener)
RobocodeEngine.RobocodeEngine() and
addBattleListener() instead.
Creates a new RobocodeEngine for controlling Robocode. The JAR file of
Robocode is used to determine the root directory of Robocode.
listener - the listener that must receive the callbacks from this
RobocodeEngine.RobocodeEngine.RobocodeEngine(),
RobocodeEngine.RobocodeEngine(File),
RobocodeEngine.close()public RobocodeEngine(IBattleListener listener)
| Method Detail |
|---|
protected void finalize()
throws Throwable
finalize in class ObjectThrowablepublic void addBattleListener(IBattleListener listener)
addBattleListener in interface IRobocodeEnginelistener - the battle listener that must retrieve the event from
the battles.RobocodeEngine.removeBattleListener(IBattleListener)public void removeBattleListener(IBattleListener listener)
removeBattleListener in interface IRobocodeEnginelistener - the battle listener that must be removed.RobocodeEngine.addBattleListener(IBattleListener)public void close()
close in interface IRobocodeEnginepublic String getVersion()
getVersion in interface IRobocodeEnginepublic static File getCurrentWorkingDir()
public static File getRobotsDir()
public void setVisible(boolean visible)
setVisible in interface IRobocodeEnginevisible - true if the Robocode window must be set visible;
false otherwise.public RobotSpecification[] getLocalRepository()
getLocalRepository in interface IRobocodeEngineRobotSpecification,
RobocodeEngine.getLocalRepository(String)public RobotSpecification[] getLocalRepository(String selectedRobots)
getLocalRepository in interface IRobocodeEngineselectedRobots - a comma or space separated list of robots to
return. The full class name must be used for
specifying the individual robot, e.g.
"sample.Corners, sample.Crazy"
selectedRobotList parameter.RobotSpecification,
RobocodeEngine.getLocalRepository()public void runBattle(BattleSpecification battleSpecification)
runBattle in interface IRobocodeEnginebattleSpecification - the specification of the battle to play including the
participation robots.RobocodeEngine.runBattle(BattleSpecification, boolean),
BattleSpecification,
RobocodeEngine.getLocalRepository()
public void runBattle(BattleSpecification battleSpecification,
boolean waitTillOver)
runBattle in interface IRobocodeEnginebattleSpecification - the specification of the battle to run including the
participating robots.waitTillOver - will block caller till end of battle if setRobocodeEngine.runBattle(BattleSpecification),
BattleSpecification,
RobocodeEngine.getLocalRepository()
public void runBattle(BattleSpecification battleSpecification,
String initialPositions,
boolean waitTillOver)
runBattle in interface IRobocodeEnginebattleSpecification - the specification of the battle to run including the
participating robots.initialPositions - a comma or space separated list like: x1,y1,heading1,
x2,y2,heading2, which are the coordinates and heading of robot #1 and #2.
So e.g. (0,0,180), (50,80,270) means that robot #1 has position (0,0) and
heading 180, and robot #2 has position (50,80) and heading 270.waitTillOver - will block caller till end of battle if setRobocodeEngine.runBattle(BattleSpecification),
BattleSpecification,
RobocodeEngine.getLocalRepository()public void waitTillBattleOver()
waitTillBattleOver in interface IRobocodeEngineRobocodeEngine.runBattle(BattleSpecification),
RobocodeEngine.runBattle(BattleSpecification, boolean)public void abortCurrentBattle()
abortCurrentBattle in interface IRobocodeEngineRobocodeEngine.runBattle(BattleSpecification)public static void printRunningThreads()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||