Add DutyCycleEncoder channel constructor (#2158)

Avoids extra boilerplate at user level.
This commit is contained in:
Thad House
2019-12-06 20:58:04 -08:00
committed by Peter Johnson
parent d8f11eb149
commit 67d2fed685
5 changed files with 27 additions and 10 deletions

View File

@@ -8,6 +8,7 @@
#include "frc/DutyCycleEncoder.h"
#include "frc/Counter.h"
#include "frc/DigitalInput.h"
#include "frc/DigitalSource.h"
#include "frc/DriverStation.h"
#include "frc/DutyCycle.h"
@@ -15,6 +16,12 @@
using namespace frc;
DutyCycleEncoder::DutyCycleEncoder(int channel)
: m_dutyCycle{std::make_shared<DutyCycle>(
std::make_shared<DigitalInput>(channel))},
m_analogTrigger{m_dutyCycle.get()},
m_counter{} {}
DutyCycleEncoder::DutyCycleEncoder(DutyCycle& dutyCycle)
: m_dutyCycle{&dutyCycle, NullDeleter<DutyCycle>{}},
m_analogTrigger{m_dutyCycle.get()},