public class OpModeManager
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
protected static class |
OpModeManager.OpModeState |
| Modifier and Type | Field and Description |
|---|---|
protected OpMode |
activeOpMode |
protected java.lang.String |
activeOpModeName |
protected boolean |
callToInitNeeded |
protected boolean |
callToStartNeeded |
static OpMode |
DEFAULT_OP_MODE |
static java.lang.String |
DEFAULT_OP_MODE_NAME |
protected EventLoopManager |
eventLoopManager |
protected boolean |
gamepadResetNeeded |
protected HardwareMap |
hardwareMap |
protected java.util.concurrent.atomic.AtomicReference<com.qualcomm.robotcore.eventloop.opmode.OpModeManager.OpModeStateTransition> |
nextOpModeState |
protected java.util.Map<java.lang.String,java.lang.Class<?>> |
opModeClasses |
protected java.util.Map<java.lang.String,OpMode> |
opModeObjects |
protected boolean |
opmodesAreRegistered |
protected OpModeManager.OpModeState |
opModeState |
protected boolean |
opModeSwapNeeded |
protected java.lang.String |
queuedOpModeName |
protected boolean |
telemetryClearNeeded |
| Constructor and Description |
|---|
OpModeManager(HardwareMap hardwareMap) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
areOpModesRegistered() |
protected void |
callActiveOpModeInit() |
protected void |
callActiveOpModeInitLoop() |
protected void |
callActiveOpModeLoop() |
protected void |
callActiveOpModeStart() |
protected void |
callActiveOpModeStop() |
OpMode |
getActiveOpMode() |
java.lang.String |
getActiveOpModeName() |
HardwareMap |
getHardwareMap() |
java.util.Set<java.lang.String> |
getOpModes() |
void |
init(EventLoopManager eventLoopManager) |
void |
initActiveOpMode(java.lang.String name) |
void |
logOpModes() |
void |
refreshUserTelemetry(Telemetry telemetry,
double sInterval)
Update's the user portion of the driver station screen with the contents of the telemetry object
here provided if a sufficiently long duration has passed since the last update.
|
void |
register(java.lang.String name,
java.lang.Class opMode)
Registers an OpMode class with the name by which it should be known in the driver station.
|
void |
register(java.lang.String name,
OpMode opMode)
Registers an OpMode instance with the name by which it should be known in the driver station.
|
void |
registerOpModes(OpModeRegister register) |
void |
requestOpModeStop(OpMode opModeToStopIfActive)
If the indicated OpMode is the currently active OpMode, cause that OpMode to stop as if
the stop button had been pressed on the driver station
|
void |
runActiveOpMode(Gamepad[] gamepads) |
void |
setHardwareMap(HardwareMap hardwareMap) |
void |
startActiveOpMode() |
void |
stopActiveOpMode() |
public static final java.lang.String DEFAULT_OP_MODE_NAME
public static final OpMode DEFAULT_OP_MODE
protected java.util.Map<java.lang.String,java.lang.Class<?>> opModeClasses
protected java.util.Map<java.lang.String,OpMode> opModeObjects
protected volatile boolean opmodesAreRegistered
protected java.lang.String activeOpModeName
protected OpMode activeOpMode
protected java.lang.String queuedOpModeName
protected HardwareMap hardwareMap
protected EventLoopManager eventLoopManager
protected OpModeManager.OpModeState opModeState
protected boolean opModeSwapNeeded
protected boolean callToInitNeeded
protected boolean callToStartNeeded
protected boolean gamepadResetNeeded
protected boolean telemetryClearNeeded
protected java.util.concurrent.atomic.AtomicReference<com.qualcomm.robotcore.eventloop.opmode.OpModeManager.OpModeStateTransition> nextOpModeState
public OpModeManager(HardwareMap hardwareMap)
public void init(EventLoopManager eventLoopManager)
public void registerOpModes(OpModeRegister register)
public boolean areOpModesRegistered()
public void setHardwareMap(HardwareMap hardwareMap)
public HardwareMap getHardwareMap()
public java.util.Set<java.lang.String> getOpModes()
public java.lang.String getActiveOpModeName()
public OpMode getActiveOpMode()
public void initActiveOpMode(java.lang.String name)
public void startActiveOpMode()
public void stopActiveOpMode()
public void runActiveOpMode(Gamepad[] gamepads)
public void logOpModes()
public void register(java.lang.String name,
java.lang.Class opMode)
name - the name of the OpMode in the driver stationopMode - the OpMode class to instantiate when that OpMode is selectedpublic void register(java.lang.String name,
OpMode opMode)
name - the name of the OpMode in the driver stationopMode - the OpMode instance to use when that OpMode is selectedprotected void callActiveOpModeStop()
protected void callActiveOpModeInit()
protected void callActiveOpModeStart()
protected void callActiveOpModeInitLoop()
protected void callActiveOpModeLoop()
public void refreshUserTelemetry(Telemetry telemetry, double sInterval)
telemetry - the telemetry object to sendsInterval - the required minimum interval. NaN indicates that a system default interval should be used.
A value of zero will cause immediate transmission.EventLoop.TELEMETRY_DEFAULT_INTERVALpublic void requestOpModeStop(OpMode opModeToStopIfActive)
opModeToStopIfActive - the OpMode to stop if it is the currently active OpModeOpMode.requestOpModeStop().