mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-28 02:11:43 +00:00
Moved C++ comments from source files to headers (#1111)
Also sorted functions in C++ sources to match order in related headers.
This commit is contained in:
committed by
Peter Johnson
parent
d9971a705a
commit
8c680a26f8
@@ -23,17 +23,109 @@ class AnalogTrigger : public ErrorBase, public SendableBase {
|
||||
friend class AnalogTriggerOutput;
|
||||
|
||||
public:
|
||||
/**
|
||||
* Constructor for an analog trigger given a channel number.
|
||||
*
|
||||
* @param channel The channel number on the roboRIO to represent. 0-3 are
|
||||
* on-board 4-7 are on the MXP port.
|
||||
*/
|
||||
explicit AnalogTrigger(int channel);
|
||||
|
||||
/**
|
||||
* 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.
|
||||
*
|
||||
* @param channel The pointer to the existing AnalogInput object
|
||||
*/
|
||||
explicit AnalogTrigger(AnalogInput* channel);
|
||||
|
||||
~AnalogTrigger() override;
|
||||
|
||||
/**
|
||||
* Set the upper and lower limits of the analog trigger.
|
||||
*
|
||||
* The limits are given as floating point voltage values.
|
||||
*
|
||||
* @param lower The lower limit of the trigger in Volts.
|
||||
* @param upper The upper limit of the trigger in Volts.
|
||||
*/
|
||||
void SetLimitsVoltage(double lower, double 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.
|
||||
*
|
||||
* @param lower The lower limit of the trigger in ADC codes (12-bit values).
|
||||
* @param upper The upper limit of the trigger in ADC codes (12-bit values).
|
||||
*/
|
||||
void SetLimitsRaw(int lower, int upper);
|
||||
|
||||
/**
|
||||
* 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.
|
||||
*
|
||||
* @param useAveragedValue If true, use the Averaged value, otherwise use the
|
||||
* instantaneous reading
|
||||
*/
|
||||
void SetAveraged(bool useAveragedValue);
|
||||
|
||||
/**
|
||||
* 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.
|
||||
*
|
||||
* @param useFilteredValue If true, use the 3 point rejection filter,
|
||||
* otherwise use the unfiltered value
|
||||
*/
|
||||
void SetFiltered(bool useFilteredValue);
|
||||
|
||||
/**
|
||||
* Return the index of the analog trigger.
|
||||
*
|
||||
* This is the FPGA index of this analog trigger instance.
|
||||
*
|
||||
* @return The index of the analog trigger.
|
||||
*/
|
||||
int GetIndex() const;
|
||||
|
||||
/**
|
||||
* Return the InWindow output of the analog trigger.
|
||||
*
|
||||
* True if the analog input is between the upper and lower limits.
|
||||
*
|
||||
* @return True if the analog input is between the upper and lower limits.
|
||||
*/
|
||||
bool GetInWindow();
|
||||
|
||||
/**
|
||||
* Return the TriggerState output of the analog trigger.
|
||||
*
|
||||
* True if above upper limit.
|
||||
* False if below lower limit.
|
||||
* If in Hysteresis, maintain previous state.
|
||||
*
|
||||
* @return True if above upper limit. False if below lower limit. If in
|
||||
* Hysteresis, maintain previous state.
|
||||
*/
|
||||
bool GetTriggerState();
|
||||
|
||||
/**
|
||||
* Creates an AnalogTriggerOutput object.
|
||||
*
|
||||
* Gets an output object that can be used for routing. Caller is responsible
|
||||
* for deleting the AnalogTriggerOutput object.
|
||||
*
|
||||
* @param type An enum of the type of output object to create.
|
||||
* @return A pointer to a new AnalogTriggerOutput object.
|
||||
*/
|
||||
std::shared_ptr<AnalogTriggerOutput> CreateOutput(
|
||||
AnalogTriggerType type) const;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user