WPILibC++  unspecified
DigitalInput.h
1 /*----------------------------------------------------------------------------*/
2 /* Copyright (c) 2008-2018 FIRST. All Rights Reserved. */
3 /* Open Source Software - may be modified and shared by FRC teams. The code */
4 /* must be accompanied by the FIRST BSD license file in the root directory of */
5 /* the project. */
6 /*----------------------------------------------------------------------------*/
7 
8 #pragma once
9 
10 #include "DigitalSource.h"
11 
12 namespace frc {
13 
15 
25 class DigitalInput : public DigitalSource {
26  public:
27  explicit DigitalInput(int channel);
28  ~DigitalInput() override;
29  bool Get() const;
30  int GetChannel() const override;
31 
32  // Digital Source Interface
33  HAL_Handle GetPortHandleForRouting() const override;
34  AnalogTriggerType GetAnalogTriggerTypeForRouting() const override;
35  bool IsAnalogTrigger() const override;
36 
37  void InitSendable(SendableBuilder& builder) override;
38 
39  private:
40  int m_channel;
41  HAL_DigitalHandle m_handle;
42 
43  friend class DigitalGlitchFilter;
44 };
45 
46 } // namespace frc
Definition: RobotController.cpp:14
int GetChannel() const override
Definition: DigitalInput.cpp:82
Class to enable glitch filtering on a set of digital inputs.
Definition: DigitalGlitchFilter.h:31
bool Get() const
Get the value from a digital input channel.
Definition: DigitalInput.cpp:71
HAL_Handle GetPortHandleForRouting() const override
Definition: DigitalInput.cpp:87
DigitalInput(int channel)
Create an instance of a Digital Input class.
Definition: DigitalInput.cpp:28
~DigitalInput() override
Free resources associated with the Digital Input class.
Definition: DigitalInput.cpp:54
DigitalSource Interface.
Definition: DigitalSource.h:25
bool IsAnalogTrigger() const override
Is source an AnalogTrigger.
Definition: DigitalInput.cpp:92
Definition: SendableBuilder.h:23
void InitSendable(SendableBuilder &builder) override
Initializes this Sendable object.
Definition: DigitalInput.cpp:101
Class to read a digital input.
Definition: DigitalInput.h:25
AnalogTriggerType GetAnalogTriggerTypeForRouting() const override
Definition: DigitalInput.cpp:97