WPILibC++  2019.2.1-26-ge8b2471
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
AnalogTriggerOutput.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 "frc/DigitalSource.h"
11 
12 namespace frc {
13 
14 class AnalogTrigger;
15 
48  friend class AnalogTrigger;
49 
50  public:
51  ~AnalogTriggerOutput() override;
52 
54  AnalogTriggerOutput& operator=(AnalogTriggerOutput&&) = default;
55 
61  bool Get() const;
62 
63  // DigitalSource interface
67  HAL_Handle GetPortHandleForRouting() const override;
68 
72  AnalogTriggerType GetAnalogTriggerTypeForRouting() const override;
73 
77  bool IsAnalogTrigger() const override;
78 
82  int GetChannel() const override;
83 
84  void InitSendable(SendableBuilder& builder) override;
85 
86  protected:
98  AnalogTriggerOutput(const AnalogTrigger& trigger,
99  AnalogTriggerType outputType);
100 
101  private:
102  // Uses reference rather than smart pointer because a user can not construct
103  // an AnalogTriggerOutput themselves and because the AnalogTriggerOutput
104  // should always be in scope at the same time as an AnalogTrigger.
105  const AnalogTrigger& m_trigger;
106  AnalogTriggerType m_outputType;
107 };
108 
109 } // namespace frc
WPILib FRC namespace.
Definition: SPIAccelerometerSim.h:18
AnalogTriggerType GetAnalogTriggerTypeForRouting() const override
HAL_Handle GetPortHandleForRouting() const override
bool IsAnalogTrigger() const override
Is source an AnalogTrigger.
int GetChannel() const override
DigitalSource Interface.
Definition: DigitalSource.h:25
Class to represent a specific output from an analog trigger.
Definition: AnalogTriggerOutput.h:47
bool Get() const
Get the state of the analog trigger output.
Definition: AnalogTrigger.h:22
Definition: SendableBuilder.h:23
void InitSendable(SendableBuilder &builder) override
Initializes this Sendable object.