2#if defined(WIN32) || defined(_WIN32) || defined(_WIN64)
4#pragma warning (disable : 4250)
7#include "ctre/phoenix/motorcontrol/can/BaseTalon.h"
8#include "ctre/phoenix/motorcontrol/IMotorControllerEnhanced.h"
9#include "ctre/phoenix/motorcontrol/MotorCommutation.h"
10#include "ctre/phoenix/motorcontrol/StatorCurrentLimitConfiguration.h"
11#include "ctre/phoenix/CustomParamConfiguration.h"
12#include "ctre/phoenix/sensors/AbsoluteSensorRange.h"
13#include "ctre/phoenix/sensors/SensorInitializationStrategy.h"
17 namespace motorcontrol {
85 std::string
toString(std::string prependString) {
90 retstr += prependString +
".motorCommutation = " + std::to_string((
int)
motorCommutation) +
";\n";
91 retstr += prependString +
".absoluteSensorRange = " + std::to_string(
absoluteSensorRange) +
";\n";
115 static bool MotorCommutationDifferent(
const TalonFXConfiguration& settings) {
return (settings.motorCommutation != _default.
motorCommutation) || !settings.enableOptimizations; }
116 static bool AbsoluteSensorRangeDifferent(
const TalonFXConfiguration& settings) {
return (settings.absoluteSensorRange != _default.
absoluteSensorRange) || !settings.enableOptimizations; }
117 static bool IntegratedSensorOffsetDegreesDifferent(
const TalonFXConfiguration& settings) {
return (settings.integratedSensorOffsetDegrees != _default.
integratedSensorOffsetDegrees) || !settings.enableOptimizations; }
118 static bool InitializationStrategyDifferent(
const TalonFXConfiguration& settings) {
return (settings.initializationStrategy != _default.
initializationStrategy) || !settings.enableOptimizations; }
163 TalonFX(
int deviceNumber, std::string
const &canbus =
"");
435#if defined(WIN32) || defined(_WIN32) || defined(_WIN64)
Definition: TalonFXSensorCollection.h:30
Definition: TalonFXSimCollection.h:25
Definition: BaseTalon.h:229
Definition: BaseTalon.h:266
Definition: TalonFX.h:103
static bool SupplyCurrentLimitDifferent(const TalonFXConfiguration &settings)
Definition: TalonFX.h:113
Definition: TalonFX.h:153
ctre::phoenix::ErrorCode ConfigGetSupplyCurrentLimit(ctre::phoenix::motorcontrol::SupplyCurrentLimitConfiguration &currLimitConfigsToFill, int timeoutMs=50)
ctre::phoenix::motorcontrol::TalonFXSimCollection & GetSimCollection()
ErrorCode ConfigIntegratedSensorInitializationStrategy(ctre::phoenix::sensors::SensorInitializationStrategy initializationStrategy, int timeoutMs=0)
ErrorCode ConfigIntegratedSensorOffset(double offsetDegrees, int timeoutMs=0)
void Set(TalonFXControlMode mode, double demand0, DemandType demand1Type, double demand1)
ctre::phoenix::ErrorCode ConfigAllSettings(const TalonFXConfiguration &allConfigs, int timeoutMs=50)
void GetAllConfigs(TalonFXConfiguration &allConfigs, int timeoutMs=50)
ErrorCode ConfigIntegratedSensorAbsoluteRange(ctre::phoenix::sensors::AbsoluteSensorRange absoluteSensorRange, int timeoutMs=0)
ctre::phoenix::ErrorCode ConfigStatorCurrentLimit(const ctre::phoenix::motorcontrol::StatorCurrentLimitConfiguration &currLimitConfigs, int timeoutMs=50)
virtual ctre::phoenix::ErrorCode ConfigSelectedFeedbackSensor(RemoteFeedbackDevice feedbackDevice, int pidIdx=0, int timeoutMs=0)
virtual void SetInverted(bool bInvert)
TalonFX(int deviceNumber, std::string const &canbus="")
virtual ctre::phoenix::ErrorCode ConfigSelectedFeedbackSensor(FeedbackDevice feedbackDevice, int pidIdx=0, int timeoutMs=0)
void GetPIDConfigs(TalonFXPIDSetConfiguration &pid, int pidIdx=0, int timeoutMs=50)
ctre::phoenix::ErrorCode ConfigGetStatorCurrentLimit(ctre::phoenix::motorcontrol::StatorCurrentLimitConfiguration &currLimitConfigsToFill, int timeoutMs=50)
virtual void Set(ControlMode mode, double demand0, DemandType demand1Type, double demand1)
void SetInverted(TalonFXInvertType invertType)
void Set(TalonFXControlMode mode, double value)
virtual void Set(ControlMode mode, double value)
ctre::phoenix::ErrorCode ConfigSupplyCurrentLimit(const ctre::phoenix::motorcontrol::SupplyCurrentLimitConfiguration &currLimitConfigs, int timeoutMs=50)
ctre::phoenix::ErrorCode ConfigSelectedFeedbackSensor(TalonFXFeedbackDevice feedbackDevice, int pidIdx=0, int timeoutMs=0)
ctre::phoenix::ErrorCode ConfigMotorCommutation(ctre::phoenix::motorcontrol::MotorCommutation motorCommutation, int timeoutMs=0)
ctre::phoenix::ErrorCode ConfigGetMotorCommutation(ctre::phoenix::motorcontrol::MotorCommutation &motorCommutation, int timeoutMs=0)
ctre::phoenix::ErrorCode ConfigurePID(const TalonFXPIDSetConfiguration &pid, int pidIdx=0, int timeoutMs=50)
virtual void SetInverted(InvertType invertType)
ctre::phoenix::motorcontrol::TalonFXSensorCollection & GetSensorCollection()
ControlMode
Definition: ControlMode.h:10
DemandType
Definition: DemandType.h:9
InvertType
Definition: InvertType.h:13
TalonFXFeedbackDevice
Definition: FeedbackDevice.h:134
MotorCommutation
Definition: MotorCommutation.h:10
@ Trapezoidal
Trapezoidal Commutation.
RemoteFeedbackDevice
Definition: FeedbackDevice.h:169
FeedbackDevice
Definition: FeedbackDevice.h:13
TalonFXControlMode
Definition: ControlMode.h:55
TalonFXInvertType
Definition: InvertType.h:24
SensorInitializationStrategy
Definition: SensorInitializationStrategy.h:12
AbsoluteSensorRange
Definition: AbsoluteSensorRange.h:12
ErrorCode
Definition: ErrorCode.h:12
Definition: ErrorCode.h:5
bool enableOptimizations
Definition: CustomParamConfiguration.h:22
Definition: StatorCurrentLimitConfiguration.h:13
std::string ToString() const
Definition: StatorCurrentLimitConfiguration.h:53
Definition: SupplyCurrentLimitConfiguration.h:13
std::string ToString() const
Definition: SupplyCurrentLimitConfiguration.h:53
Definition: BaseTalon.h:95
std::string toString()
Definition: BaseTalon.h:196
Definition: BaseTalon.h:33
ctre::phoenix::motorcontrol::MotorCommutation motorCommutation
Definition: TalonFX.h:42
std::string toString(std::string prependString)
Definition: TalonFX.h:85
ctre::phoenix::sensors::SensorInitializationStrategy initializationStrategy
Definition: TalonFX.h:66
double integratedSensorOffsetDegrees
Definition: TalonFX.h:56
ctre::phoenix::sensors::AbsoluteSensorRange absoluteSensorRange
Definition: TalonFX.h:49
SupplyCurrentLimitConfiguration supplyCurrLimit
Definition: TalonFX.h:33
std::string toString()
Definition: TalonFX.h:76
StatorCurrentLimitConfiguration statorCurrLimit
Definition: TalonFX.h:37