Class SwerveRequest.PointWheelsAt
- All Implemented Interfaces:
SwerveRequest
,SwerveRequest.NativeSwerveRequest
- Enclosing interface:
- SwerveRequest
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.ctre.phoenix6.swerve.SwerveRequest
SwerveRequest.ApplyChassisSpeeds, SwerveRequest.ApplyFieldSpeeds, SwerveRequest.ApplyRobotSpeeds, SwerveRequest.FieldCentric, SwerveRequest.FieldCentricFacingAngle, SwerveRequest.ForwardPerspectiveValue, SwerveRequest.Idle, SwerveRequest.NativeSwerveRequest, SwerveRequest.PointWheelsAt, SwerveRequest.RobotCentric, SwerveRequest.SwerveDriveBrake, SwerveRequest.SysIdSwerveRotation, SwerveRequest.SysIdSwerveSteerGains, SwerveRequest.SysIdSwerveTranslation
-
Field Summary
Modifier and TypeFieldDescriptionThe type of control request to use for the drive motor.The direction to point the modules toward.The type of control request to use for the drive motor. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionapply
(SwerveDrivetrain.SwerveControlParameters parameters, SwerveModule... modulesToApply) Applies this swerve request to the given modules.void
applyNative
(int id) Applies a native swerve request to the native drivetrain with the provided ID.withDriveRequestType
(SwerveModule.DriveRequestType newDriveRequestType) Modifies the DriveRequestType parameter and returns itself.withModuleDirection
(Rotation2d newModuleDirection) Modifies the ModuleDirection parameter and returns itself.withSteerRequestType
(SwerveModule.SteerRequestType newSteerRequestType) Modifies the SteerRequestType parameter and returns itself.
-
Field Details
-
ModuleDirection
The direction to point the modules toward. This direction is still optimized to what the module was previously at. -
DriveRequestType
The type of control request to use for the drive motor. -
SteerRequestType
The type of control request to use for the drive motor.
-
-
Constructor Details
-
PointWheelsAt
public PointWheelsAt()
-
-
Method Details
-
withModuleDirection
Modifies the ModuleDirection parameter and returns itself.The direction to point the modules toward. This direction is still optimized to what the module was previously at.
- Parameters:
newModuleDirection
- Parameter to modify- Returns:
- this object
-
withDriveRequestType
public SwerveRequest.PointWheelsAt withDriveRequestType(SwerveModule.DriveRequestType newDriveRequestType) Modifies the DriveRequestType parameter and returns itself.The type of control request to use for the drive motor.
- Parameters:
newDriveRequestType
- Parameter to modify- Returns:
- this object
-
withSteerRequestType
public SwerveRequest.PointWheelsAt withSteerRequestType(SwerveModule.SteerRequestType newSteerRequestType) Modifies the SteerRequestType parameter and returns itself.The type of control request to use for the drive motor.
- Parameters:
newSteerRequestType
- Parameter to modify- Returns:
- this object
-
apply
public StatusCode apply(SwerveDrivetrain.SwerveControlParameters parameters, SwerveModule... modulesToApply) Description copied from interface:SwerveRequest
Applies this swerve request to the given modules. This is typically called by the SwerveDrivetrain odometry thread.For native swerve requests, this API can be called from a non-native request's
apply
to compose the two together.- Specified by:
apply
in interfaceSwerveRequest
- Parameters:
parameters
- Parameters the control request needs to calculate the module statemodulesToApply
- Modules to which the control request is applied- Returns:
- Status code of sending the request
-
applyNative
Description copied from interface:SwerveRequest.NativeSwerveRequest
Applies a native swerve request to the native drivetrain with the provided ID.When this is implemented, the regular
SwerveRequest.apply(com.ctre.phoenix6.swerve.SwerveDrivetrain.SwerveControlParameters, com.ctre.phoenix6.swerve.SwerveModule...)
function should do nothing (return OK). Additionally, this cannot be called from another swerve request's apply method, as this overrides the native swerve request of the drivetrain.Unlike
SwerveRequest.apply(com.ctre.phoenix6.swerve.SwerveDrivetrain.SwerveControlParameters, com.ctre.phoenix6.swerve.SwerveModule...)
, this function is called every timeSwerveDrivetrain.setControl(com.ctre.phoenix6.swerve.SwerveRequest)
is run, not every loop of the odometry thread. Instead, the underlying native request is run at the full update frequency of the odometry thread.- Specified by:
applyNative
in interfaceSwerveRequest.NativeSwerveRequest
- Parameters:
id
- ID of the native swerve drivetrain
-