WPILibC++ 2023.4.3-108-ge5452e3
frc::AnalogTrigger Class Reference

#include <frc/AnalogTrigger.h>

Inheritance diagram for frc::AnalogTrigger:
wpi::Sendable wpi::SendableHelper< AnalogTrigger >

Public Member Functions

 AnalogTrigger (int channel)
 Constructor for an analog trigger given a channel number. More...
 
 AnalogTrigger (AnalogInput *input)
 Construct an analog trigger given an analog input. More...
 
 AnalogTrigger (DutyCycle *dutyCycle)
 Construct an analog trigger given a duty cycle input. More...
 
 ~AnalogTrigger () override
 
 AnalogTrigger (AnalogTrigger &&)=default
 
AnalogTriggeroperator= (AnalogTrigger &&)=default
 
void SetLimitsVoltage (double lower, double upper)
 Set the upper and lower limits of the analog trigger. More...
 
void SetLimitsDutyCycle (double lower, double upper)
 Set the upper and lower duty cycle limits of the analog trigger. More...
 
void SetLimitsRaw (int lower, int upper)
 Set the upper and lower limits of the analog trigger. More...
 
void SetAveraged (bool useAveragedValue)
 Configure the analog trigger to use the averaged vs. More...
 
void SetFiltered (bool useFilteredValue)
 Configure the analog trigger to use a filtered value. More...
 
int GetIndex () const
 Return the index of the analog trigger. More...
 
bool GetInWindow ()
 Return the InWindow output of the analog trigger. More...
 
bool GetTriggerState ()
 Return the TriggerState output of the analog trigger. More...
 
std::shared_ptr< AnalogTriggerOutputCreateOutput (AnalogTriggerType type) const
 Creates an AnalogTriggerOutput object. More...
 
void InitSendable (wpi::SendableBuilder &builder) override
 Initializes this Sendable object. More...
 
- Public Member Functions inherited from wpi::Sendable
virtual ~Sendable ()=default
 
virtual void InitSendable (SendableBuilder &builder)=0
 Initializes this Sendable object. More...
 
- Public Member Functions inherited from wpi::SendableHelper< AnalogTrigger >
 SendableHelper (const SendableHelper &rhs)=default
 
 SendableHelper (SendableHelper &&rhs)
 
SendableHelperoperator= (const SendableHelper &rhs)=default
 
SendableHelperoperator= (SendableHelper &&rhs)
 

Friends

class AnalogTriggerOutput
 

Additional Inherited Members

- Protected Member Functions inherited from wpi::SendableHelper< AnalogTrigger >
 SendableHelper ()=default
 
 ~SendableHelper ()
 

Constructor & Destructor Documentation

◆ AnalogTrigger() [1/4]

frc::AnalogTrigger::AnalogTrigger ( int  channel)
explicit

Constructor for an analog trigger given a channel number.

Parameters
channelThe channel number on the roboRIO to represent. 0-3 are on-board 4-7 are on the MXP port.

◆ AnalogTrigger() [2/4]

frc::AnalogTrigger::AnalogTrigger ( AnalogInput input)
explicit

Construct an analog trigger given an analog input.

This should be used in the case of sharing an analog channel between the trigger and an analog input object.

Parameters
inputThe pointer to the existing AnalogInput object

◆ AnalogTrigger() [3/4]

frc::AnalogTrigger::AnalogTrigger ( DutyCycle dutyCycle)
explicit

Construct an analog trigger given a duty cycle input.

Parameters
dutyCycleThe pointer to the existing DutyCycle object

◆ ~AnalogTrigger()

frc::AnalogTrigger::~AnalogTrigger ( )
override

◆ AnalogTrigger() [4/4]

frc::AnalogTrigger::AnalogTrigger ( AnalogTrigger &&  )
default

Member Function Documentation

◆ CreateOutput()

std::shared_ptr< AnalogTriggerOutput > frc::AnalogTrigger::CreateOutput ( AnalogTriggerType  type) const

Creates an AnalogTriggerOutput object.

Gets an output object that can be used for routing. Caller is responsible for deleting the AnalogTriggerOutput object.

Parameters
typeAn enum of the type of output object to create.
Returns
A pointer to a new AnalogTriggerOutput object.

◆ GetIndex()

int frc::AnalogTrigger::GetIndex ( ) const

Return the index of the analog trigger.

This is the FPGA index of this analog trigger instance.

Returns
The index of the analog trigger.

◆ GetInWindow()

bool frc::AnalogTrigger::GetInWindow ( )

Return the InWindow output of the analog trigger.

True if the analog input is between the upper and lower limits.

Returns
True if the analog input is between the upper and lower limits.

◆ GetTriggerState()

bool frc::AnalogTrigger::GetTriggerState ( )

Return the TriggerState output of the analog trigger.

True if above upper limit. False if below lower limit. If in Hysteresis, maintain previous state.

Returns
True if above upper limit. False if below lower limit. If in Hysteresis, maintain previous state.

◆ InitSendable()

void frc::AnalogTrigger::InitSendable ( wpi::SendableBuilder builder)
overridevirtual

Initializes this Sendable object.

Parameters
buildersendable builder

Implements wpi::Sendable.

◆ operator=()

AnalogTrigger & frc::AnalogTrigger::operator= ( AnalogTrigger &&  )
default

◆ SetAveraged()

void frc::AnalogTrigger::SetAveraged ( bool  useAveragedValue)

Configure the analog trigger to use the averaged vs.

raw values.

If the value is true, then the averaged value is selected for the analog trigger, otherwise the immediate value is used.

Parameters
useAveragedValueIf true, use the Averaged value, otherwise use the instantaneous reading

◆ SetFiltered()

void frc::AnalogTrigger::SetFiltered ( bool  useFilteredValue)

Configure the analog trigger to use a filtered value.

The analog trigger will operate with a 3 point average rejection filter. This is designed to help with 360 degree pot applications for the period where the pot crosses through zero.

Parameters
useFilteredValueIf true, use the 3 point rejection filter, otherwise use the unfiltered value

◆ SetLimitsDutyCycle()

void frc::AnalogTrigger::SetLimitsDutyCycle ( double  lower,
double  upper 
)

Set the upper and lower duty cycle limits of the analog trigger.

The limits are given as floating point values between 0 and 1.

Parameters
lowerThe lower limit of the trigger in percentage.
upperThe upper limit of the trigger in percentage.

◆ SetLimitsRaw()

void frc::AnalogTrigger::SetLimitsRaw ( int  lower,
int  upper 
)

Set the upper and lower limits of the analog trigger.

The limits are given in ADC codes. If oversampling is used, the units must be scaled appropriately.

Parameters
lowerThe lower limit of the trigger in ADC codes (12-bit values).
upperThe upper limit of the trigger in ADC codes (12-bit values).

◆ SetLimitsVoltage()

void frc::AnalogTrigger::SetLimitsVoltage ( double  lower,
double  upper 
)

Set the upper and lower limits of the analog trigger.

The limits are given as floating point voltage values.

Parameters
lowerThe lower limit of the trigger in Volts.
upperThe upper limit of the trigger in Volts.

Friends And Related Function Documentation

◆ AnalogTriggerOutput

friend class AnalogTriggerOutput
friend

The documentation for this class was generated from the following file: