Files
allwpilib/wpilibc/wpilibC++/lib/AnalogPotentiometer.cpp
Alex Henning 9ff7412780 Fixes for rebasing.
Change-Id: I765d2f2fc044fb30caef3cda8ff6bd03fef6b4e0
2014-06-17 14:09:58 -07:00

50 lines
1.1 KiB
C++

#include "AnalogPotentiometer.h"
void AnalogPotentiometer::initPot(int channel, double scale, double offset) {
m_channel = channel;
m_scale = scale;
m_offset = offset;
m_analog_input = new AnalogInput(channel);
}
AnalogPotentiometer::AnalogPotentiometer(int channel, double scale, double offset) {
initPot(channel, scale, offset);
}
AnalogPotentiometer::AnalogPotentiometer(int channel, double scale) {
initPot(channel, scale, 0);
}
AnalogPotentiometer::AnalogPotentiometer(int channel) {
initPot(channel, 1, 0);
}
double AnalogPotentiometer::Get() {
return m_analog_input->GetVoltage() * m_scale + m_offset;
}
double AnalogPotentiometer::PIDGet() {
return Get();
}
std::string AnalogPotentiometer::GetSmartDashboardType() {
return "Analog Input";
}
void AnalogPotentiometer::InitTable(ITable *subtable) {
m_table = subtable;
UpdateTable();
}
void AnalogPotentiometer::UpdateTable() {
if (m_table != NULL) {
m_table->PutNumber("Value", Get());
}
}
ITable* AnalogPotentiometer::GetTable() {
return m_table;
}