wpilib18/java/current/javadoc/edu/wpi/first/wpilibj/command/Command.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_144) on Sat Oct 28 05:22:54 EDT 2017 -->
<title>Command (Documentation - Release API)</title>
<meta name="date" content="2017-10-28">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Command (Documentation - Release API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":6,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li><a href="../../../../../edu/wpi/first/wpilibj/command/CommandGroup.html" title="class in edu.wpi.first.wpilibj.command"><span class="typeNameLink">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?edu/wpi/first/wpilibj/command/Command.html" target="_top">Frames</a></li>
<li><a href="Command.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary: </li>
<li>Nested | </li>
<li>Field | </li>
<li><a href="#constructor.summary">Constr</a> | </li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail: </li>
<li>Field | </li>
<li><a href="#constructor.detail">Constr</a> | </li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">edu.wpi.first.wpilibj.command</div>
<h2 title="Class Command" class="title">Class Command</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>edu.wpi.first.wpilibj.command.Command</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../edu/wpi/first/wpilibj/NamedSendable.html" title="interface in edu.wpi.first.wpilibj">NamedSendable</a>, <a href="../../../../../edu/wpi/first/wpilibj/Sendable.html" title="interface in edu.wpi.first.wpilibj">Sendable</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../edu/wpi/first/wpilibj/command/CommandGroup.html" title="class in edu.wpi.first.wpilibj.command">CommandGroup</a>, <a href="../../../../../edu/wpi/first/wpilibj/command/ConditionalCommand.html" title="class in edu.wpi.first.wpilibj.command">ConditionalCommand</a>, <a href="../../../../../edu/wpi/first/wpilibj/command/InstantCommand.html" title="class in edu.wpi.first.wpilibj.command">InstantCommand</a>, <a href="../../../../../edu/wpi/first/wpilibj/command/PIDCommand.html" title="class in edu.wpi.first.wpilibj.command">PIDCommand</a>, <a href="../../../../../edu/wpi/first/wpilibj/command/TimedCommand.html" title="class in edu.wpi.first.wpilibj.command">TimedCommand</a>, <a href="../../../../../edu/wpi/first/wpilibj/command/WaitForChildren.html" title="class in edu.wpi.first.wpilibj.command">WaitForChildren</a>, <a href="../../../../../edu/wpi/first/wpilibj/command/WaitUntilCommand.html" title="class in edu.wpi.first.wpilibj.command">WaitUntilCommand</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">Command</span>
extends java.lang.Object
implements <a href="../../../../../edu/wpi/first/wpilibj/NamedSendable.html" title="interface in edu.wpi.first.wpilibj">NamedSendable</a></pre>
<div class="block">The Command class is at the very core of the entire command framework. Every command can be
started with a call to <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#start--"><code>start()</code></a>. Once a command is started it will call
<a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#initialize--"><code>initialize()</code></a>, and then will repeatedly call <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#execute--"><code>execute()</code></a> until the <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#isFinished--"><code>isFinished()</code></a> returns true. Once it does, <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#end--"><code>end()</code></a> will be called.
<p>However, if at any point while it is running <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#cancel--"><code>cancel()</code></a> is called,
then the command will be stopped and <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#interrupted--"><code>interrupted()</code></a> will be called.
<p>If a command uses a <a href="../../../../../edu/wpi/first/wpilibj/command/Subsystem.html" title="class in edu.wpi.first.wpilibj.command"><code>Subsystem</code></a>, then it should specify that it does so by calling the
<a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#requires-edu.wpi.first.wpilibj.command.Subsystem-"><code>requires(...)</code></a> method in its constructor. Note that a Command
may have multiple requirements, and <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#requires-edu.wpi.first.wpilibj.command.Subsystem-"><code>requires(...)</code></a> should be
called for each one.
<p>If a command is running and a new command with shared requirements is started, then one of
two things will happen. If the active command is interruptible, then <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#cancel--"><code>cancel()</code></a> will be called and the command will be removed to make way for the new one. If the
active command is not interruptible, the other one will not even be started, and the active one
will continue functioning.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../edu/wpi/first/wpilibj/command/Subsystem.html" title="class in edu.wpi.first.wpilibj.command"><code>Subsystem</code></a>,
<a href="../../../../../edu/wpi/first/wpilibj/command/CommandGroup.html" title="class in edu.wpi.first.wpilibj.command"><code>CommandGroup</code></a>,
<a href="../../../../../edu/wpi/first/wpilibj/command/IllegalUseOfCommandException.html" title="class in edu.wpi.first.wpilibj.command"><code>IllegalUseOfCommandException</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd"> </span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#Command--">Command</a></span>()</code>
<div class="block">Creates a new command.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#Command-double-">Command</a></span>(double timeout)</code>
<div class="block">Creates a new command with the given timeout and a default name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#Command-java.lang.String-">Command</a></span>(java.lang.String name)</code>
<div class="block">Creates a new command with the given name.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#Command-java.lang.String-double-">Command</a></span>(java.lang.String name,
double timeout)</code>
<div class="block">Creates a new command with the given name and timeout.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#cancel--">cancel</a></span>()</code>
<div class="block">This will cancel the current command.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#clearRequirements--">clearRequirements</a></span>()</code>
<div class="block">Clears list of subsystem requirements.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#doesRequire-edu.wpi.first.wpilibj.command.Subsystem-">doesRequire</a></span>(<a href="../../../../../edu/wpi/first/wpilibj/command/Subsystem.html" title="class in edu.wpi.first.wpilibj.command">Subsystem</a> system)</code>
<div class="block">Checks if the command requires the given <a href="../../../../../edu/wpi/first/wpilibj/command/Subsystem.html" title="class in edu.wpi.first.wpilibj.command"><code>Subsystem</code></a>.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#end--">end</a></span>()</code>
<div class="block">Called when the command ended peacefully.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#execute--">execute</a></span>()</code>
<div class="block">The execute method is called repeatedly until this Command either finishes or is canceled.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../../edu/wpi/first/wpilibj/command/CommandGroup.html" title="class in edu.wpi.first.wpilibj.command">CommandGroup</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#getGroup--">getGroup</a></span>()</code>
<div class="block">Returns the <a href="../../../../../edu/wpi/first/wpilibj/command/CommandGroup.html" title="class in edu.wpi.first.wpilibj.command"><code>CommandGroup</code></a> that this command is a part of.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#getName--">getName</a></span>()</code>
<div class="block">Returns the name of this command.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#getSmartDashboardType--">getSmartDashboardType</a></span>()</code>
<div class="block">The string representation of the named data type that will be used by the smart dashboard for
this <a href="../../../../../edu/wpi/first/wpilibj/Sendable.html" title="interface in edu.wpi.first.wpilibj"><code>Sendable</code></a>.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#initialize--">initialize</a></span>()</code>
<div class="block">The initialize method is called the first time this Command is run after being started.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#initTable-edu.wpi.first.networktables.NetworkTable-">initTable</a></span>(<a href="../../../../../edu/wpi/first/networktables/NetworkTable.html" title="class in edu.wpi.first.networktables">NetworkTable</a> table)</code>
<div class="block">Initializes a table for this <a href="../../../../../edu/wpi/first/wpilibj/Sendable.html" title="interface in edu.wpi.first.wpilibj"><code>Sendable</code></a> object.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#interrupted--">interrupted</a></span>()</code>
<div class="block">Called when the command ends because somebody called <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#cancel--"><code>cancel()</code></a> or
another command shared the same requirements as this one, and booted it out.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#isCanceled--">isCanceled</a></span>()</code>
<div class="block">Returns whether or not this has been canceled.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>protected abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#isFinished--">isFinished</a></span>()</code>
<div class="block">Returns whether this command is finished.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#isInterruptible--">isInterruptible</a></span>()</code>
<div class="block">Returns whether or not this command can be interrupted.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#isRunning--">isRunning</a></span>()</code>
<div class="block">Returns whether or not the command is running.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#isTimedOut--">isTimedOut</a></span>()</code>
<div class="block">Returns whether or not the <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#timeSinceInitialized--"><code>timeSinceInitialized()</code></a> method
returns a number which is greater than or equal to the timeout for the command.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#requires-edu.wpi.first.wpilibj.command.Subsystem-">requires</a></span>(<a href="../../../../../edu/wpi/first/wpilibj/command/Subsystem.html" title="class in edu.wpi.first.wpilibj.command">Subsystem</a> subsystem)</code>
<div class="block">This method specifies that the given <a href="../../../../../edu/wpi/first/wpilibj/command/Subsystem.html" title="class in edu.wpi.first.wpilibj.command"><code>Subsystem</code></a> is used by this command.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#setInterruptible-boolean-">setInterruptible</a></span>(boolean interruptible)</code>
<div class="block">Sets whether or not this command can be interrupted.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#setRunWhenDisabled-boolean-">setRunWhenDisabled</a></span>(boolean run)</code>
<div class="block">Sets whether or not this <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html" title="class in edu.wpi.first.wpilibj.command"><code>Command</code></a> should run when the robot is disabled.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#setTimeout-double-">setTimeout</a></span>(double seconds)</code>
<div class="block">Sets the timeout of this command.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#start--">start</a></span>()</code>
<div class="block">Starts up the command.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#timeSinceInitialized--">timeSinceInitialized</a></span>()</code>
<div class="block">Returns the time since this command was initialized (in seconds).</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#toString--">toString</a></span>()</code>
<div class="block">The string representation for a <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html" title="class in edu.wpi.first.wpilibj.command"><code>Command</code></a> is by default its name.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#willRunWhenDisabled--">willRunWhenDisabled</a></span>()</code>
<div class="block">Returns whether or not this <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html" title="class in edu.wpi.first.wpilibj.command"><code>Command</code></a> will run when the robot is disabled, or if it will
cancel itself.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="Command--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>Command</h4>
<pre>public Command()</pre>
<div class="block">Creates a new command. The name of this command will be set to its class name.</div>
</li>
</ul>
<a name="Command-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>Command</h4>
<pre>public Command(java.lang.String name)</pre>
<div class="block">Creates a new command with the given name.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name for this command</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if name is null</dd>
</dl>
</li>
</ul>
<a name="Command-double-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>Command</h4>
<pre>public Command(double timeout)</pre>
<div class="block">Creates a new command with the given timeout and a default name. The default name is the name
of the class.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>timeout</code> - the time (in seconds) before this command "times out"</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if given a negative timeout</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#isTimedOut--"><code>isTimedOut()</code></a></dd>
</dl>
</li>
</ul>
<a name="Command-java.lang.String-double-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Command</h4>
<pre>public Command(java.lang.String name,
double timeout)</pre>
<div class="block">Creates a new command with the given name and timeout.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the command</dd>
<dd><code>timeout</code> - the time (in seconds) before this command "times out"</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if given a negative timeout or name was null.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#isTimedOut--"><code>isTimedOut()</code></a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getName</h4>
<pre>public java.lang.String getName()</pre>
<div class="block">Returns the name of this command. If no name was specified in the constructor, then the default
is the name of the class.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../edu/wpi/first/wpilibj/NamedSendable.html#getName--">getName</a></code> in interface <code><a href="../../../../../edu/wpi/first/wpilibj/NamedSendable.html" title="interface in edu.wpi.first.wpilibj">NamedSendable</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the name of this command</dd>
</dl>
</li>
</ul>
<a name="setTimeout-double-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTimeout</h4>
<pre>protected final void setTimeout(double seconds)</pre>
<div class="block">Sets the timeout of this command.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>seconds</code> - the timeout (in seconds)</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if seconds is negative</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#isTimedOut--"><code>isTimedOut()</code></a></dd>
</dl>
</li>
</ul>
<a name="timeSinceInitialized--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>timeSinceInitialized</h4>
<pre>public final double timeSinceInitialized()</pre>
<div class="block">Returns the time since this command was initialized (in seconds). This function will work even
if there is no specified timeout.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the time since this command was initialized (in seconds).</dd>
</dl>
</li>
</ul>
<a name="requires-edu.wpi.first.wpilibj.command.Subsystem-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>requires</h4>
<pre>protected void requires(<a href="../../../../../edu/wpi/first/wpilibj/command/Subsystem.html" title="class in edu.wpi.first.wpilibj.command">Subsystem</a> subsystem)</pre>
<div class="block">This method specifies that the given <a href="../../../../../edu/wpi/first/wpilibj/command/Subsystem.html" title="class in edu.wpi.first.wpilibj.command"><code>Subsystem</code></a> is used by this command. This method is
crucial to the functioning of the Command System in general.
<p>Note that the recommended way to call this method is in the constructor.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>subsystem</code> - the <a href="../../../../../edu/wpi/first/wpilibj/command/Subsystem.html" title="class in edu.wpi.first.wpilibj.command"><code>Subsystem</code></a> required</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if subsystem is null</dd>
<dd><code><a href="../../../../../edu/wpi/first/wpilibj/command/IllegalUseOfCommandException.html" title="class in edu.wpi.first.wpilibj.command">IllegalUseOfCommandException</a></code> - if this command has started before or if it has been given
to a <a href="../../../../../edu/wpi/first/wpilibj/command/CommandGroup.html" title="class in edu.wpi.first.wpilibj.command"><code>CommandGroup</code></a></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../edu/wpi/first/wpilibj/command/Subsystem.html" title="class in edu.wpi.first.wpilibj.command"><code>Subsystem</code></a></dd>
</dl>
</li>
</ul>
<a name="initialize--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialize</h4>
<pre>protected void initialize()</pre>
<div class="block">The initialize method is called the first time this Command is run after being started.</div>
</li>
</ul>
<a name="execute--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>execute</h4>
<pre>protected void execute()</pre>
<div class="block">The execute method is called repeatedly until this Command either finishes or is canceled.</div>
</li>
</ul>
<a name="isFinished--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isFinished</h4>
<pre>protected abstract boolean isFinished()</pre>
<div class="block">Returns whether this command is finished. If it is, then the command will be removed and <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#end--"><code>end()</code></a> will be called.
<p>It may be useful for a team to reference the <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#isTimedOut--"><code>isTimedOut()</code></a>
method for time-sensitive commands.
<p>Returning false will result in the command never ending automatically. It may still be
cancelled manually or interrupted by another command. Returning true will result in the
command executing once and finishing immediately. We recommend using <a href="../../../../../edu/wpi/first/wpilibj/command/InstantCommand.html" title="class in edu.wpi.first.wpilibj.command"><code>InstantCommand</code></a>
for this.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether this command is finished.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#isTimedOut--"><code>isTimedOut()</code></a></dd>
</dl>
</li>
</ul>
<a name="end--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>end</h4>
<pre>protected void end()</pre>
<div class="block">Called when the command ended peacefully. This is where you may want to wrap up loose ends,
like shutting off a motor that was being used in the command.</div>
</li>
</ul>
<a name="interrupted--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>interrupted</h4>
<pre>protected void interrupted()</pre>
<div class="block">Called when the command ends because somebody called <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#cancel--"><code>cancel()</code></a> or
another command shared the same requirements as this one, and booted it out.
<p>This is where you may want to wrap up loose ends, like shutting off a motor that was being
used in the command.
<p>Generally, it is useful to simply call the <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#end--"><code>end()</code></a> method within this
method, as done here.</div>
</li>
</ul>
<a name="isTimedOut--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isTimedOut</h4>
<pre>protected boolean isTimedOut()</pre>
<div class="block">Returns whether or not the <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#timeSinceInitialized--"><code>timeSinceInitialized()</code></a> method
returns a number which is greater than or equal to the timeout for the command. If there is no
timeout, this will always return false.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether the time has expired</dd>
</dl>
</li>
</ul>
<a name="clearRequirements--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearRequirements</h4>
<pre>protected void clearRequirements()</pre>
<div class="block">Clears list of subsystem requirements. This is only used by
<a href="../../../../../edu/wpi/first/wpilibj/command/ConditionalCommand.html" title="class in edu.wpi.first.wpilibj.command"><code>ConditionalCommand</code></a> so cancelling the chosen command works properly
in <a href="../../../../../edu/wpi/first/wpilibj/command/CommandGroup.html" title="class in edu.wpi.first.wpilibj.command"><code>CommandGroup</code></a>.</div>
</li>
</ul>
<a name="start--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>start</h4>
<pre>public void start()</pre>
<div class="block">Starts up the command. Gets the command ready to start. <p> Note that the command will
eventually start, however it will not necessarily do so immediately, and may in fact be
canceled before initialize is even called. </p></div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../edu/wpi/first/wpilibj/command/IllegalUseOfCommandException.html" title="class in edu.wpi.first.wpilibj.command">IllegalUseOfCommandException</a></code> - if the command is a part of a CommandGroup</dd>
</dl>
</li>
</ul>
<a name="isRunning--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRunning</h4>
<pre>public boolean isRunning()</pre>
<div class="block">Returns whether or not the command is running. This may return true even if the command has
just been canceled, as it may not have yet called <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html#interrupted--"><code>interrupted()</code></a>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether or not the command is running</dd>
</dl>
</li>
</ul>
<a name="cancel--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cancel</h4>
<pre>public void cancel()</pre>
<div class="block">This will cancel the current command. <p> This will cancel the current command eventually. It
can be called multiple times. And it can be called when the command is not running. If the
command is running though, then the command will be marked as canceled and eventually removed.
</p> <p> A command can not be canceled if it is a part of a command group, you must cancel the
command group instead. </p></div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../edu/wpi/first/wpilibj/command/IllegalUseOfCommandException.html" title="class in edu.wpi.first.wpilibj.command">IllegalUseOfCommandException</a></code> - if this command is a part of a command group</dd>
</dl>
</li>
</ul>
<a name="isCanceled--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCanceled</h4>
<pre>public boolean isCanceled()</pre>
<div class="block">Returns whether or not this has been canceled.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether or not this has been canceled</dd>
</dl>
</li>
</ul>
<a name="isInterruptible--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isInterruptible</h4>
<pre>public boolean isInterruptible()</pre>
<div class="block">Returns whether or not this command can be interrupted.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether or not this command can be interrupted</dd>
</dl>
</li>
</ul>
<a name="setInterruptible-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setInterruptible</h4>
<pre>protected void setInterruptible(boolean interruptible)</pre>
<div class="block">Sets whether or not this command can be interrupted.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>interruptible</code> - whether or not this command can be interrupted</dd>
</dl>
</li>
</ul>
<a name="doesRequire-edu.wpi.first.wpilibj.command.Subsystem-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doesRequire</h4>
<pre>public boolean doesRequire(<a href="../../../../../edu/wpi/first/wpilibj/command/Subsystem.html" title="class in edu.wpi.first.wpilibj.command">Subsystem</a> system)</pre>
<div class="block">Checks if the command requires the given <a href="../../../../../edu/wpi/first/wpilibj/command/Subsystem.html" title="class in edu.wpi.first.wpilibj.command"><code>Subsystem</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>system</code> - the system</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether or not the subsystem is required, or false if given null</dd>
</dl>
</li>
</ul>
<a name="getGroup--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGroup</h4>
<pre>public <a href="../../../../../edu/wpi/first/wpilibj/command/CommandGroup.html" title="class in edu.wpi.first.wpilibj.command">CommandGroup</a> getGroup()</pre>
<div class="block">Returns the <a href="../../../../../edu/wpi/first/wpilibj/command/CommandGroup.html" title="class in edu.wpi.first.wpilibj.command"><code>CommandGroup</code></a> that this command is a part of. Will return null if this
<a href="../../../../../edu/wpi/first/wpilibj/command/Command.html" title="class in edu.wpi.first.wpilibj.command"><code>Command</code></a> is not in a group.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <a href="../../../../../edu/wpi/first/wpilibj/command/CommandGroup.html" title="class in edu.wpi.first.wpilibj.command"><code>CommandGroup</code></a> that this command is a part of (or null if not in group)</dd>
</dl>
</li>
</ul>
<a name="setRunWhenDisabled-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRunWhenDisabled</h4>
<pre>public void setRunWhenDisabled(boolean run)</pre>
<div class="block">Sets whether or not this <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html" title="class in edu.wpi.first.wpilibj.command"><code>Command</code></a> should run when the robot is disabled.
<p>By default a command will not run when the robot is disabled, and will in fact be canceled.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>run</code> - whether or not this command should run when the robot is disabled</dd>
</dl>
</li>
</ul>
<a name="willRunWhenDisabled--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>willRunWhenDisabled</h4>
<pre>public boolean willRunWhenDisabled()</pre>
<div class="block">Returns whether or not this <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html" title="class in edu.wpi.first.wpilibj.command"><code>Command</code></a> will run when the robot is disabled, or if it will
cancel itself.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>True if this command will run when the robot is disabled.</dd>
</dl>
</li>
</ul>
<a name="toString--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre>public java.lang.String toString()</pre>
<div class="block">The string representation for a <a href="../../../../../edu/wpi/first/wpilibj/command/Command.html" title="class in edu.wpi.first.wpilibj.command"><code>Command</code></a> is by default its name.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>toString</code> in class <code>java.lang.Object</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the string representation of this object</dd>
</dl>
</li>
</ul>
<a name="getSmartDashboardType--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSmartDashboardType</h4>
<pre>public java.lang.String getSmartDashboardType()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../../../edu/wpi/first/wpilibj/Sendable.html#getSmartDashboardType--">Sendable</a></code></span></div>
<div class="block">The string representation of the named data type that will be used by the smart dashboard for
this <a href="../../../../../edu/wpi/first/wpilibj/Sendable.html" title="interface in edu.wpi.first.wpilibj"><code>Sendable</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../edu/wpi/first/wpilibj/Sendable.html#getSmartDashboardType--">getSmartDashboardType</a></code> in interface <code><a href="../../../../../edu/wpi/first/wpilibj/Sendable.html" title="interface in edu.wpi.first.wpilibj">Sendable</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The type of this <a href="../../../../../edu/wpi/first/wpilibj/Sendable.html" title="interface in edu.wpi.first.wpilibj"><code>Sendable</code></a>.</dd>
</dl>
</li>
</ul>
<a name="initTable-edu.wpi.first.networktables.NetworkTable-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>initTable</h4>
<pre>public void initTable(<a href="../../../../../edu/wpi/first/networktables/NetworkTable.html" title="class in edu.wpi.first.networktables">NetworkTable</a> table)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../../../edu/wpi/first/wpilibj/Sendable.html#initTable-edu.wpi.first.networktables.NetworkTable-">Sendable</a></code></span></div>
<div class="block">Initializes a table for this <a href="../../../../../edu/wpi/first/wpilibj/Sendable.html" title="interface in edu.wpi.first.wpilibj"><code>Sendable</code></a> object.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../edu/wpi/first/wpilibj/Sendable.html#initTable-edu.wpi.first.networktables.NetworkTable-">initTable</a></code> in interface <code><a href="../../../../../edu/wpi/first/wpilibj/Sendable.html" title="interface in edu.wpi.first.wpilibj">Sendable</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>table</code> - The table to put the values in.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li><a href="../../../../../edu/wpi/first/wpilibj/command/CommandGroup.html" title="class in edu.wpi.first.wpilibj.command"><span class="typeNameLink">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?edu/wpi/first/wpilibj/command/Command.html" target="_top">Frames</a></li>
<li><a href="Command.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary: </li>
<li>Nested | </li>
<li>Field | </li>
<li><a href="#constructor.summary">Constr</a> | </li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail: </li>
<li>Field | </li>
<li><a href="#constructor.detail">Constr</a> | </li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>