wh1ter0se/PowerUp-2018

View on GitHub
wpilib18/java/current/javadoc/edu/wpi/first/wpilibj/AnalogInput.html

Summary

Maintainability
Test Coverage
<!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:52 EDT 2017 -->
<title>AnalogInput (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="AnalogInput (Documentation - Release API)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":9,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":9,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance 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><a href="../../../../edu/wpi/first/wpilibj/AnalogGyro.html" title="class in edu.wpi.first.wpilibj"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../edu/wpi/first/wpilibj/AnalogOutput.html" title="class in edu.wpi.first.wpilibj"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?edu/wpi/first/wpilibj/AnalogInput.html" target="_top">Frames</a></li>
<li><a href="AnalogInput.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;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:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</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</div>
<h2 title="Class AnalogInput" class="title">Class AnalogInput</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="../../../../edu/wpi/first/wpilibj/SensorBase.html" title="class in edu.wpi.first.wpilibj">edu.wpi.first.wpilibj.SensorBase</a></li>
<li>
<ul class="inheritance">
<li>edu.wpi.first.wpilibj.AnalogInput</li>
</ul>
</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/livewindow/LiveWindowSendable.html" title="interface in edu.wpi.first.wpilibj.livewindow">LiveWindowSendable</a>, <a href="../../../../edu/wpi/first/wpilibj/PIDSource.html" title="interface in edu.wpi.first.wpilibj">PIDSource</a>, <a href="../../../../edu/wpi/first/wpilibj/Sendable.html" title="interface in edu.wpi.first.wpilibj">Sendable</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">AnalogInput</span>
extends <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html" title="class in edu.wpi.first.wpilibj">SensorBase</a>
implements <a href="../../../../edu/wpi/first/wpilibj/PIDSource.html" title="interface in edu.wpi.first.wpilibj">PIDSource</a>, <a href="../../../../edu/wpi/first/wpilibj/livewindow/LiveWindowSendable.html" title="interface in edu.wpi.first.wpilibj.livewindow">LiveWindowSendable</a></pre>
<div class="block">Analog channel class.

 <p>Each analog channel is read from hardware as a 12-bit number representing 0V to 5V.

 <p>Connected to each analog channel is an averaging and oversampling engine. This engine
 accumulates the specified ( by setAverageBits() and setOversampleBits() ) number of samples
 before returning a new value. This is not a sliding window average. The only difference between
 the oversampled samples and the averaged samples is that the oversampled samples are simply
 accumulated effectively increasing the resolution, while the averaged samples are divided by the
 number of samples to retain the resolution, but get more stable values.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../edu/wpi/first/wpilibj/PIDSourceType.html" title="enum in edu.wpi.first.wpilibj">PIDSourceType</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#m_pidSource">m_pidSource</a></span></code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.edu.wpi.first.wpilibj.SensorBase">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;edu.wpi.first.wpilibj.<a href="../../../../edu/wpi/first/wpilibj/SensorBase.html" title="class in edu.wpi.first.wpilibj">SensorBase</a></h3>
<code><a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#kAnalogInputChannels">kAnalogInputChannels</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#kAnalogOutputChannels">kAnalogOutputChannels</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#kDigitalChannels">kDigitalChannels</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#kPCMModules">kPCMModules</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#kPDPChannels">kPDPChannels</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#kPDPModules">kPDPModules</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#kPwmChannels">kPwmChannels</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#kRelayChannels">kRelayChannels</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#kSolenoidChannels">kSolenoidChannels</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#kSystemClockTicksPerMicrosecond">kSystemClockTicksPerMicrosecond</a></code></li>
</ul>
</li>
</ul>
<!-- ======== 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">&nbsp;</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/AnalogInput.html#AnalogInput-int-">AnalogInput</a></span>(int&nbsp;channel)</code>
<div class="block">Construct an analog channel.</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">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</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/AnalogInput.html#free--">free</a></span>()</code>
<div class="block">Channel destructor.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getAccumulatorCount--">getAccumulatorCount</a></span>()</code>
<div class="block">Read the number of accumulated values.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getAccumulatorOutput-edu.wpi.first.wpilibj.AccumulatorResult-">getAccumulatorOutput</a></span>(<a href="../../../../edu/wpi/first/wpilibj/AccumulatorResult.html" title="class in edu.wpi.first.wpilibj">AccumulatorResult</a>&nbsp;result)</code>
<div class="block">Read the accumulated value and the number of accumulated values atomically.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getAccumulatorValue--">getAccumulatorValue</a></span>()</code>
<div class="block">Read the accumulated value.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getAverageBits--">getAverageBits</a></span>()</code>
<div class="block">Get the number of averaging bits.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getAverageValue--">getAverageValue</a></span>()</code>
<div class="block">Get a sample from the output of the oversample and average engine for this channel.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getAverageVoltage--">getAverageVoltage</a></span>()</code>
<div class="block">Get a scaled sample from the output of the oversample and average engine for this channel.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getChannel--">getChannel</a></span>()</code>
<div class="block">Get the channel number.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>static double</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getGlobalSampleRate--">getGlobalSampleRate</a></span>()</code>
<div class="block">Get the current sample rate.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getLSBWeight--">getLSBWeight</a></span>()</code>
<div class="block">Get the factory scaling least significant bit weight constant.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getOffset--">getOffset</a></span>()</code>
<div class="block">Get the factory scaling offset constant.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getOversampleBits--">getOversampleBits</a></span>()</code>
<div class="block">Get the number of oversample bits.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="../../../../edu/wpi/first/wpilibj/PIDSourceType.html" title="enum in edu.wpi.first.wpilibj">PIDSourceType</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getPIDSourceType--">getPIDSourceType</a></span>()</code>
<div class="block">Get which parameter of the device you are using as a process control variable.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getSmartDashboardType--">getSmartDashboardType</a></span>()</code>
<div class="block">Live Window code, only does anything if live window is activated.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getValue--">getValue</a></span>()</code>
<div class="block">Get a sample straight from this channel.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#getVoltage--">getVoltage</a></span>()</code>
<div class="block">Get a scaled sample straight from this channel.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#initAccumulator--">initAccumulator</a></span>()</code>
<div class="block">Initialize the accumulator.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.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>&nbsp;subtable)</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="i18" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#isAccumulatorChannel--">isAccumulatorChannel</a></span>()</code>
<div class="block">Is the channel attached to an accumulator.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#pidGet--">pidGet</a></span>()</code>
<div class="block">Get the average voltage for use with PIDController.</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/AnalogInput.html#resetAccumulator--">resetAccumulator</a></span>()</code>
<div class="block">Resets the accumulator to the initial value.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#setAccumulatorCenter-int-">setAccumulatorCenter</a></span>(int&nbsp;center)</code>
<div class="block">Set the center value of the accumulator.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#setAccumulatorDeadband-int-">setAccumulatorDeadband</a></span>(int&nbsp;deadband)</code>
<div class="block">Set the accumulator's deadband.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#setAccumulatorInitialValue-long-">setAccumulatorInitialValue</a></span>(long&nbsp;initialValue)</code>
<div class="block">Set an initial value for the accumulator.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#setAverageBits-int-">setAverageBits</a></span>(int&nbsp;bits)</code>
<div class="block">Set the number of averaging bits.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#setGlobalSampleRate-double-">setGlobalSampleRate</a></span>(double&nbsp;samplesPerSecond)</code>
<div class="block">Set the sample rate per channel.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#setOversampleBits-int-">setOversampleBits</a></span>(int&nbsp;bits)</code>
<div class="block">Set the number of oversample bits.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#setPIDSourceType-edu.wpi.first.wpilibj.PIDSourceType-">setPIDSourceType</a></span>(<a href="../../../../edu/wpi/first/wpilibj/PIDSourceType.html" title="enum in edu.wpi.first.wpilibj">PIDSourceType</a>&nbsp;pidSource)</code>
<div class="block">Set which parameter of the device you are using as a process control variable.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#startLiveWindowMode--">startLiveWindowMode</a></span>()</code>
<div class="block">Analog Channels don't have to do anything special when entering the LiveWindow.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#stopLiveWindowMode--">stopLiveWindowMode</a></span>()</code>
<div class="block">Analog Channels don't have to do anything special when exiting the LiveWindow.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../edu/wpi/first/wpilibj/AnalogInput.html#updateTable--">updateTable</a></span>()</code>
<div class="block">Update the table for this sendable object with the latest values.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.edu.wpi.first.wpilibj.SensorBase">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;edu.wpi.first.wpilibj.<a href="../../../../edu/wpi/first/wpilibj/SensorBase.html" title="class in edu.wpi.first.wpilibj">SensorBase</a></h3>
<code><a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#checkAnalogInputChannel-int-">checkAnalogInputChannel</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#checkAnalogOutputChannel-int-">checkAnalogOutputChannel</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#checkDigitalChannel-int-">checkDigitalChannel</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#checkPDPChannel-int-">checkPDPChannel</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#checkPDPModule-int-">checkPDPModule</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#checkPWMChannel-int-">checkPWMChannel</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#checkRelayChannel-int-">checkRelayChannel</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#checkSolenoidChannel-int-">checkSolenoidChannel</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#checkSolenoidModule-int-">checkSolenoidModule</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#getDefaultSolenoidModule--">getDefaultSolenoidModule</a>, <a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#setDefaultSolenoidModule-int-">setDefaultSolenoidModule</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="m_pidSource">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>m_pidSource</h4>
<pre>protected&nbsp;<a href="../../../../edu/wpi/first/wpilibj/PIDSourceType.html" title="enum in edu.wpi.first.wpilibj">PIDSourceType</a> m_pidSource</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="AnalogInput-int-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>AnalogInput</h4>
<pre>public&nbsp;AnalogInput(int&nbsp;channel)</pre>
<div class="block">Construct an analog channel.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>channel</code> - The channel number to represent. 0-3 are on-board 4-7 are on the MXP port.</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="free--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>free</h4>
<pre>public&nbsp;void&nbsp;free()</pre>
<div class="block">Channel destructor.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../edu/wpi/first/wpilibj/SensorBase.html#free--">free</a></code>&nbsp;in class&nbsp;<code><a href="../../../../edu/wpi/first/wpilibj/SensorBase.html" title="class in edu.wpi.first.wpilibj">SensorBase</a></code></dd>
</dl>
</li>
</ul>
<a name="getValue--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getValue</h4>
<pre>public&nbsp;int&nbsp;getValue()</pre>
<div class="block">Get a sample straight from this channel. The sample is a 12-bit value representing the 0V to 5V
 range of the A/D converter. The units are in A/D converter codes. Use GetVoltage() to get the
 analog value in calibrated units.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A sample straight from this channel.</dd>
</dl>
</li>
</ul>
<a name="getAverageValue--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAverageValue</h4>
<pre>public&nbsp;int&nbsp;getAverageValue()</pre>
<div class="block">Get a sample from the output of the oversample and average engine for this channel. The sample
 is 12-bit + the bits configured in SetOversampleBits(). The value configured in
 setAverageBits() will cause this value to be averaged 2^bits number of samples. This is not a
 sliding window. The sample will not change until 2^(OversampleBits + AverageBits) samples have
 been acquired from this channel. Use getAverageVoltage() to get the analog value in calibrated
 units.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A sample from the oversample and average engine for this channel.</dd>
</dl>
</li>
</ul>
<a name="getVoltage--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVoltage</h4>
<pre>public&nbsp;double&nbsp;getVoltage()</pre>
<div class="block">Get a scaled sample straight from this channel. The value is scaled to units of Volts using the
 calibrated scaling data from getLSBWeight() and getOffset().</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A scaled sample straight from this channel.</dd>
</dl>
</li>
</ul>
<a name="getAverageVoltage--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAverageVoltage</h4>
<pre>public&nbsp;double&nbsp;getAverageVoltage()</pre>
<div class="block">Get a scaled sample from the output of the oversample and average engine for this channel. The
 value is scaled to units of Volts using the calibrated scaling data from getLSBWeight() and
 getOffset(). Using oversampling will cause this value to be higher resolution, but it will
 update more slowly. Using averaging will cause this value to be more stable, but it will update
 more slowly.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A scaled sample from the output of the oversample and average engine for this channel.</dd>
</dl>
</li>
</ul>
<a name="getLSBWeight--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLSBWeight</h4>
<pre>public&nbsp;long&nbsp;getLSBWeight()</pre>
<div class="block">Get the factory scaling least significant bit weight constant. The least significant bit weight
 constant for the channel that was calibrated in manufacturing and stored in an eeprom.

 <p>Volts = ((LSB_Weight * 1e-9) * raw) - (Offset * 1e-9)</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Least significant bit weight.</dd>
</dl>
</li>
</ul>
<a name="getOffset--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOffset</h4>
<pre>public&nbsp;int&nbsp;getOffset()</pre>
<div class="block">Get the factory scaling offset constant. The offset constant for the channel that was
 calibrated in manufacturing and stored in an eeprom.

 <p>Volts = ((LSB_Weight * 1e-9) * raw) - (Offset * 1e-9)</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Offset constant.</dd>
</dl>
</li>
</ul>
<a name="getChannel--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getChannel</h4>
<pre>public&nbsp;int&nbsp;getChannel()</pre>
<div class="block">Get the channel number.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The channel number.</dd>
</dl>
</li>
</ul>
<a name="setAverageBits-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAverageBits</h4>
<pre>public&nbsp;void&nbsp;setAverageBits(int&nbsp;bits)</pre>
<div class="block">Set the number of averaging bits. This sets the number of averaging bits. The actual number of
 averaged samples is 2^bits. The averaging is done automatically in the FPGA.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>bits</code> - The number of averaging bits.</dd>
</dl>
</li>
</ul>
<a name="getAverageBits--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAverageBits</h4>
<pre>public&nbsp;int&nbsp;getAverageBits()</pre>
<div class="block">Get the number of averaging bits. This gets the number of averaging bits from the FPGA. The
 actual number of averaged samples is 2^bits. The averaging is done automatically in the FPGA.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The number of averaging bits.</dd>
</dl>
</li>
</ul>
<a name="setOversampleBits-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setOversampleBits</h4>
<pre>public&nbsp;void&nbsp;setOversampleBits(int&nbsp;bits)</pre>
<div class="block">Set the number of oversample bits. This sets the number of oversample bits. The actual number
 of oversampled values is 2^bits. The oversampling is done automatically in the FPGA.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>bits</code> - The number of oversample bits.</dd>
</dl>
</li>
</ul>
<a name="getOversampleBits--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOversampleBits</h4>
<pre>public&nbsp;int&nbsp;getOversampleBits()</pre>
<div class="block">Get the number of oversample bits. This gets the number of oversample bits from the FPGA. The
 actual number of oversampled values is 2^bits. The oversampling is done automatically in the
 FPGA.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The number of oversample bits.</dd>
</dl>
</li>
</ul>
<a name="initAccumulator--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initAccumulator</h4>
<pre>public&nbsp;void&nbsp;initAccumulator()</pre>
<div class="block">Initialize the accumulator.</div>
</li>
</ul>
<a name="setAccumulatorInitialValue-long-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAccumulatorInitialValue</h4>
<pre>public&nbsp;void&nbsp;setAccumulatorInitialValue(long&nbsp;initialValue)</pre>
<div class="block">Set an initial value for the accumulator.

 <p>This will be added to all values returned to the user.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>initialValue</code> - The value that the accumulator should start from when reset.</dd>
</dl>
</li>
</ul>
<a name="resetAccumulator--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>resetAccumulator</h4>
<pre>public&nbsp;void&nbsp;resetAccumulator()</pre>
<div class="block">Resets the accumulator to the initial value.</div>
</li>
</ul>
<a name="setAccumulatorCenter-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAccumulatorCenter</h4>
<pre>public&nbsp;void&nbsp;setAccumulatorCenter(int&nbsp;center)</pre>
<div class="block">Set the center value of the accumulator.

 <p>The center value is subtracted from each A/D value before it is added to the accumulator.
 This is used for the center value of devices like gyros and accelerometers to take the device
 offset into account when integrating.

 <p>This center value is based on the output of the oversampled and averaged source the
 accumulator channel. Because of this, any non-zero oversample bits will affect the size of the
 value for this field.</div>
</li>
</ul>
<a name="setAccumulatorDeadband-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setAccumulatorDeadband</h4>
<pre>public&nbsp;void&nbsp;setAccumulatorDeadband(int&nbsp;deadband)</pre>
<div class="block">Set the accumulator's deadband.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>deadband</code> - The deadband size in ADC codes (12-bit value)</dd>
</dl>
</li>
</ul>
<a name="getAccumulatorValue--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAccumulatorValue</h4>
<pre>public&nbsp;long&nbsp;getAccumulatorValue()</pre>
<div class="block">Read the accumulated value.

 <p>Read the value that has been accumulating. The accumulator is attached after the oversample
 and average engine.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The 64-bit value accumulated since the last Reset().</dd>
</dl>
</li>
</ul>
<a name="getAccumulatorCount--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAccumulatorCount</h4>
<pre>public&nbsp;long&nbsp;getAccumulatorCount()</pre>
<div class="block">Read the number of accumulated values.

 <p>Read the count of the accumulated values since the accumulator was last Reset().</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The number of times samples from the channel were accumulated.</dd>
</dl>
</li>
</ul>
<a name="getAccumulatorOutput-edu.wpi.first.wpilibj.AccumulatorResult-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAccumulatorOutput</h4>
<pre>public&nbsp;void&nbsp;getAccumulatorOutput(<a href="../../../../edu/wpi/first/wpilibj/AccumulatorResult.html" title="class in edu.wpi.first.wpilibj">AccumulatorResult</a>&nbsp;result)</pre>
<div class="block">Read the accumulated value and the number of accumulated values atomically.

 <p>This function reads the value and count from the FPGA atomically. This can be used for
 averaging.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>result</code> - AccumulatorResult object to store the results in.</dd>
</dl>
</li>
</ul>
<a name="isAccumulatorChannel--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAccumulatorChannel</h4>
<pre>public&nbsp;boolean&nbsp;isAccumulatorChannel()</pre>
<div class="block">Is the channel attached to an accumulator.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The analog channel is attached to an accumulator.</dd>
</dl>
</li>
</ul>
<a name="setGlobalSampleRate-double-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setGlobalSampleRate</h4>
<pre>public static&nbsp;void&nbsp;setGlobalSampleRate(double&nbsp;samplesPerSecond)</pre>
<div class="block">Set the sample rate per channel.

 <p>This is a global setting for all channels. The maximum rate is 500kS/s divided by the number
 of channels in use. This is 62500 samples/s per channel if all 8 channels are used.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>samplesPerSecond</code> - The number of samples per second.</dd>
</dl>
</li>
</ul>
<a name="getGlobalSampleRate--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGlobalSampleRate</h4>
<pre>public static&nbsp;double&nbsp;getGlobalSampleRate()</pre>
<div class="block">Get the current sample rate.

 <p>This assumes one entry in the scan list. This is a global setting for all channels.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Sample rate.</dd>
</dl>
</li>
</ul>
<a name="setPIDSourceType-edu.wpi.first.wpilibj.PIDSourceType-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPIDSourceType</h4>
<pre>public&nbsp;void&nbsp;setPIDSourceType(<a href="../../../../edu/wpi/first/wpilibj/PIDSourceType.html" title="enum in edu.wpi.first.wpilibj">PIDSourceType</a>&nbsp;pidSource)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../edu/wpi/first/wpilibj/PIDSource.html#setPIDSourceType-edu.wpi.first.wpilibj.PIDSourceType-">PIDSource</a></code></span></div>
<div class="block">Set which parameter of the device you are using as a process control variable.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../edu/wpi/first/wpilibj/PIDSource.html#setPIDSourceType-edu.wpi.first.wpilibj.PIDSourceType-">setPIDSourceType</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../edu/wpi/first/wpilibj/PIDSource.html" title="interface in edu.wpi.first.wpilibj">PIDSource</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>pidSource</code> - An enum to select the parameter.</dd>
</dl>
</li>
</ul>
<a name="getPIDSourceType--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPIDSourceType</h4>
<pre>public&nbsp;<a href="../../../../edu/wpi/first/wpilibj/PIDSourceType.html" title="enum in edu.wpi.first.wpilibj">PIDSourceType</a>&nbsp;getPIDSourceType()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../edu/wpi/first/wpilibj/PIDSource.html#getPIDSourceType--">PIDSource</a></code></span></div>
<div class="block">Get which parameter of the device you are using as a process control variable.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../edu/wpi/first/wpilibj/PIDSource.html#getPIDSourceType--">getPIDSourceType</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../edu/wpi/first/wpilibj/PIDSource.html" title="interface in edu.wpi.first.wpilibj">PIDSource</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the currently selected PID source parameter</dd>
</dl>
</li>
</ul>
<a name="pidGet--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>pidGet</h4>
<pre>public&nbsp;double&nbsp;pidGet()</pre>
<div class="block">Get the average voltage for use with PIDController.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../edu/wpi/first/wpilibj/PIDSource.html#pidGet--">pidGet</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../edu/wpi/first/wpilibj/PIDSource.html" title="interface in edu.wpi.first.wpilibj">PIDSource</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the average voltage</dd>
</dl>
</li>
</ul>
<a name="getSmartDashboardType--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSmartDashboardType</h4>
<pre>public&nbsp;java.lang.String&nbsp;getSmartDashboardType()</pre>
<div class="block">Live Window code, only does anything if live window is activated.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../edu/wpi/first/wpilibj/Sendable.html#getSmartDashboardType--">getSmartDashboardType</a></code>&nbsp;in interface&nbsp;<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="blockList">
<li class="blockList">
<h4>initTable</h4>
<pre>public&nbsp;void&nbsp;initTable(<a href="../../../../edu/wpi/first/networktables/NetworkTable.html" title="class in edu.wpi.first.networktables">NetworkTable</a>&nbsp;subtable)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<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>&nbsp;in interface&nbsp;<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>subtable</code> - The table to put the values in.</dd>
</dl>
</li>
</ul>
<a name="updateTable--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateTable</h4>
<pre>public&nbsp;void&nbsp;updateTable()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../edu/wpi/first/wpilibj/livewindow/LiveWindowSendable.html#updateTable--">LiveWindowSendable</a></code></span></div>
<div class="block">Update the table for this sendable object with the latest values.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../edu/wpi/first/wpilibj/livewindow/LiveWindowSendable.html#updateTable--">updateTable</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../edu/wpi/first/wpilibj/livewindow/LiveWindowSendable.html" title="interface in edu.wpi.first.wpilibj.livewindow">LiveWindowSendable</a></code></dd>
</dl>
</li>
</ul>
<a name="startLiveWindowMode--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>startLiveWindowMode</h4>
<pre>public&nbsp;void&nbsp;startLiveWindowMode()</pre>
<div class="block">Analog Channels don't have to do anything special when entering the LiveWindow. Start having this sendable object automatically respond to value changes reflect the value on
 the table.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../edu/wpi/first/wpilibj/livewindow/LiveWindowSendable.html#startLiveWindowMode--">startLiveWindowMode</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../edu/wpi/first/wpilibj/livewindow/LiveWindowSendable.html" title="interface in edu.wpi.first.wpilibj.livewindow">LiveWindowSendable</a></code></dd>
</dl>
</li>
</ul>
<a name="stopLiveWindowMode--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>stopLiveWindowMode</h4>
<pre>public&nbsp;void&nbsp;stopLiveWindowMode()</pre>
<div class="block">Analog Channels don't have to do anything special when exiting the LiveWindow. Stop having this sendable object automatically respond to value changes.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../edu/wpi/first/wpilibj/livewindow/LiveWindowSendable.html#stopLiveWindowMode--">stopLiveWindowMode</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../edu/wpi/first/wpilibj/livewindow/LiveWindowSendable.html" title="interface in edu.wpi.first.wpilibj.livewindow">LiveWindowSendable</a></code></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><a href="../../../../edu/wpi/first/wpilibj/AnalogGyro.html" title="class in edu.wpi.first.wpilibj"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../edu/wpi/first/wpilibj/AnalogOutput.html" title="class in edu.wpi.first.wpilibj"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?edu/wpi/first/wpilibj/AnalogInput.html" target="_top">Frames</a></li>
<li><a href="AnalogInput.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;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:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>