diff options
author | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-01-16 15:14:37 -0500 |
---|---|---|
committer | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-01-16 15:14:37 -0500 |
commit | 7fad9de275f72354deb1a86ee0e8312a420bf783 (patch) | |
tree | 075c09eccd19a5c24ee5a74a12d9a2e7964b5e49 /src/org/mckenzierobotics/lib/robot/RollingAvg.java | |
parent | 43771f1f16c8368fde4267ed64c4568dc620ad61 (diff) |
mv src/org/mkenzierobotics/lib/robot/* src/org/usfirst/frc/team4272/robotlib
Diffstat (limited to 'src/org/mckenzierobotics/lib/robot/RollingAvg.java')
-rw-r--r-- | src/org/mckenzierobotics/lib/robot/RollingAvg.java | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/src/org/mckenzierobotics/lib/robot/RollingAvg.java b/src/org/mckenzierobotics/lib/robot/RollingAvg.java deleted file mode 100644 index 3001b8a..0000000 --- a/src/org/mckenzierobotics/lib/robot/RollingAvg.java +++ /dev/null @@ -1,90 +0,0 @@ -/** - * Copyright (c) 2011 Luke Shumaker - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * * Neither the name of the FIRST nor the - * names of its contributors may be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY FIRST AND CONTRIBUTORS``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY NONINFRINGEMENT AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL FIRST OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * @author Luke Shumaker <lukeshu@sbcglobal.net> - */ - -package org.mckenzierobotics.lib.robot; - -import edu.wpi.first.wpilibj.PIDSource; -import edu.wpi.first.wpilibj.PIDSourceType; -import edu.wpi.first.wpilibj.PIDOutput; - -/** - * TODO: Write JavaDocs - * @author Luke Shumaker <lukeshu@sbcglobal.net> - */ -public class RollingAvg implements PIDSource, PIDOutput { - private PIDSource source = null; - private double[] points; - private double avg; - private int i; - - public RollingAvg(int len) { - points = new double[len]; - i = 0; - avg = 0; - } - public RollingAvg(int len, PIDSource src) { - this(len); - source = src; - } - - public double push(double v) { - avg -= points[i]; - points[i] = v/points.length; - avg += points[i]; - i++; i %= points.length; - return avg; - } - - public double get() { - return avg; - } - - public double pidGet() { - if (source!=null) - return push(source.pidGet()); - else - return get(); - } - - public void pidWrite(double output) { - push(output); - } - - public void setPIDSourceType(PIDSourceType srcType) { - if (source!=null) - source.setPIDSourceType(srcType); - } - - public PIDSourceType getPIDSourceType() { - if (source!=null) - return source.getPIDSourceType(); - else - return null; - } -} |