Skip to content

Commit

Permalink
Add constructor that takes channel number to DutyCycleEncoderSim
Browse files Browse the repository at this point in the history
  • Loading branch information
rzblue committed Feb 19, 2023
1 parent ecb0727 commit bc60d84
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,11 @@

using namespace frc::sim;

DutyCycleEncoderSim::DutyCycleEncoderSim(const frc::DutyCycleEncoder& encoder) {
frc::sim::SimDeviceSim deviceSim{"DutyCycle:DutyCycleEncoder",
encoder.GetSourceChannel()};
DutyCycleEncoderSim::DutyCycleEncoderSim(const frc::DutyCycleEncoder& encoder)
: DutyCycleEncoderSim{encoder.GetSourceChannel()} {}

DutyCycleEncoderSim::DutyCycleEncoderSim(int channel) {
frc::sim::SimDeviceSim deviceSim{"DutyCycle:DutyCycleEncoder", channel};
m_simPosition = deviceSim.GetDouble("position");
m_simDistancePerRotation = deviceSim.GetDouble("distance_per_rot");
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,13 @@ class DutyCycleEncoderSim {
*/
explicit DutyCycleEncoderSim(const DutyCycleEncoder& encoder);

/**
* Constructs from a digital input channel.
*
* @param channel digital input channel
*/
explicit DutyCycleEncoderSim(int channel);

/**
* Set the position tin turns.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,16 @@ public class DutyCycleEncoderSim {
* @param encoder DutyCycleEncoder to simulate
*/
public DutyCycleEncoderSim(DutyCycleEncoder encoder) {
SimDeviceSim wrappedSimDevice =
new SimDeviceSim("DutyCycle:DutyCycleEncoder" + "[" + encoder.getSourceChannel() + "]");
this(encoder.getSourceChannel());
}

/**
* Constructs from a digital input channel.
*
* @param channel digital input channel.
*/
public DutyCycleEncoderSim(int channel) {
SimDeviceSim wrappedSimDevice = new SimDeviceSim("DutyCycle:DutyCycleEncoder", channel);
m_simPosition = wrappedSimDevice.getDouble("position");
m_simDistancePerRotation = wrappedSimDevice.getDouble("distance_per_rot");
}
Expand Down

0 comments on commit bc60d84

Please sign in to comment.