|
|||||||||
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 Object
Throwable
public void addBattleListener(IBattleListener listener)
addBattleListener
in interface IRobocodeEngine
listener
- the battle listener that must retrieve the event from
the battles.RobocodeEngine.removeBattleListener(IBattleListener)
public void removeBattleListener(IBattleListener listener)
removeBattleListener
in interface IRobocodeEngine
listener
- the battle listener that must be removed.RobocodeEngine.addBattleListener(IBattleListener)
public void close()
close
in interface IRobocodeEngine
public String getVersion()
getVersion
in interface IRobocodeEngine
public static File getCurrentWorkingDir()
public static File getRobotsDir()
public void setVisible(boolean visible)
setVisible
in interface IRobocodeEngine
visible
- true
if the Robocode window must be set visible;
false
otherwise.public RobotSpecification[] getLocalRepository()
getLocalRepository
in interface IRobocodeEngine
RobotSpecification
,
RobocodeEngine.getLocalRepository(String)
public RobotSpecification[] getLocalRepository(String selectedRobots)
getLocalRepository
in interface IRobocodeEngine
selectedRobots
- 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 IRobocodeEngine
battleSpecification
- 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 IRobocodeEngine
battleSpecification
- 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 IRobocodeEngine
battleSpecification
- 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 IRobocodeEngine
RobocodeEngine.runBattle(BattleSpecification)
,
RobocodeEngine.runBattle(BattleSpecification, boolean)
public void abortCurrentBattle()
abortCurrentBattle
in interface IRobocodeEngine
RobocodeEngine.runBattle(BattleSpecification)
public static void printRunningThreads()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |