edu.wpi.first.wpilibj
Interface CounterBase

All Known Implementing Classes:
Counter, Encoder, GearTooth

public interface CounterBase

Interface for counting the number of ticks on a digital input channel. Encoders, Gear tooth sensors, and counters should all subclass this so it can be used to build more advanced classes for control and driving.


Nested Class Summary
static class CounterBase.EncodingType
          The number of edges for the counterbase to increment or decrement on
 
Method Summary
 int get()
          Get the count
 boolean getDirection()
          Determine which direction the counter is going
 double getPeriod()
          Get the time between the last two edges counted
 boolean getStopped()
          Determine if the counter is not moving
 void reset()
          Reset the count to zero
 void setMaxPeriod(double maxPeriod)
          Set the maximum time between edges to be considered stalled
 void start()
          Start the counter
 void stop()
          Stop counting
 

Method Detail

start

void start()
Start the counter


get

int get()
Get the count

Returns:
the count

reset

void reset()
Reset the count to zero


stop

void stop()
Stop counting


getPeriod

double getPeriod()
Get the time between the last two edges counted

Returns:
the time beteween the last two ticks in seconds

setMaxPeriod

void setMaxPeriod(double maxPeriod)
Set the maximum time between edges to be considered stalled

Parameters:
maxPeriod - the maximum period in seconds

getStopped

boolean getStopped()
Determine if the counter is not moving

Returns:
true if the counter has not changed for the max period

getDirection

boolean getDirection()
Determine which direction the counter is going

Returns:
true for one direction, false for the other