diff --git a/docs/index-all.html b/docs/index-all.html
index 5064925..8c246c1 100644
--- a/docs/index-all.html
+++ b/docs/index-all.html
@@ -789,7 +789,7 @@
F
Configuration for the flywheel
-FlywheelConf(String, Motors[], int[], String[], InvertedValue[], NeutralModeValue[], NeutralModeValue[], int[][], DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, FeedforwardConstants, FeedforwardConstants, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, double, String, double, double, int, double) - Constructor for class tagalong.subsystems.micro.confs.FlywheelConf
+FlywheelConf(String, Motors[], int[], String[], InvertedValue[], NeutralModeValue[], NeutralModeValue[], int[][], DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, FeedforwardConstants, FeedforwardConstants, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, double, String, double, double, int, double, double) - Constructor for class tagalong.subsystems.micro.confs.FlywheelConf
followLastProfile() - Method in class tagalong.subsystems.micro.Elevator
@@ -1143,6 +1143,10 @@ K
L
+- ligamentsLength - Variable in class tagalong.subsystems.micro.confs.RollerConf
+-
+
Length of simulated ligaments
+
- LinearizedLookupTable - Class in tagalong.math
-
Linearized Lookup Table
@@ -2041,7 +2045,7 @@ R
-
Configuration for the roller microsystem
- - RollerConf(String, Motors[], int[], String[], InvertedValue[], NeutralModeValue[], NeutralModeValue[], int[][], DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, FeedforwardConstants, FeedforwardConstants, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, double, String, double, double, int, double) - Constructor for class tagalong.subsystems.micro.confs.RollerConf
+- RollerConf(String, Motors[], int[], String[], InvertedValue[], NeutralModeValue[], NeutralModeValue[], int[][], DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, FeedforwardConstants, FeedforwardConstants, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, double, String, double, double, int, double, double) - Constructor for class tagalong.subsystems.micro.confs.RollerConf
-
- rollerCurrentAmps - Variable in class tagalong.logging.RollerIO.RollerIOInputs
-
diff --git a/docs/member-search-index.js b/docs/member-search-index.js
index c4bafb0..cf608de 100644
--- a/docs/member-search-index.js
+++ b/docs/member-search-index.js
@@ -1 +1 @@
-memberSearchIndex = [{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_absoluteRangeRot"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_allMotors"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_conf"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"_configuredDisable"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_configuredMicrosystemDisable"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_currentPositionEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_currentVelocityEntry"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_curSimAngle"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_curState"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_defaultElevatorLowerToleranceM"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_defaultElevatorUpperToleranceM"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_defaultPivotLowerToleranceRot"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_defaultPivotUpperToleranceRot"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_defaultRollerLowerToleranceRot"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_defaultRollerUpperToleranceRot"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorBaseStageLigament"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorConf"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorFF"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorMaxHeightM"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorMinHeightM"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorSim"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorStage1Ligament"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorZeroingDurationS"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorZeroingPower"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorZeroingStallToleranceM"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_encoderToPivotRatio"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_ffCenterOfMassOffsetRad"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_followProfile"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_goalState"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_isFFTuningMicro"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_isMicrosystemDisabled"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_isPIDTuningMicro"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_isShuffleboardMicro"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"_isSubsystemDisabled"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_KAEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_KGEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_KSEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_KVEntry"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_maxAccelerationMPS2"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_maxAccelerationRPS2"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_maxAccelerationRPS2"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_maxPositionRot"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_maxVelocityMPS"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_maxVelocityRPS"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_maxVelocityRPS"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_mechanism"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_minPositionRot"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_motorToEncoderRatio"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_motorToMechRatio"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotCancoder"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotCancoderConfiguration"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotCancoderSim"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotConf"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotFF"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotLigament"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotSim"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_primaryMotor"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_primaryMotorInverted"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_primaryMotorSim"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_profileTargetOffset"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_profileTimer"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_requestedPositionVoltage"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_requestedTorqueCurrent"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_requestedVelocityVoltage"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_rollerConf"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_rollerFF"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_rollerSim"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_root"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_simAccelRPM2"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_simAccelRPS2"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_simRotations"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_simRotations"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_simVelocityMPS"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_simVeloRPM"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_simVeloRPS"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot0DFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot0IFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot0PFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot1DFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot1IFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot1PFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot2DFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot2IFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot2PFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_targetPositionEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_targetVelocityEntry"},{"p":"tagalong.devices","c":"Encoders","l":"_ticksPerRotation"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_toleranceTimer"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_trapProfile"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_tuningTabCounter"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"a"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"a"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"absoluteClamp(double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"AlgebraicUtils()","u":"%3Cinit%3E()"},{"p":"tagalong.measurements","c":"AlliancePose2d","l":"AlliancePose2d(Pose2d, Pose2d)","u":"%3Cinit%3E(edu.wpi.first.math.geometry.Pose2d,edu.wpi.first.math.geometry.Pose2d)"},{"p":"tagalong.measurements","c":"AlliancePose3d","l":"AlliancePose3d(Pose3d, Pose3d)","u":"%3Cinit%3E(edu.wpi.first.math.geometry.Pose3d,edu.wpi.first.math.geometry.Pose3d)"},{"p":"tagalong.measurements","c":"AllianceTranslation2d","l":"AllianceTranslation2d(Translation2d, Translation2d)","u":"%3Cinit%3E(edu.wpi.first.math.geometry.Translation2d,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"angle"},{"p":"tagalong.commands","c":"TagalongCommand","l":"anonymize()"},{"p":"tagalong.measurements","c":"AlliancePose2d","l":"blue"},{"p":"tagalong.measurements","c":"AlliancePose3d","l":"blue"},{"p":"tagalong.measurements","c":"AllianceTranslation2d","l":"blue"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"calculateGearRatio(int[][])"},{"p":"tagalong.devices","c":"Encoders","l":"CANCODER"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"carriageMassUnit"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"carriageMassValue"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"cart2pol(double, double)","u":"cart2pol(double,double)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"checkInitStatus()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"checkInitStatus()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"checkToleranceTime(boolean, double)","u":"checkToleranceTime(boolean,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"clamp(double, double, double)","u":"clamp(double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"clampElevatorPosition(double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"clampPivotPosition(double)"},{"p":"tagalong.logging","c":"ElevatorIOInputsAutoLogged","l":"clone()"},{"p":"tagalong.logging","c":"PivotIOInputsAutoLogged","l":"clone()"},{"p":"tagalong.logging","c":"RollerIOInputsAutoLogged","l":"clone()"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"closedLoopConfigsContinuousWrap"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"configAllDevices()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"configAllDevices()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"configMotor()"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"configShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"configShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"configShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"configShuffleboard()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"configShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"configTuningModes()"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"constrainAngleNegPiToPi(double)"},{"p":"tagalong.units","c":"DistanceUnits","l":"conversionToBase"},{"p":"tagalong.units","c":"MassUnits","l":"conversionToKgs"},{"p":"tagalong.units","c":"TimeUnits","l":"conversionToSeconds"},{"p":"tagalong.units","c":"AccelerationUnits","l":"convertX(double, AccelerationUnits)","u":"convertX(double,tagalong.units.AccelerationUnits)"},{"p":"tagalong.units","c":"DistanceUnits","l":"convertX(double, DistanceUnits)","u":"convertX(double,tagalong.units.DistanceUnits)"},{"p":"tagalong.units","c":"MassUnits","l":"convertX(double, MassUnits)","u":"convertX(double,tagalong.units.MassUnits)"},{"p":"tagalong.units","c":"TimeUnits","l":"convertX(double, TimeUnits)","u":"convertX(double,tagalong.units.TimeUnits)"},{"p":"tagalong.units","c":"VelocityUnits","l":"convertX(double, VelocityUnits)","u":"convertX(double,tagalong.units.VelocityUnits)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"cppMod(double, double)","u":"cppMod(double,double)"},{"p":"tagalong.controls","c":"PIDConstants","l":"d"},{"p":"tagalong.devices","c":"Motors","l":"DEFAULT_STATOR_CURRENT_LIMIT_AMPS"},{"p":"tagalong.devices","c":"Motors","l":"DEFAULT_SUPPLY_CURRENT_LIMIT_AMPS"},{"p":"tagalong.devices","c":"Motors","l":"DEFAULT_SUPPLY_CURRENT_THRESHOLD_LIMIT_AMPS"},{"p":"tagalong.devices","c":"Motors","l":"DEFAULT_SUPPLY_TIME_THRESHOLD"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"defaultLowerTolerance"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"defaultTolerancesUnit"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"defaultUpperTolerance"},{"p":"tagalong.units","c":"VelocityUnits","l":"DEGPS"},{"p":"tagalong.units","c":"AccelerationUnits","l":"DEGPS2"},{"p":"tagalong.units","c":"DistanceUnits","l":"DEGREE"},{"p":"tagalong.units","c":"VelocityUnits","l":"DEGREES_PER_HOUR"},{"p":"tagalong.units","c":"AccelerationUnits","l":"DEGREES_PER_HOUR2"},{"p":"tagalong.units","c":"VelocityUnits","l":"DEGREES_PER_MILLISECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"DEGREES_PER_MILLISECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"DEGREES_PER_MINUTE"},{"p":"tagalong.units","c":"AccelerationUnits","l":"DEGREES_PER_MINUTE2"},{"p":"tagalong.units","c":"VelocityUnits","l":"DEGREES_PER_SECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"DEGREES_PER_SECOND2"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"disableMicrosystem(boolean)"},{"p":"tagalong.units","c":"AccelerationUnits","l":"distanceUnit"},{"p":"tagalong.units","c":"VelocityUnits","l":"distanceUnit"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"drumCircumference"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"drumDiameter"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"drumDiameterUnit"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, Height)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, Height, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, Height, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, Height, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, Height, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, Height, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, Height)","u":"%3Cinit%3E(T,tagalong.measurements.Height)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, Height, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, Height, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, Height, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, Height, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, Height, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(int, T, DoubleSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(int, T, DoubleSupplier, boolean)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(int, T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(int, T, DoubleSupplier, boolean, double, BooleanSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double,java.util.function.BooleanSupplier)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(T, DoubleSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(T, DoubleSupplier, boolean)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(T, DoubleSupplier, boolean, double, BooleanSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double,java.util.function.BooleanSupplier)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, Height)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, Height, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, Height, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, Height, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, Height, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, Height, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, Height)","u":"%3Cinit%3E(T,tagalong.measurements.Height)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, Height, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, Height, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, Height, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, Height, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, Height, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"Elevator(ElevatorConf)","u":"%3Cinit%3E(tagalong.subsystems.micro.confs.ElevatorConf)"},{"p":"tagalong.logging","c":"ElevatorIO.ElevatorIOInputs","l":"elevatorAppliedVolts"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"ElevatorConf(String, Motors[], int[], String[], InvertedValue[], NeutralModeValue[], NeutralModeValue[], int[][], DistanceUnits, double, double, DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, FeedforwardConstants, FeedforwardConstants, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, MassUnits, double, double, String, double, double, double, double, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, DistanceUnits, double)","u":"%3Cinit%3E(java.lang.String,tagalong.devices.Motors[],int[],java.lang.String[],com.ctre.phoenix6.signals.InvertedValue[],com.ctre.phoenix6.signals.NeutralModeValue[],com.ctre.phoenix6.signals.NeutralModeValue[],int[][],tagalong.units.DistanceUnits,double,double,tagalong.units.DistanceUnits,tagalong.units.VelocityUnits,double,tagalong.units.AccelerationUnits,double,tagalong.units.DistanceUnits,double,double,tagalong.controls.FeedforwardConstants,tagalong.controls.FeedforwardConstants,com.ctre.phoenix6.configs.CurrentLimitsConfigs,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.units.MassUnits,double,double,java.lang.String,double,double,double,double,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.units.DistanceUnits,double)"},{"p":"tagalong.logging","c":"ElevatorIO.ElevatorIOInputs","l":"elevatorCurrentAmps"},{"p":"tagalong.logging","c":"ElevatorIO.ElevatorIOInputs","l":"elevatorHeightM"},{"p":"tagalong.logging","c":"ElevatorIO.ElevatorIOInputs","l":"ElevatorIOInputs()","u":"%3Cinit%3E()"},{"p":"tagalong.logging","c":"ElevatorIOInputsAutoLogged","l":"ElevatorIOInputsAutoLogged()","u":"%3Cinit%3E()"},{"p":"tagalong.logging","c":"ElevatorIOTalonFX","l":"ElevatorIOTalonFX(Elevator)","u":"%3Cinit%3E(tagalong.subsystems.micro.Elevator)"},{"p":"tagalong.logging","c":"ElevatorIO.ElevatorIOInputs","l":"elevatorVelocityMPS"},{"p":"tagalong.commands.base","c":"ElevatorZeroCmd","l":"ElevatorZeroCmd(int, T)","u":"%3Cinit%3E(int,T)"},{"p":"tagalong.commands.base","c":"ElevatorZeroCmd","l":"ElevatorZeroCmd(T)","u":"%3Cinit%3E(T)"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"elevatorZeroingDurationS"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"elevatorZeroingPower"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"elevatorZeroingStallToleranceM"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderCanBus"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderConfig"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderConfigClockwisePositive"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderConfigMagnetOffsetUnit"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderConfigMagnetOffsetValue"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderConfigZeroToOne"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderDeviceID"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderToPivotRatio"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderType"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"ElevatorZeroCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"ElevatorZeroCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"execute()"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"exp(Twist2d)","u":"exp(edu.wpi.first.math.geometry.Twist2d)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"extractTFMatrixYRot(Matrix)","u":"extractTFMatrixYRot(edu.wpi.first.math.Matrix)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"extractTFMatrixZ(Matrix)","u":"extractTFMatrixZ(edu.wpi.first.math.Matrix)"},{"p":"tagalong.devices","c":"Motors","l":"FALCON500"},{"p":"tagalong.devices","c":"Motors","l":"FALCON500_FOC"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"feedForward"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"feedForward"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"feedForward"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"FeedforwardConstants(double, double, double, double)","u":"%3Cinit%3E(double,double,double,double)"},{"p":"tagalong.units","c":"DistanceUnits","l":"FEET"},{"p":"tagalong.units","c":"VelocityUnits","l":"FEET_PER_HOUR"},{"p":"tagalong.units","c":"AccelerationUnits","l":"FEET_PER_HOUR2"},{"p":"tagalong.units","c":"VelocityUnits","l":"FEET_PER_MILLISECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"FEET_PER_MILLISECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"FEET_PER_MINUTE"},{"p":"tagalong.units","c":"AccelerationUnits","l":"FEET_PER_MINUTE2"},{"p":"tagalong.units","c":"VelocityUnits","l":"FEET_PER_SECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"FEET_PER_SECOND2"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"ffOffsetUnit"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"ffOffsetValue"},{"p":"tagalong","c":"TagalongConfiguration","l":"ffTuningMicrosystems"},{"p":"tagalong.subsystems.micro.confs","c":"FlywheelConf","l":"FlywheelConf(String, Motors[], int[], String[], InvertedValue[], NeutralModeValue[], NeutralModeValue[], int[][], DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, FeedforwardConstants, FeedforwardConstants, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, double, String, double, double, int, double)","u":"%3Cinit%3E(java.lang.String,tagalong.devices.Motors[],int[],java.lang.String[],com.ctre.phoenix6.signals.InvertedValue[],com.ctre.phoenix6.signals.NeutralModeValue[],com.ctre.phoenix6.signals.NeutralModeValue[],int[][],tagalong.units.DistanceUnits,tagalong.units.VelocityUnits,double,tagalong.units.AccelerationUnits,double,tagalong.units.DistanceUnits,double,double,tagalong.controls.FeedforwardConstants,tagalong.controls.FeedforwardConstants,com.ctre.phoenix6.configs.CurrentLimitsConfigs,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,double,java.lang.String,double,double,int,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"followLastProfile()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"followLastProfile()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"followLastProfile()"},{"p":"tagalong.logging","c":"ElevatorIOInputsAutoLogged","l":"fromLog(LogTable)","u":"fromLog(org.littletonrobotics.junction.LogTable)"},{"p":"tagalong.logging","c":"PivotIOInputsAutoLogged","l":"fromLog(LogTable)","u":"fromLog(org.littletonrobotics.junction.LogTable)"},{"p":"tagalong.logging","c":"RollerIOInputsAutoLogged","l":"fromLog(LogTable)","u":"fromLog(org.littletonrobotics.junction.LogTable)"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"g"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"g"},{"p":"tagalong.math","c":"GeometricUtils","l":"GeometricUtils()","u":"%3Cinit%3E()"},{"p":"tagalong.measurements","c":"AlliancePose2d","l":"get(boolean)"},{"p":"tagalong.measurements","c":"AlliancePose3d","l":"get(boolean)"},{"p":"tagalong.measurements","c":"AllianceTranslation2d","l":"get(boolean)"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"getArmFeedforward()"},{"p":"tagalong.devices","c":"Motors","l":"getDefaults()"},{"p":"tagalong.measurements","c":"Angle","l":"getDegrees()"},{"p":"tagalong.subsystems.micro.augments","c":"ElevatorAugment","l":"getElevator()"},{"p":"tagalong.subsystems.micro.augments","c":"ElevatorAugment","l":"getElevator(int)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"getElevatorBaseStageLigament()"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"getElevatorFeedforward()"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"getElevatorHeightM()"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"getElevatorStage1Ligament()"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"getElevatorVelocityMPS()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"getFFPositionRad()"},{"p":"tagalong.measurements","c":"Height","l":"getHeightM()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"getMotor()"},{"p":"tagalong.subsystems.micro.augments","c":"PivotAugment","l":"getPivot()"},{"p":"tagalong.subsystems.micro.augments","c":"PivotAugment","l":"getPivot(int)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"getPivotLigament()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"getPivotPosition()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"getPivotPower()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"getPivotVelocity()"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"getPointInFrame(Matrix, Matrix)","u":"getPointInFrame(edu.wpi.first.math.Matrix,edu.wpi.first.math.Matrix)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"getPrimaryMotor()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"getPrimaryMotorPosition()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"getPrimaryMotorPower()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"getPrimaryMotorVelocity()"},{"p":"tagalong.controls","c":"PIDConstants","l":"getProfiledController(TrapezoidProfile.Constraints)","u":"getProfiledController(edu.wpi.first.math.trajectory.TrapezoidProfile.Constraints)"},{"p":"tagalong.measurements","c":"Angle","l":"getRadians()"},{"p":"tagalong.subsystems.micro.augments","c":"RollerAugment","l":"getRoller()"},{"p":"tagalong.subsystems.micro.augments","c":"RollerAugment","l":"getRoller(int)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"getRollerLigaments()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"getRollerPosition()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"getRollerPower()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"getRollerVelocity()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"getRoot()"},{"p":"tagalong.measurements","c":"Angle","l":"getRotations()"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"getSimpleMotorFeedforward()"},{"p":"tagalong.measurements","c":"AlliancePose3d","l":"getTranslation2d(boolean)"},{"p":"tagalong.controls","c":"PIDConstants","l":"getUnprofiledController()"},{"p":"tagalong.units","c":"MassUnits","l":"GRAMS"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"holdCurrentPosition()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"holdCurrentPosition()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"holdCurrentPosition()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"holdCurrentPosition()"},{"p":"tagalong.units","c":"TimeUnits","l":"HOUR"},{"p":"tagalong.controls","c":"PIDConstants","l":"i"},{"p":"tagalong.units","c":"DistanceUnits","l":"INCH"},{"p":"tagalong.units","c":"VelocityUnits","l":"INCHES_PER_HOUR"},{"p":"tagalong.units","c":"AccelerationUnits","l":"INCHES_PER_HOUR2"},{"p":"tagalong.units","c":"VelocityUnits","l":"INCHES_PER_MILLISECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"INCHES_PER_MILLISECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"INCHES_PER_MINUTE"},{"p":"tagalong.units","c":"AccelerationUnits","l":"INCHES_PER_MINUTE2"},{"p":"tagalong.units","c":"VelocityUnits","l":"INCHES_PER_SECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"INCHES_PER_SECOND2"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"ElevatorZeroCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"initialize()"},{"p":"tagalong.math","c":"GeometricUtils","l":"inRange(Pose2d, Rotation2d, Pose2d, double, double)","u":"inRange(edu.wpi.first.math.geometry.Pose2d,edu.wpi.first.math.geometry.Rotation2d,edu.wpi.first.math.geometry.Pose2d,double,double)"},{"p":"tagalong.math","c":"GeometricUtils","l":"inRectangle(double, double, double, double, double, double, double, double, double, double)","u":"inRectangle(double,double,double,double,double,double,double,double,double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"inTolerance(double, double, double)","u":"inTolerance(double,double,double)"},{"p":"tagalong.math","c":"GeometricUtils","l":"inTriangle(double, double, double, double, double, double, double, double)","u":"inTriangle(double,double,double,double,double,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"isElevatorInTolerance(double, double)","u":"isElevatorInTolerance(double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"ElevatorZeroCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"isFinished()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"isPivotInAbsoluteTolerance(double, double)","u":"isPivotInAbsoluteTolerance(double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"isPivotInTolerance(double, double)","u":"isPivotInTolerance(double,double)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"isProfileFinished()"},{"p":"tagalong","c":"TagalongConfiguration","l":"isReplayMode"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"isRollerAtTargetSpeed(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"isRollerInTolerance(double, double)","u":"isRollerInTolerance(double,double)"},{"p":"tagalong.units","c":"DistanceUnits","l":"isRotational"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"isSafeToMove()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"isSafeToMove()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"isSubsystemDisabled()"},{"p":"tagalong.units","c":"MassUnits","l":"KILOGRAMS"},{"p":"tagalong.devices","c":"Motors","l":"KRAKEN_X44"},{"p":"tagalong.devices","c":"Motors","l":"KRAKEN_X44_FOC"},{"p":"tagalong.devices","c":"Motors","l":"KRAKEN_X60"},{"p":"tagalong.devices","c":"Motors","l":"KRAKEN_X60_FOC"},{"p":"tagalong.math","c":"LinearizedLookupTable","l":"LinearizedLookupTable(double[], double[])","u":"%3Cinit%3E(double[],double[])"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"lineLength"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"log(Pose2d)","u":"log(edu.wpi.first.math.geometry.Pose2d)"},{"p":"tagalong.math","c":"LinearizedLookupTable","l":"lookup(double)"},{"p":"tagalong","c":"TagalongConfiguration","l":"LOOP_PERIOD_S"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"makeYRotTFMatrix(double, double, double, double)","u":"makeYRotTFMatrix(double,double,double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"makeZRotTFMatrix(double, double, double, double)","u":"makeZRotTFMatrix(double,double,double,double)"},{"p":"tagalong.devices","c":"Motors","l":"maxRPM"},{"p":"tagalong.devices","c":"Motors","l":"maxRPS"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"mech2dDim"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"mech2dDim"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"mech2dDim"},{"p":"tagalong.units","c":"DistanceUnits","l":"METER"},{"p":"tagalong.units","c":"VelocityUnits","l":"METERS_PER_HOUR"},{"p":"tagalong.units","c":"AccelerationUnits","l":"METERS_PER_HOUR2"},{"p":"tagalong.units","c":"VelocityUnits","l":"METERS_PER_MILLISECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"METERS_PER_MILLISECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"METERS_PER_MINUTE"},{"p":"tagalong.units","c":"AccelerationUnits","l":"METERS_PER_MINUTE2"},{"p":"tagalong.units","c":"VelocityUnits","l":"METERS_PER_SECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"METERS_PER_SECOND2"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"metersToMotor(double)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"Microsystem(MicrosystemConf)","u":"%3Cinit%3E(tagalong.subsystems.micro.confs.MicrosystemConf)"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"MicrosystemConf(String, Motors[], int[], String[], InvertedValue[], NeutralModeValue[], NeutralModeValue[], int[][], DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants)","u":"%3Cinit%3E(java.lang.String,tagalong.devices.Motors[],int[],java.lang.String[],com.ctre.phoenix6.signals.InvertedValue[],com.ctre.phoenix6.signals.NeutralModeValue[],com.ctre.phoenix6.signals.NeutralModeValue[],int[][],tagalong.units.DistanceUnits,tagalong.units.VelocityUnits,double,tagalong.units.AccelerationUnits,double,tagalong.units.DistanceUnits,double,double,com.ctre.phoenix6.configs.CurrentLimitsConfigs,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants)"},{"p":"tagalong.units","c":"TimeUnits","l":"MILLISECOND"},{"p":"tagalong.units","c":"TimeUnits","l":"MINUTE"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorCanBus"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorConfig"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorDeviceIDs"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorDirection"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorDisabledBrakeMode"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorEnabledBrakeMode"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"motorResetConfig()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"motorResetConfig()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"motorResetConfig()"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"motorToEncoderRatio"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorToMechRatio"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"motorToMeters(double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"motorToPivotRot(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"motorToRollerRot(double)"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorTypes"},{"p":"tagalong.units","c":"VelocityUnits","l":"MPS"},{"p":"tagalong.units","c":"AccelerationUnits","l":"MPS2"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"name"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"numMotors"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"onDisable()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"onDisable()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"onDisable()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"onDisable()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"onDisable()"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"onEnable()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"onEnable()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"onEnable()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"onEnable()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"onEnable()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"onTeleopDisable()"},{"p":"tagalong.units","c":"MassUnits","l":"OUNCES"},{"p":"tagalong.controls","c":"PIDConstants","l":"p"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"periodic()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"periodic()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"periodic()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"periodic()"},{"p":"tagalong.controls","c":"PIDConstants","l":"PIDConstants(double, double, double)","u":"%3Cinit%3E(double,double,double)"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"PIDSGVAConstants(double, double, double, double, double, double, double)","u":"%3Cinit%3E(double,double,double,double,double,double,double)"},{"p":"tagalong","c":"TagalongConfiguration","l":"pidTuningMicrosystems"},{"p":"tagalong.devices","c":"Encoders","l":"PIGEON2_PITCH"},{"p":"tagalong.devices","c":"Encoders","l":"PIGEON2_ROLL"},{"p":"tagalong.devices","c":"Encoders","l":"PIGEON2_YAW"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"Pivot(PivotConf)","u":"%3Cinit%3E(tagalong.subsystems.micro.confs.PivotConf)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"PivotAimAtCmd(int, T, Supplier, Translation2d)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"PivotAimAtCmd(int, T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"PivotAimAtCmd(int, T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"PivotAimAtCmd(T, Supplier, Translation2d)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"PivotAimAtCmd(T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"PivotAimAtCmd(T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"PivotAimAtYawCompCmd(int, T, Supplier, Translation2d)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"PivotAimAtYawCompCmd(int, T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"PivotAimAtYawCompCmd(int, T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"PivotAimAtYawCompCmd(T, Supplier, Translation2d)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"PivotAimAtYawCompCmd(T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"PivotAimAtYawCompCmd(T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.logging","c":"PivotIO.PivotIOInputs","l":"pivotAppliedVolts"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"PivotConf(String, Motors[], int[], String[], InvertedValue[], Encoders, int, String, boolean, boolean, DistanceUnits, double, NeutralModeValue[], NeutralModeValue[], int[][], int[][], DistanceUnits, double, double, DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, FeedforwardConstants, FeedforwardConstants, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, boolean, DistanceUnits, double, DistanceUnits, double, double, String, double, double, double, double)","u":"%3Cinit%3E(java.lang.String,tagalong.devices.Motors[],int[],java.lang.String[],com.ctre.phoenix6.signals.InvertedValue[],tagalong.devices.Encoders,int,java.lang.String,boolean,boolean,tagalong.units.DistanceUnits,double,com.ctre.phoenix6.signals.NeutralModeValue[],com.ctre.phoenix6.signals.NeutralModeValue[],int[][],int[][],tagalong.units.DistanceUnits,double,double,tagalong.units.DistanceUnits,tagalong.units.VelocityUnits,double,tagalong.units.AccelerationUnits,double,tagalong.units.DistanceUnits,double,double,tagalong.controls.FeedforwardConstants,tagalong.controls.FeedforwardConstants,com.ctre.phoenix6.configs.CurrentLimitsConfigs,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,boolean,tagalong.units.DistanceUnits,double,tagalong.units.DistanceUnits,double,double,java.lang.String,double,double,double,double)"},{"p":"tagalong.logging","c":"PivotIO.PivotIOInputs","l":"pivotCurrentAmps"},{"p":"tagalong.logging","c":"PivotIO.PivotIOInputs","l":"PivotIOInputs()","u":"%3Cinit%3E()"},{"p":"tagalong.logging","c":"PivotIOInputsAutoLogged","l":"PivotIOInputsAutoLogged()","u":"%3Cinit%3E()"},{"p":"tagalong.logging","c":"PivotIOTalonFX","l":"PivotIOTalonFX(Pivot)","u":"%3Cinit%3E(tagalong.subsystems.micro.Pivot)"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"pivotLengthM"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"pivotMOI"},{"p":"tagalong.logging","c":"PivotIO.PivotIOInputs","l":"pivotPositionRot"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"pivotRotToMotor(double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, Angle)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, Angle, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, Angle, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, Angle, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, Angle)","u":"%3Cinit%3E(T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, Angle, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, Angle, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, Angle, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, Angle)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, Angle, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, Angle, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, Angle, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, Angle)","u":"%3Cinit%3E(T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, Angle, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, Angle, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, Angle, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(int, T, DoubleSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(int, T, DoubleSupplier, boolean)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(int, T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(int, T, DoubleSupplier, boolean, double, BooleanSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double,java.util.function.BooleanSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(T, DoubleSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(T, DoubleSupplier, boolean)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(T, DoubleSupplier, boolean, double, BooleanSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double,java.util.function.BooleanSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(int, T, DoubleSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(int, T, DoubleSupplier, boolean)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(int, T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(int, T, DoubleSupplier, boolean, double, BooleanSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double,java.util.function.BooleanSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(T, DoubleSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(T, DoubleSupplier, boolean)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(T, DoubleSupplier, boolean, double, BooleanSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double,java.util.function.BooleanSupplier)"},{"p":"tagalong.logging","c":"PivotIO.PivotIOInputs","l":"pivotVelocityRPS"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, Angle)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, Angle, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, Angle, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, Angle, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, Angle)","u":"%3Cinit%3E(T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, Angle, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, Angle, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, Angle, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"placeInScopeDeg(double, double)","u":"placeInScopeDeg(double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"placeInScopeRad(double, double)","u":"placeInScopeRad(double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"placeInScopeRot(double, double)","u":"placeInScopeRot(double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"placePivotInClosestRot(double, double)","u":"placePivotInClosestRot(double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"pol2cart(double, double)","u":"pol2cart(double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"pose2DToZRotTFMatrix(Pose2d)","u":"pose2DToZRotTFMatrix(edu.wpi.first.math.geometry.Pose2d)"},{"p":"tagalong.math","c":"WpilibUtils","l":"poseToArray(Pose2d, double[])","u":"poseToArray(edu.wpi.first.math.geometry.Pose2d,double[])"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"positionalLimitUnit"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"positionalMax"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"positionalMin"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"positionTransform(Supplier, DoubleSupplier, Translation2d)","u":"positionTransform(java.util.function.Supplier,java.util.function.DoubleSupplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"positionTransform(Supplier, DoubleSupplier, Translation2d, double, double)","u":"positionTransform(java.util.function.Supplier,java.util.function.DoubleSupplier,edu.wpi.first.math.geometry.Translation2d,double,double)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"positionTransform(Supplier, DoubleSupplier, Translation2d)","u":"positionTransform(java.util.function.Supplier,java.util.function.DoubleSupplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"positionTransform(Supplier, DoubleSupplier, Translation2d, double, double)","u":"positionTransform(java.util.function.Supplier,java.util.function.DoubleSupplier,edu.wpi.first.math.geometry.Translation2d,double,double)"},{"p":"tagalong.units","c":"MassUnits","l":"POUNDS"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"profileOffsetUnit"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"profileOffsetValue"},{"p":"tagalong.units","c":"DistanceUnits","l":"RADIAN"},{"p":"tagalong.units","c":"VelocityUnits","l":"RADIANS_PER_HOUR"},{"p":"tagalong.units","c":"AccelerationUnits","l":"RADIANS_PER_HOUR2"},{"p":"tagalong.units","c":"VelocityUnits","l":"RADIANS_PER_MILLISECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"RADIANS_PER_MILLISECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"RADIANS_PER_MINUTE"},{"p":"tagalong.units","c":"AccelerationUnits","l":"RADIANS_PER_MINUTE2"},{"p":"tagalong.units","c":"VelocityUnits","l":"RADIANS_PER_SECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"RADIANS_PER_SECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"RADPS"},{"p":"tagalong.units","c":"AccelerationUnits","l":"RADPS2"},{"p":"tagalong.measurements","c":"AlliancePose2d","l":"red"},{"p":"tagalong.measurements","c":"AlliancePose3d","l":"red"},{"p":"tagalong.measurements","c":"AllianceTranslation2d","l":"red"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"resetToleranceTimer()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"Roller(RollerConf)","u":"%3Cinit%3E(tagalong.subsystems.micro.confs.RollerConf)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"RollerAimAtCmd(int, T, Supplier, Translation2d)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"RollerAimAtCmd(int, T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"RollerAimAtCmd(int, T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"RollerAimAtCmd(T, Supplier, Translation2d)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"RollerAimAtCmd(T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"RollerAimAtCmd(T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"RollerAimAtYawCompCmd(int, T, Supplier, Translation2d)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"RollerAimAtYawCompCmd(int, T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"RollerAimAtYawCompCmd(int, T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"RollerAimAtYawCompCmd(T, Supplier, Translation2d)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"RollerAimAtYawCompCmd(T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"RollerAimAtYawCompCmd(T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.logging","c":"RollerIO.RollerIOInputs","l":"rollerAppliedVolts"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"RollerConf(String, Motors[], int[], String[], InvertedValue[], NeutralModeValue[], NeutralModeValue[], int[][], DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, FeedforwardConstants, FeedforwardConstants, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, double, String, double, double, int, double)","u":"%3Cinit%3E(java.lang.String,tagalong.devices.Motors[],int[],java.lang.String[],com.ctre.phoenix6.signals.InvertedValue[],com.ctre.phoenix6.signals.NeutralModeValue[],com.ctre.phoenix6.signals.NeutralModeValue[],int[][],tagalong.units.DistanceUnits,tagalong.units.VelocityUnits,double,tagalong.units.AccelerationUnits,double,tagalong.units.DistanceUnits,double,double,tagalong.controls.FeedforwardConstants,tagalong.controls.FeedforwardConstants,com.ctre.phoenix6.configs.CurrentLimitsConfigs,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,double,java.lang.String,double,double,int,double)"},{"p":"tagalong.logging","c":"RollerIO.RollerIOInputs","l":"rollerCurrentAmps"},{"p":"tagalong.logging","c":"RollerIO.RollerIOInputs","l":"RollerIOInputs()","u":"%3Cinit%3E()"},{"p":"tagalong.logging","c":"RollerIOInputsAutoLogged","l":"RollerIOInputsAutoLogged()","u":"%3Cinit%3E()"},{"p":"tagalong.logging","c":"RollerIOTalonFX","l":"RollerIOTalonFX(Roller)","u":"%3Cinit%3E(tagalong.subsystems.micro.Roller)"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"rollerMOI"},{"p":"tagalong.logging","c":"RollerIO.RollerIOInputs","l":"rollerPositionRot"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"rollerRotToMotor(double)"},{"p":"tagalong.logging","c":"RollerIO.RollerIOInputs","l":"rollerVelocityRPS"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, Angle)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, Angle, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, Angle, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, Angle, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, Angle)","u":"%3Cinit%3E(T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, Angle, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, Angle, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, Angle, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"RollToDynamicCmd(int, T, DoubleSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"RollToDynamicCmd(int, T, DoubleSupplier, boolean)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"RollToDynamicCmd(int, T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"RollToDynamicCmd(T, DoubleSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"RollToDynamicCmd(T, DoubleSupplier, boolean)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"RollToDynamicCmd(T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, Angle)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, Angle, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, Angle, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, Angle, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, Angle)","u":"%3Cinit%3E(T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, Angle, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, Angle, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, Angle, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"rootName"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"rootName"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"rootName"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"rootX"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"rootX"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"rootX"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"rootY"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"rootY"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"rootY"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"rotateVector(Matrix, double)","u":"rotateVector(edu.wpi.first.math.Matrix,double)"},{"p":"tagalong.units","c":"DistanceUnits","l":"ROTATION"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"rotationalLimitUnit"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"rotationalMax"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"rotationalMin"},{"p":"tagalong.units","c":"VelocityUnits","l":"ROTATIONS_PER_HOUR"},{"p":"tagalong.units","c":"AccelerationUnits","l":"ROTATIONS_PER_HOUR2"},{"p":"tagalong.units","c":"VelocityUnits","l":"ROTATIONS_PER_MILLISECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"ROTATIONS_PER_MILLISECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"ROTATIONS_PER_MINUTE"},{"p":"tagalong.units","c":"AccelerationUnits","l":"ROTATIONS_PER_MINUTE2"},{"p":"tagalong.units","c":"VelocityUnits","l":"ROTATIONS_PER_SECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"ROTATIONS_PER_SECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"ROTPS"},{"p":"tagalong.units","c":"AccelerationUnits","l":"ROTPS2"},{"p":"tagalong.units","c":"VelocityUnits","l":"RPS"},{"p":"tagalong.units","c":"AccelerationUnits","l":"RPS2"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"s"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"s"},{"p":"tagalong.units","c":"TimeUnits","l":"SECOND"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"setBrakeMode(boolean)"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"setDisabled(boolean)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorHeight(double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(double, double)","u":"setElevatorProfile(double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(double, double, double)","u":"setElevatorProfile(double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(double, double, double, double)","u":"setElevatorProfile(double,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(double, double, double, double, boolean)","u":"setElevatorProfile(double,double,double,double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(Height)","u":"setElevatorProfile(tagalong.measurements.Height)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(Height, double)","u":"setElevatorProfile(tagalong.measurements.Height,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(Height, double, double)","u":"setElevatorProfile(tagalong.measurements.Height,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(Height, double, double, double)","u":"setElevatorProfile(tagalong.measurements.Height,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(Height, double, double, double, boolean)","u":"setElevatorProfile(tagalong.measurements.Height,double,double,double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorVelocity(double, boolean)","u":"setElevatorVelocity(double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"setFollowProfile(boolean)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"setHoldPosition(boolean)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotPower(double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(Angle)","u":"setPivotProfile(tagalong.measurements.Angle)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(Angle, double)","u":"setPivotProfile(tagalong.measurements.Angle,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(Angle, double, double)","u":"setPivotProfile(tagalong.measurements.Angle,double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(Angle, double, double, double)","u":"setPivotProfile(tagalong.measurements.Angle,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(Angle, double, double, double, boolean)","u":"setPivotProfile(tagalong.measurements.Angle,double,double,double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(double, double)","u":"setPivotProfile(double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(double, double, double)","u":"setPivotProfile(double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(double, double, double, double)","u":"setPivotProfile(double,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(double, double, double, double, boolean)","u":"setPivotProfile(double,double,double,double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotVelocity(double, boolean)","u":"setPivotVelocity(double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"setPrimaryPower(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerPower(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerPowerCmd(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(Angle)","u":"setRollerProfile(tagalong.measurements.Angle)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(Angle, double)","u":"setRollerProfile(tagalong.measurements.Angle,double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(Angle, double, double)","u":"setRollerProfile(tagalong.measurements.Angle,double,double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(Angle, double, double, double)","u":"setRollerProfile(tagalong.measurements.Angle,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(Angle, double, double, double, boolean)","u":"setRollerProfile(tagalong.measurements.Angle,double,double,double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(double, double)","u":"setRollerProfile(double,double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(double, double, double)","u":"setRollerProfile(double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(double, double, double, double)","u":"setRollerProfile(double,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(double, double, double, double, boolean)","u":"setRollerProfile(double,double,double,double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerRPSCmd(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerRPSWithFFCmd(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerVelocity(double, boolean)","u":"setRollerVelocity(double,boolean)"},{"p":"tagalong","c":"TagalongConfiguration","l":"shuffleboardMicrosystems"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"simFeedForward"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"simNumLigaments"},{"p":"tagalong.devices","c":"Motors","l":"simSupplier"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"simulationInit()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"simulationInit()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"simulationInit()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"simulationInit()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"simulationInit()"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"simulationPeriodic()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"simulationPeriodic()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"simulationPeriodic()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"simulationPeriodic()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"simulationPeriodic()"},{"p":"tagalong.math","c":"LinearizedLookupTable","l":"size()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"startEndRollerPowerCmd(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"startEndRollerRPSCmd(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"startEndRollerRPSWithFFCmd(double)"},{"p":"tagalong.commands","c":"TagalongCommand","l":"TagalongCommand()","u":"%3Cinit%3E()"},{"p":"tagalong","c":"TagalongConfiguration","l":"TagalongConfiguration()","u":"%3Cinit%3E()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"TagalongSubsystemBase(Object)","u":"%3Cinit%3E(java.lang.Object)"},{"p":"tagalong.units","c":"AccelerationUnits","l":"timeUnit"},{"p":"tagalong.units","c":"VelocityUnits","l":"timeUnit"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"toCTRESlot0Configuration()"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"toCTRESlot1Configuration()"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"toCTRESlot2Configuration()"},{"p":"tagalong.logging","c":"ElevatorIOInputsAutoLogged","l":"toLog(LogTable)","u":"toLog(org.littletonrobotics.junction.LogTable)"},{"p":"tagalong.logging","c":"PivotIOInputsAutoLogged","l":"toLog(LogTable)","u":"toLog(org.littletonrobotics.junction.LogTable)"},{"p":"tagalong.logging","c":"RollerIOInputsAutoLogged","l":"toLog(LogTable)","u":"toLog(org.littletonrobotics.junction.LogTable)"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"trapezoidalAccelerationUnit"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"trapezoidalLimits"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"trapezoidalLimitsAcceleration"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"trapezoidalLimitsVelocity"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"trapezoidalVelocityUnit"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"updateAllPIDSGVA()"},{"p":"tagalong.logging","c":"ElevatorIO","l":"updateInputs(ElevatorIO.ElevatorIOInputs)","u":"updateInputs(tagalong.logging.ElevatorIO.ElevatorIOInputs)"},{"p":"tagalong.logging","c":"ElevatorIOTalonFX","l":"updateInputs(ElevatorIO.ElevatorIOInputs)","u":"updateInputs(tagalong.logging.ElevatorIO.ElevatorIOInputs)"},{"p":"tagalong.logging","c":"PivotIO","l":"updateInputs(PivotIO.PivotIOInputs)","u":"updateInputs(tagalong.logging.PivotIO.PivotIOInputs)"},{"p":"tagalong.logging","c":"PivotIOTalonFX","l":"updateInputs(PivotIO.PivotIOInputs)","u":"updateInputs(tagalong.logging.PivotIO.PivotIOInputs)"},{"p":"tagalong.logging","c":"RollerIO","l":"updateInputs(RollerIO.RollerIOInputs)","u":"updateInputs(tagalong.logging.RollerIO.RollerIOInputs)"},{"p":"tagalong.logging","c":"RollerIOTalonFX","l":"updateInputs(RollerIO.RollerIOInputs)","u":"updateInputs(tagalong.logging.RollerIO.RollerIOInputs)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"updateShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"updateShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"updateShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"updateShuffleboard()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"updateShuffleboard()"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"v"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"v"},{"p":"tagalong.devices","c":"Encoders","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.devices","c":"Motors","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.units","c":"AccelerationUnits","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.units","c":"DistanceUnits","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.units","c":"MassUnits","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.units","c":"TimeUnits","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.units","c":"VelocityUnits","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.devices","c":"Encoders","l":"values()"},{"p":"tagalong.devices","c":"Motors","l":"values()"},{"p":"tagalong.units","c":"AccelerationUnits","l":"values()"},{"p":"tagalong.units","c":"DistanceUnits","l":"values()"},{"p":"tagalong.units","c":"MassUnits","l":"values()"},{"p":"tagalong.units","c":"TimeUnits","l":"values()"},{"p":"tagalong.units","c":"VelocityUnits","l":"values()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"waitForInitialization()"},{"p":"tagalong.math","c":"WpilibUtils","l":"WpilibUtils()","u":"%3Cinit%3E()"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"zRotTFMatrixToPose(Matrix)","u":"zRotTFMatrixToPose(edu.wpi.first.math.Matrix)"}];updateSearchResults();
\ No newline at end of file
+memberSearchIndex = [{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_absoluteRangeRot"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_allMotors"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_conf"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"_configuredDisable"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_configuredMicrosystemDisable"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_currentPositionEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_currentVelocityEntry"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_curSimAngle"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_curState"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_defaultElevatorLowerToleranceM"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_defaultElevatorUpperToleranceM"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_defaultPivotLowerToleranceRot"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_defaultPivotUpperToleranceRot"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_defaultRollerLowerToleranceRot"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_defaultRollerUpperToleranceRot"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorBaseStageLigament"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorConf"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorFF"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorMaxHeightM"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorMinHeightM"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorSim"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorStage1Ligament"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorZeroingDurationS"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorZeroingPower"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_elevatorZeroingStallToleranceM"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_encoderToPivotRatio"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_ffCenterOfMassOffsetRad"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_followProfile"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_goalState"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_isFFTuningMicro"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_isMicrosystemDisabled"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_isPIDTuningMicro"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_isShuffleboardMicro"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"_isSubsystemDisabled"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_KAEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_KGEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_KSEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_KVEntry"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_maxAccelerationMPS2"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_maxAccelerationRPS2"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_maxAccelerationRPS2"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_maxPositionRot"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_maxVelocityMPS"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_maxVelocityRPS"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_maxVelocityRPS"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_mechanism"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_minPositionRot"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_motorToEncoderRatio"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_motorToMechRatio"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotCancoder"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotCancoderConfiguration"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotCancoderSim"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotConf"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotFF"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotLigament"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_pivotSim"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_primaryMotor"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_primaryMotorInverted"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_primaryMotorSim"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_profileTargetOffset"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_profileTimer"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_requestedPositionVoltage"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_requestedTorqueCurrent"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_requestedVelocityVoltage"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_rollerConf"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_rollerFF"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_rollerSim"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_root"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_simAccelRPM2"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_simAccelRPS2"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_simRotations"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_simRotations"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"_simVelocityMPS"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"_simVeloRPM"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"_simVeloRPS"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot0DFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot0IFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot0PFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot1DFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot1IFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot1PFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot2DFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot2IFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_slot2PFactorEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_targetPositionEntry"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_targetVelocityEntry"},{"p":"tagalong.devices","c":"Encoders","l":"_ticksPerRotation"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_toleranceTimer"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_trapProfile"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"_tuningTabCounter"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"a"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"a"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"absoluteClamp(double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"AlgebraicUtils()","u":"%3Cinit%3E()"},{"p":"tagalong.measurements","c":"AlliancePose2d","l":"AlliancePose2d(Pose2d, Pose2d)","u":"%3Cinit%3E(edu.wpi.first.math.geometry.Pose2d,edu.wpi.first.math.geometry.Pose2d)"},{"p":"tagalong.measurements","c":"AlliancePose3d","l":"AlliancePose3d(Pose3d, Pose3d)","u":"%3Cinit%3E(edu.wpi.first.math.geometry.Pose3d,edu.wpi.first.math.geometry.Pose3d)"},{"p":"tagalong.measurements","c":"AllianceTranslation2d","l":"AllianceTranslation2d(Translation2d, Translation2d)","u":"%3Cinit%3E(edu.wpi.first.math.geometry.Translation2d,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"angle"},{"p":"tagalong.commands","c":"TagalongCommand","l":"anonymize()"},{"p":"tagalong.measurements","c":"AlliancePose2d","l":"blue"},{"p":"tagalong.measurements","c":"AlliancePose3d","l":"blue"},{"p":"tagalong.measurements","c":"AllianceTranslation2d","l":"blue"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"calculateGearRatio(int[][])"},{"p":"tagalong.devices","c":"Encoders","l":"CANCODER"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"carriageMassUnit"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"carriageMassValue"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"cart2pol(double, double)","u":"cart2pol(double,double)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"checkInitStatus()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"checkInitStatus()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"checkToleranceTime(boolean, double)","u":"checkToleranceTime(boolean,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"clamp(double, double, double)","u":"clamp(double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"clampElevatorPosition(double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"clampPivotPosition(double)"},{"p":"tagalong.logging","c":"ElevatorIOInputsAutoLogged","l":"clone()"},{"p":"tagalong.logging","c":"PivotIOInputsAutoLogged","l":"clone()"},{"p":"tagalong.logging","c":"RollerIOInputsAutoLogged","l":"clone()"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"closedLoopConfigsContinuousWrap"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"configAllDevices()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"configAllDevices()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"configMotor()"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"configShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"configShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"configShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"configShuffleboard()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"configShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"configTuningModes()"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"constrainAngleNegPiToPi(double)"},{"p":"tagalong.units","c":"DistanceUnits","l":"conversionToBase"},{"p":"tagalong.units","c":"MassUnits","l":"conversionToKgs"},{"p":"tagalong.units","c":"TimeUnits","l":"conversionToSeconds"},{"p":"tagalong.units","c":"AccelerationUnits","l":"convertX(double, AccelerationUnits)","u":"convertX(double,tagalong.units.AccelerationUnits)"},{"p":"tagalong.units","c":"DistanceUnits","l":"convertX(double, DistanceUnits)","u":"convertX(double,tagalong.units.DistanceUnits)"},{"p":"tagalong.units","c":"MassUnits","l":"convertX(double, MassUnits)","u":"convertX(double,tagalong.units.MassUnits)"},{"p":"tagalong.units","c":"TimeUnits","l":"convertX(double, TimeUnits)","u":"convertX(double,tagalong.units.TimeUnits)"},{"p":"tagalong.units","c":"VelocityUnits","l":"convertX(double, VelocityUnits)","u":"convertX(double,tagalong.units.VelocityUnits)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"cppMod(double, double)","u":"cppMod(double,double)"},{"p":"tagalong.controls","c":"PIDConstants","l":"d"},{"p":"tagalong.devices","c":"Motors","l":"DEFAULT_STATOR_CURRENT_LIMIT_AMPS"},{"p":"tagalong.devices","c":"Motors","l":"DEFAULT_SUPPLY_CURRENT_LIMIT_AMPS"},{"p":"tagalong.devices","c":"Motors","l":"DEFAULT_SUPPLY_CURRENT_THRESHOLD_LIMIT_AMPS"},{"p":"tagalong.devices","c":"Motors","l":"DEFAULT_SUPPLY_TIME_THRESHOLD"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"defaultLowerTolerance"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"defaultTolerancesUnit"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"defaultUpperTolerance"},{"p":"tagalong.units","c":"VelocityUnits","l":"DEGPS"},{"p":"tagalong.units","c":"AccelerationUnits","l":"DEGPS2"},{"p":"tagalong.units","c":"DistanceUnits","l":"DEGREE"},{"p":"tagalong.units","c":"VelocityUnits","l":"DEGREES_PER_HOUR"},{"p":"tagalong.units","c":"AccelerationUnits","l":"DEGREES_PER_HOUR2"},{"p":"tagalong.units","c":"VelocityUnits","l":"DEGREES_PER_MILLISECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"DEGREES_PER_MILLISECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"DEGREES_PER_MINUTE"},{"p":"tagalong.units","c":"AccelerationUnits","l":"DEGREES_PER_MINUTE2"},{"p":"tagalong.units","c":"VelocityUnits","l":"DEGREES_PER_SECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"DEGREES_PER_SECOND2"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"disableMicrosystem(boolean)"},{"p":"tagalong.units","c":"AccelerationUnits","l":"distanceUnit"},{"p":"tagalong.units","c":"VelocityUnits","l":"distanceUnit"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"drumCircumference"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"drumDiameter"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"drumDiameterUnit"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, Height)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, Height, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, Height, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, Height, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, Height, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(int, T, Height, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, Height)","u":"%3Cinit%3E(T,tagalong.measurements.Height)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, Height, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, Height, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, Height, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, Height, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"ElevateToCmd(T, Height, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(int, T, DoubleSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(int, T, DoubleSupplier, boolean)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(int, T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(int, T, DoubleSupplier, boolean, double, BooleanSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double,java.util.function.BooleanSupplier)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(T, DoubleSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(T, DoubleSupplier, boolean)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"ElevateToDynamicCmd(T, DoubleSupplier, boolean, double, BooleanSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double,java.util.function.BooleanSupplier)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, Height)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, Height, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, Height, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, Height, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, Height, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(int, T, Height, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Height,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, Height)","u":"%3Cinit%3E(T,tagalong.measurements.Height)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, Height, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, Height, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, Height, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, Height, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"ElevateXCmd(T, Height, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Height,boolean,double,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"Elevator(ElevatorConf)","u":"%3Cinit%3E(tagalong.subsystems.micro.confs.ElevatorConf)"},{"p":"tagalong.logging","c":"ElevatorIO.ElevatorIOInputs","l":"elevatorAppliedVolts"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"ElevatorConf(String, Motors[], int[], String[], InvertedValue[], NeutralModeValue[], NeutralModeValue[], int[][], DistanceUnits, double, double, DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, FeedforwardConstants, FeedforwardConstants, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, MassUnits, double, double, String, double, double, double, double, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, DistanceUnits, double)","u":"%3Cinit%3E(java.lang.String,tagalong.devices.Motors[],int[],java.lang.String[],com.ctre.phoenix6.signals.InvertedValue[],com.ctre.phoenix6.signals.NeutralModeValue[],com.ctre.phoenix6.signals.NeutralModeValue[],int[][],tagalong.units.DistanceUnits,double,double,tagalong.units.DistanceUnits,tagalong.units.VelocityUnits,double,tagalong.units.AccelerationUnits,double,tagalong.units.DistanceUnits,double,double,tagalong.controls.FeedforwardConstants,tagalong.controls.FeedforwardConstants,com.ctre.phoenix6.configs.CurrentLimitsConfigs,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.units.MassUnits,double,double,java.lang.String,double,double,double,double,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.units.DistanceUnits,double)"},{"p":"tagalong.logging","c":"ElevatorIO.ElevatorIOInputs","l":"elevatorCurrentAmps"},{"p":"tagalong.logging","c":"ElevatorIO.ElevatorIOInputs","l":"elevatorHeightM"},{"p":"tagalong.logging","c":"ElevatorIO.ElevatorIOInputs","l":"ElevatorIOInputs()","u":"%3Cinit%3E()"},{"p":"tagalong.logging","c":"ElevatorIOInputsAutoLogged","l":"ElevatorIOInputsAutoLogged()","u":"%3Cinit%3E()"},{"p":"tagalong.logging","c":"ElevatorIOTalonFX","l":"ElevatorIOTalonFX(Elevator)","u":"%3Cinit%3E(tagalong.subsystems.micro.Elevator)"},{"p":"tagalong.logging","c":"ElevatorIO.ElevatorIOInputs","l":"elevatorVelocityMPS"},{"p":"tagalong.commands.base","c":"ElevatorZeroCmd","l":"ElevatorZeroCmd(int, T)","u":"%3Cinit%3E(int,T)"},{"p":"tagalong.commands.base","c":"ElevatorZeroCmd","l":"ElevatorZeroCmd(T)","u":"%3Cinit%3E(T)"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"elevatorZeroingDurationS"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"elevatorZeroingPower"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"elevatorZeroingStallToleranceM"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderCanBus"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderConfig"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderConfigClockwisePositive"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderConfigMagnetOffsetUnit"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderConfigMagnetOffsetValue"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderConfigZeroToOne"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderDeviceID"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderToPivotRatio"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"encoderType"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"ElevatorZeroCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"end(boolean)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"ElevatorZeroCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"execute()"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"execute()"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"exp(Twist2d)","u":"exp(edu.wpi.first.math.geometry.Twist2d)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"extractTFMatrixYRot(Matrix)","u":"extractTFMatrixYRot(edu.wpi.first.math.Matrix)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"extractTFMatrixZ(Matrix)","u":"extractTFMatrixZ(edu.wpi.first.math.Matrix)"},{"p":"tagalong.devices","c":"Motors","l":"FALCON500"},{"p":"tagalong.devices","c":"Motors","l":"FALCON500_FOC"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"feedForward"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"feedForward"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"feedForward"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"FeedforwardConstants(double, double, double, double)","u":"%3Cinit%3E(double,double,double,double)"},{"p":"tagalong.units","c":"DistanceUnits","l":"FEET"},{"p":"tagalong.units","c":"VelocityUnits","l":"FEET_PER_HOUR"},{"p":"tagalong.units","c":"AccelerationUnits","l":"FEET_PER_HOUR2"},{"p":"tagalong.units","c":"VelocityUnits","l":"FEET_PER_MILLISECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"FEET_PER_MILLISECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"FEET_PER_MINUTE"},{"p":"tagalong.units","c":"AccelerationUnits","l":"FEET_PER_MINUTE2"},{"p":"tagalong.units","c":"VelocityUnits","l":"FEET_PER_SECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"FEET_PER_SECOND2"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"ffOffsetUnit"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"ffOffsetValue"},{"p":"tagalong","c":"TagalongConfiguration","l":"ffTuningMicrosystems"},{"p":"tagalong.subsystems.micro.confs","c":"FlywheelConf","l":"FlywheelConf(String, Motors[], int[], String[], InvertedValue[], NeutralModeValue[], NeutralModeValue[], int[][], DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, FeedforwardConstants, FeedforwardConstants, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, double, String, double, double, int, double, double)","u":"%3Cinit%3E(java.lang.String,tagalong.devices.Motors[],int[],java.lang.String[],com.ctre.phoenix6.signals.InvertedValue[],com.ctre.phoenix6.signals.NeutralModeValue[],com.ctre.phoenix6.signals.NeutralModeValue[],int[][],tagalong.units.DistanceUnits,tagalong.units.VelocityUnits,double,tagalong.units.AccelerationUnits,double,tagalong.units.DistanceUnits,double,double,tagalong.controls.FeedforwardConstants,tagalong.controls.FeedforwardConstants,com.ctre.phoenix6.configs.CurrentLimitsConfigs,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,double,java.lang.String,double,double,int,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"followLastProfile()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"followLastProfile()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"followLastProfile()"},{"p":"tagalong.logging","c":"ElevatorIOInputsAutoLogged","l":"fromLog(LogTable)","u":"fromLog(org.littletonrobotics.junction.LogTable)"},{"p":"tagalong.logging","c":"PivotIOInputsAutoLogged","l":"fromLog(LogTable)","u":"fromLog(org.littletonrobotics.junction.LogTable)"},{"p":"tagalong.logging","c":"RollerIOInputsAutoLogged","l":"fromLog(LogTable)","u":"fromLog(org.littletonrobotics.junction.LogTable)"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"g"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"g"},{"p":"tagalong.math","c":"GeometricUtils","l":"GeometricUtils()","u":"%3Cinit%3E()"},{"p":"tagalong.measurements","c":"AlliancePose2d","l":"get(boolean)"},{"p":"tagalong.measurements","c":"AlliancePose3d","l":"get(boolean)"},{"p":"tagalong.measurements","c":"AllianceTranslation2d","l":"get(boolean)"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"getArmFeedforward()"},{"p":"tagalong.devices","c":"Motors","l":"getDefaults()"},{"p":"tagalong.measurements","c":"Angle","l":"getDegrees()"},{"p":"tagalong.subsystems.micro.augments","c":"ElevatorAugment","l":"getElevator()"},{"p":"tagalong.subsystems.micro.augments","c":"ElevatorAugment","l":"getElevator(int)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"getElevatorBaseStageLigament()"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"getElevatorFeedforward()"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"getElevatorHeightM()"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"getElevatorStage1Ligament()"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"getElevatorVelocityMPS()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"getFFPositionRad()"},{"p":"tagalong.measurements","c":"Height","l":"getHeightM()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"getMotor()"},{"p":"tagalong.subsystems.micro.augments","c":"PivotAugment","l":"getPivot()"},{"p":"tagalong.subsystems.micro.augments","c":"PivotAugment","l":"getPivot(int)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"getPivotLigament()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"getPivotPosition()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"getPivotPower()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"getPivotVelocity()"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"getPointInFrame(Matrix, Matrix)","u":"getPointInFrame(edu.wpi.first.math.Matrix,edu.wpi.first.math.Matrix)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"getPrimaryMotor()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"getPrimaryMotorPosition()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"getPrimaryMotorPower()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"getPrimaryMotorVelocity()"},{"p":"tagalong.controls","c":"PIDConstants","l":"getProfiledController(TrapezoidProfile.Constraints)","u":"getProfiledController(edu.wpi.first.math.trajectory.TrapezoidProfile.Constraints)"},{"p":"tagalong.measurements","c":"Angle","l":"getRadians()"},{"p":"tagalong.subsystems.micro.augments","c":"RollerAugment","l":"getRoller()"},{"p":"tagalong.subsystems.micro.augments","c":"RollerAugment","l":"getRoller(int)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"getRollerLigaments()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"getRollerPosition()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"getRollerPower()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"getRollerVelocity()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"getRoot()"},{"p":"tagalong.measurements","c":"Angle","l":"getRotations()"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"getSimpleMotorFeedforward()"},{"p":"tagalong.measurements","c":"AlliancePose3d","l":"getTranslation2d(boolean)"},{"p":"tagalong.controls","c":"PIDConstants","l":"getUnprofiledController()"},{"p":"tagalong.units","c":"MassUnits","l":"GRAMS"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"holdCurrentPosition()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"holdCurrentPosition()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"holdCurrentPosition()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"holdCurrentPosition()"},{"p":"tagalong.units","c":"TimeUnits","l":"HOUR"},{"p":"tagalong.controls","c":"PIDConstants","l":"i"},{"p":"tagalong.units","c":"DistanceUnits","l":"INCH"},{"p":"tagalong.units","c":"VelocityUnits","l":"INCHES_PER_HOUR"},{"p":"tagalong.units","c":"AccelerationUnits","l":"INCHES_PER_HOUR2"},{"p":"tagalong.units","c":"VelocityUnits","l":"INCHES_PER_MILLISECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"INCHES_PER_MILLISECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"INCHES_PER_MINUTE"},{"p":"tagalong.units","c":"AccelerationUnits","l":"INCHES_PER_MINUTE2"},{"p":"tagalong.units","c":"VelocityUnits","l":"INCHES_PER_SECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"INCHES_PER_SECOND2"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"ElevatorZeroCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"initialize()"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"initialize()"},{"p":"tagalong.math","c":"GeometricUtils","l":"inRange(Pose2d, Rotation2d, Pose2d, double, double)","u":"inRange(edu.wpi.first.math.geometry.Pose2d,edu.wpi.first.math.geometry.Rotation2d,edu.wpi.first.math.geometry.Pose2d,double,double)"},{"p":"tagalong.math","c":"GeometricUtils","l":"inRectangle(double, double, double, double, double, double, double, double, double, double)","u":"inRectangle(double,double,double,double,double,double,double,double,double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"inTolerance(double, double, double)","u":"inTolerance(double,double,double)"},{"p":"tagalong.math","c":"GeometricUtils","l":"inTriangle(double, double, double, double, double, double, double, double)","u":"inTriangle(double,double,double,double,double,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"isElevatorInTolerance(double, double)","u":"isElevatorInTolerance(double,double)"},{"p":"tagalong.commands.base","c":"ElevateToCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"ElevateToDynamicCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"ElevateXCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"ElevatorZeroCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"isFinished()"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"isFinished()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"isPivotInAbsoluteTolerance(double, double)","u":"isPivotInAbsoluteTolerance(double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"isPivotInTolerance(double, double)","u":"isPivotInTolerance(double,double)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"isProfileFinished()"},{"p":"tagalong","c":"TagalongConfiguration","l":"isReplayMode"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"isRollerAtTargetSpeed(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"isRollerInTolerance(double, double)","u":"isRollerInTolerance(double,double)"},{"p":"tagalong.units","c":"DistanceUnits","l":"isRotational"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"isSafeToMove()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"isSafeToMove()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"isSubsystemDisabled()"},{"p":"tagalong.units","c":"MassUnits","l":"KILOGRAMS"},{"p":"tagalong.devices","c":"Motors","l":"KRAKEN_X44"},{"p":"tagalong.devices","c":"Motors","l":"KRAKEN_X44_FOC"},{"p":"tagalong.devices","c":"Motors","l":"KRAKEN_X60"},{"p":"tagalong.devices","c":"Motors","l":"KRAKEN_X60_FOC"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"ligamentsLength"},{"p":"tagalong.math","c":"LinearizedLookupTable","l":"LinearizedLookupTable(double[], double[])","u":"%3Cinit%3E(double[],double[])"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"lineLength"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"log(Pose2d)","u":"log(edu.wpi.first.math.geometry.Pose2d)"},{"p":"tagalong.math","c":"LinearizedLookupTable","l":"lookup(double)"},{"p":"tagalong","c":"TagalongConfiguration","l":"LOOP_PERIOD_S"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"makeYRotTFMatrix(double, double, double, double)","u":"makeYRotTFMatrix(double,double,double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"makeZRotTFMatrix(double, double, double, double)","u":"makeZRotTFMatrix(double,double,double,double)"},{"p":"tagalong.devices","c":"Motors","l":"maxRPM"},{"p":"tagalong.devices","c":"Motors","l":"maxRPS"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"mech2dDim"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"mech2dDim"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"mech2dDim"},{"p":"tagalong.units","c":"DistanceUnits","l":"METER"},{"p":"tagalong.units","c":"VelocityUnits","l":"METERS_PER_HOUR"},{"p":"tagalong.units","c":"AccelerationUnits","l":"METERS_PER_HOUR2"},{"p":"tagalong.units","c":"VelocityUnits","l":"METERS_PER_MILLISECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"METERS_PER_MILLISECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"METERS_PER_MINUTE"},{"p":"tagalong.units","c":"AccelerationUnits","l":"METERS_PER_MINUTE2"},{"p":"tagalong.units","c":"VelocityUnits","l":"METERS_PER_SECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"METERS_PER_SECOND2"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"metersToMotor(double)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"Microsystem(MicrosystemConf)","u":"%3Cinit%3E(tagalong.subsystems.micro.confs.MicrosystemConf)"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"MicrosystemConf(String, Motors[], int[], String[], InvertedValue[], NeutralModeValue[], NeutralModeValue[], int[][], DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants)","u":"%3Cinit%3E(java.lang.String,tagalong.devices.Motors[],int[],java.lang.String[],com.ctre.phoenix6.signals.InvertedValue[],com.ctre.phoenix6.signals.NeutralModeValue[],com.ctre.phoenix6.signals.NeutralModeValue[],int[][],tagalong.units.DistanceUnits,tagalong.units.VelocityUnits,double,tagalong.units.AccelerationUnits,double,tagalong.units.DistanceUnits,double,double,com.ctre.phoenix6.configs.CurrentLimitsConfigs,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants)"},{"p":"tagalong.units","c":"TimeUnits","l":"MILLISECOND"},{"p":"tagalong.units","c":"TimeUnits","l":"MINUTE"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorCanBus"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorConfig"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorDeviceIDs"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorDirection"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorDisabledBrakeMode"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorEnabledBrakeMode"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"motorResetConfig()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"motorResetConfig()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"motorResetConfig()"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"motorToEncoderRatio"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorToMechRatio"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"motorToMeters(double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"motorToPivotRot(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"motorToRollerRot(double)"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"motorTypes"},{"p":"tagalong.units","c":"VelocityUnits","l":"MPS"},{"p":"tagalong.units","c":"AccelerationUnits","l":"MPS2"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"name"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"numMotors"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"onDisable()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"onDisable()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"onDisable()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"onDisable()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"onDisable()"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"onEnable()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"onEnable()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"onEnable()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"onEnable()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"onEnable()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"onTeleopDisable()"},{"p":"tagalong.units","c":"MassUnits","l":"OUNCES"},{"p":"tagalong.controls","c":"PIDConstants","l":"p"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"periodic()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"periodic()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"periodic()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"periodic()"},{"p":"tagalong.controls","c":"PIDConstants","l":"PIDConstants(double, double, double)","u":"%3Cinit%3E(double,double,double)"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"PIDSGVAConstants(double, double, double, double, double, double, double)","u":"%3Cinit%3E(double,double,double,double,double,double,double)"},{"p":"tagalong","c":"TagalongConfiguration","l":"pidTuningMicrosystems"},{"p":"tagalong.devices","c":"Encoders","l":"PIGEON2_PITCH"},{"p":"tagalong.devices","c":"Encoders","l":"PIGEON2_ROLL"},{"p":"tagalong.devices","c":"Encoders","l":"PIGEON2_YAW"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"Pivot(PivotConf)","u":"%3Cinit%3E(tagalong.subsystems.micro.confs.PivotConf)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"PivotAimAtCmd(int, T, Supplier, Translation2d)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"PivotAimAtCmd(int, T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"PivotAimAtCmd(int, T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"PivotAimAtCmd(T, Supplier, Translation2d)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"PivotAimAtCmd(T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"PivotAimAtCmd(T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"PivotAimAtYawCompCmd(int, T, Supplier, Translation2d)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"PivotAimAtYawCompCmd(int, T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"PivotAimAtYawCompCmd(int, T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"PivotAimAtYawCompCmd(T, Supplier, Translation2d)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"PivotAimAtYawCompCmd(T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"PivotAimAtYawCompCmd(T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.logging","c":"PivotIO.PivotIOInputs","l":"pivotAppliedVolts"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"PivotConf(String, Motors[], int[], String[], InvertedValue[], Encoders, int, String, boolean, boolean, DistanceUnits, double, NeutralModeValue[], NeutralModeValue[], int[][], int[][], DistanceUnits, double, double, DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, FeedforwardConstants, FeedforwardConstants, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, boolean, DistanceUnits, double, DistanceUnits, double, double, String, double, double, double, double)","u":"%3Cinit%3E(java.lang.String,tagalong.devices.Motors[],int[],java.lang.String[],com.ctre.phoenix6.signals.InvertedValue[],tagalong.devices.Encoders,int,java.lang.String,boolean,boolean,tagalong.units.DistanceUnits,double,com.ctre.phoenix6.signals.NeutralModeValue[],com.ctre.phoenix6.signals.NeutralModeValue[],int[][],int[][],tagalong.units.DistanceUnits,double,double,tagalong.units.DistanceUnits,tagalong.units.VelocityUnits,double,tagalong.units.AccelerationUnits,double,tagalong.units.DistanceUnits,double,double,tagalong.controls.FeedforwardConstants,tagalong.controls.FeedforwardConstants,com.ctre.phoenix6.configs.CurrentLimitsConfigs,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,boolean,tagalong.units.DistanceUnits,double,tagalong.units.DistanceUnits,double,double,java.lang.String,double,double,double,double)"},{"p":"tagalong.logging","c":"PivotIO.PivotIOInputs","l":"pivotCurrentAmps"},{"p":"tagalong.logging","c":"PivotIO.PivotIOInputs","l":"PivotIOInputs()","u":"%3Cinit%3E()"},{"p":"tagalong.logging","c":"PivotIOInputsAutoLogged","l":"PivotIOInputsAutoLogged()","u":"%3Cinit%3E()"},{"p":"tagalong.logging","c":"PivotIOTalonFX","l":"PivotIOTalonFX(Pivot)","u":"%3Cinit%3E(tagalong.subsystems.micro.Pivot)"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"pivotLengthM"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"pivotMOI"},{"p":"tagalong.logging","c":"PivotIO.PivotIOInputs","l":"pivotPositionRot"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"pivotRotToMotor(double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, Angle)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, Angle, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, Angle, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, Angle, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, Angle)","u":"%3Cinit%3E(T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, Angle, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, Angle, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, Angle, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToAbsoluteCmd","l":"PivotToAbsoluteCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, Angle)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, Angle, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, Angle, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, Angle, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, Angle)","u":"%3Cinit%3E(T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, Angle, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, Angle, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, Angle, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToCmd","l":"PivotToCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(int, T, DoubleSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(int, T, DoubleSupplier, boolean)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(int, T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(int, T, DoubleSupplier, boolean, double, BooleanSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double,java.util.function.BooleanSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(T, DoubleSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(T, DoubleSupplier, boolean)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToDynamicAbsoluteCmd","l":"PivotToDynamicAbsoluteCmd(T, DoubleSupplier, boolean, double, BooleanSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double,java.util.function.BooleanSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(int, T, DoubleSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(int, T, DoubleSupplier, boolean)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(int, T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(int, T, DoubleSupplier, boolean, double, BooleanSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double,java.util.function.BooleanSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(T, DoubleSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(T, DoubleSupplier, boolean)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotToDynamicCmd","l":"PivotToDynamicCmd(T, DoubleSupplier, boolean, double, BooleanSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double,java.util.function.BooleanSupplier)"},{"p":"tagalong.logging","c":"PivotIO.PivotIOInputs","l":"pivotVelocityRPS"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, Angle)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, Angle, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, Angle, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, Angle, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, Angle)","u":"%3Cinit%3E(T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, Angle, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, Angle, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, Angle, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"PivotXCmd","l":"PivotXCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"placeInScopeDeg(double, double)","u":"placeInScopeDeg(double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"placeInScopeRad(double, double)","u":"placeInScopeRad(double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"placeInScopeRot(double, double)","u":"placeInScopeRot(double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"placePivotInClosestRot(double, double)","u":"placePivotInClosestRot(double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"pol2cart(double, double)","u":"pol2cart(double,double)"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"pose2DToZRotTFMatrix(Pose2d)","u":"pose2DToZRotTFMatrix(edu.wpi.first.math.geometry.Pose2d)"},{"p":"tagalong.math","c":"WpilibUtils","l":"poseToArray(Pose2d, double[])","u":"poseToArray(edu.wpi.first.math.geometry.Pose2d,double[])"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"positionalLimitUnit"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"positionalMax"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"positionalMin"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"positionTransform(Supplier, DoubleSupplier, Translation2d)","u":"positionTransform(java.util.function.Supplier,java.util.function.DoubleSupplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"PivotAimAtYawCompCmd","l":"positionTransform(Supplier, DoubleSupplier, Translation2d, double, double)","u":"positionTransform(java.util.function.Supplier,java.util.function.DoubleSupplier,edu.wpi.first.math.geometry.Translation2d,double,double)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"positionTransform(Supplier, DoubleSupplier, Translation2d)","u":"positionTransform(java.util.function.Supplier,java.util.function.DoubleSupplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"PivotAimAtCmd","l":"positionTransform(Supplier, DoubleSupplier, Translation2d, double, double)","u":"positionTransform(java.util.function.Supplier,java.util.function.DoubleSupplier,edu.wpi.first.math.geometry.Translation2d,double,double)"},{"p":"tagalong.units","c":"MassUnits","l":"POUNDS"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"profileOffsetUnit"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"profileOffsetValue"},{"p":"tagalong.units","c":"DistanceUnits","l":"RADIAN"},{"p":"tagalong.units","c":"VelocityUnits","l":"RADIANS_PER_HOUR"},{"p":"tagalong.units","c":"AccelerationUnits","l":"RADIANS_PER_HOUR2"},{"p":"tagalong.units","c":"VelocityUnits","l":"RADIANS_PER_MILLISECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"RADIANS_PER_MILLISECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"RADIANS_PER_MINUTE"},{"p":"tagalong.units","c":"AccelerationUnits","l":"RADIANS_PER_MINUTE2"},{"p":"tagalong.units","c":"VelocityUnits","l":"RADIANS_PER_SECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"RADIANS_PER_SECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"RADPS"},{"p":"tagalong.units","c":"AccelerationUnits","l":"RADPS2"},{"p":"tagalong.measurements","c":"AlliancePose2d","l":"red"},{"p":"tagalong.measurements","c":"AlliancePose3d","l":"red"},{"p":"tagalong.measurements","c":"AllianceTranslation2d","l":"red"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"resetToleranceTimer()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"Roller(RollerConf)","u":"%3Cinit%3E(tagalong.subsystems.micro.confs.RollerConf)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"RollerAimAtCmd(int, T, Supplier, Translation2d)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"RollerAimAtCmd(int, T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"RollerAimAtCmd(int, T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"RollerAimAtCmd(T, Supplier, Translation2d)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"RollerAimAtCmd(T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"RollerAimAtCmd","l":"RollerAimAtCmd(T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"RollerAimAtYawCompCmd(int, T, Supplier, Translation2d)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"RollerAimAtYawCompCmd(int, T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"RollerAimAtYawCompCmd(int, T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"RollerAimAtYawCompCmd(T, Supplier, Translation2d)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d)"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"RollerAimAtYawCompCmd(T, Supplier, Translation2d, boolean)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean)"},{"p":"tagalong.commands.aim","c":"RollerAimAtYawCompCmd","l":"RollerAimAtYawCompCmd(T, Supplier, Translation2d, boolean, double)","u":"%3Cinit%3E(T,java.util.function.Supplier,edu.wpi.first.math.geometry.Translation2d,boolean,double)"},{"p":"tagalong.logging","c":"RollerIO.RollerIOInputs","l":"rollerAppliedVolts"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"RollerConf(String, Motors[], int[], String[], InvertedValue[], NeutralModeValue[], NeutralModeValue[], int[][], DistanceUnits, VelocityUnits, double, AccelerationUnits, double, DistanceUnits, double, double, FeedforwardConstants, FeedforwardConstants, CurrentLimitsConfigs, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, PIDSGVAConstants, double, String, double, double, int, double, double)","u":"%3Cinit%3E(java.lang.String,tagalong.devices.Motors[],int[],java.lang.String[],com.ctre.phoenix6.signals.InvertedValue[],com.ctre.phoenix6.signals.NeutralModeValue[],com.ctre.phoenix6.signals.NeutralModeValue[],int[][],tagalong.units.DistanceUnits,tagalong.units.VelocityUnits,double,tagalong.units.AccelerationUnits,double,tagalong.units.DistanceUnits,double,double,tagalong.controls.FeedforwardConstants,tagalong.controls.FeedforwardConstants,com.ctre.phoenix6.configs.CurrentLimitsConfigs,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,tagalong.controls.PIDSGVAConstants,double,java.lang.String,double,double,int,double,double)"},{"p":"tagalong.logging","c":"RollerIO.RollerIOInputs","l":"rollerCurrentAmps"},{"p":"tagalong.logging","c":"RollerIO.RollerIOInputs","l":"RollerIOInputs()","u":"%3Cinit%3E()"},{"p":"tagalong.logging","c":"RollerIOInputsAutoLogged","l":"RollerIOInputsAutoLogged()","u":"%3Cinit%3E()"},{"p":"tagalong.logging","c":"RollerIOTalonFX","l":"RollerIOTalonFX(Roller)","u":"%3Cinit%3E(tagalong.subsystems.micro.Roller)"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"rollerMOI"},{"p":"tagalong.logging","c":"RollerIO.RollerIOInputs","l":"rollerPositionRot"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"rollerRotToMotor(double)"},{"p":"tagalong.logging","c":"RollerIO.RollerIOInputs","l":"rollerVelocityRPS"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, Angle)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, Angle, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, Angle, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, Angle, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, Angle)","u":"%3Cinit%3E(T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, Angle, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, Angle, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, Angle, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollToCmd","l":"RollToCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"RollToDynamicCmd(int, T, DoubleSupplier)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"RollToDynamicCmd(int, T, DoubleSupplier, boolean)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"RollToDynamicCmd(int, T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(int,T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"RollToDynamicCmd(T, DoubleSupplier)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"RollToDynamicCmd(T, DoubleSupplier, boolean)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean)"},{"p":"tagalong.commands.base","c":"RollToDynamicCmd","l":"RollToDynamicCmd(T, DoubleSupplier, boolean, double)","u":"%3Cinit%3E(T,java.util.function.DoubleSupplier,boolean,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, Angle)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, Angle, boolean)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, Angle, boolean, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, Angle, boolean, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(int, T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(int,T,double,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, Angle)","u":"%3Cinit%3E(T,tagalong.measurements.Angle)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, Angle, boolean)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, Angle, boolean, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, Angle, boolean, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, Angle, boolean, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, Angle, boolean, double, double, double, double)","u":"%3Cinit%3E(T,tagalong.measurements.Angle,boolean,double,double,double,double)"},{"p":"tagalong.commands.base","c":"RollXCmd","l":"RollXCmd(T, double, boolean, double, double, double, double)","u":"%3Cinit%3E(T,double,boolean,double,double,double,double)"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"rootName"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"rootName"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"rootName"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"rootX"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"rootX"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"rootX"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"rootY"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"rootY"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"rootY"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"rotateVector(Matrix, double)","u":"rotateVector(edu.wpi.first.math.Matrix,double)"},{"p":"tagalong.units","c":"DistanceUnits","l":"ROTATION"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"rotationalLimitUnit"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"rotationalMax"},{"p":"tagalong.subsystems.micro.confs","c":"PivotConf","l":"rotationalMin"},{"p":"tagalong.units","c":"VelocityUnits","l":"ROTATIONS_PER_HOUR"},{"p":"tagalong.units","c":"AccelerationUnits","l":"ROTATIONS_PER_HOUR2"},{"p":"tagalong.units","c":"VelocityUnits","l":"ROTATIONS_PER_MILLISECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"ROTATIONS_PER_MILLISECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"ROTATIONS_PER_MINUTE"},{"p":"tagalong.units","c":"AccelerationUnits","l":"ROTATIONS_PER_MINUTE2"},{"p":"tagalong.units","c":"VelocityUnits","l":"ROTATIONS_PER_SECOND"},{"p":"tagalong.units","c":"AccelerationUnits","l":"ROTATIONS_PER_SECOND2"},{"p":"tagalong.units","c":"VelocityUnits","l":"ROTPS"},{"p":"tagalong.units","c":"AccelerationUnits","l":"ROTPS2"},{"p":"tagalong.units","c":"VelocityUnits","l":"RPS"},{"p":"tagalong.units","c":"AccelerationUnits","l":"RPS2"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"s"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"s"},{"p":"tagalong.units","c":"TimeUnits","l":"SECOND"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"setBrakeMode(boolean)"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"setDisabled(boolean)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorHeight(double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(double, double)","u":"setElevatorProfile(double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(double, double, double)","u":"setElevatorProfile(double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(double, double, double, double)","u":"setElevatorProfile(double,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(double, double, double, double, boolean)","u":"setElevatorProfile(double,double,double,double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(Height)","u":"setElevatorProfile(tagalong.measurements.Height)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(Height, double)","u":"setElevatorProfile(tagalong.measurements.Height,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(Height, double, double)","u":"setElevatorProfile(tagalong.measurements.Height,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(Height, double, double, double)","u":"setElevatorProfile(tagalong.measurements.Height,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorProfile(Height, double, double, double, boolean)","u":"setElevatorProfile(tagalong.measurements.Height,double,double,double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"setElevatorVelocity(double, boolean)","u":"setElevatorVelocity(double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"setFollowProfile(boolean)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"setHoldPosition(boolean)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotPower(double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(Angle)","u":"setPivotProfile(tagalong.measurements.Angle)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(Angle, double)","u":"setPivotProfile(tagalong.measurements.Angle,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(Angle, double, double)","u":"setPivotProfile(tagalong.measurements.Angle,double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(Angle, double, double, double)","u":"setPivotProfile(tagalong.measurements.Angle,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(Angle, double, double, double, boolean)","u":"setPivotProfile(tagalong.measurements.Angle,double,double,double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(double, double)","u":"setPivotProfile(double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(double, double, double)","u":"setPivotProfile(double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(double, double, double, double)","u":"setPivotProfile(double,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotProfile(double, double, double, double, boolean)","u":"setPivotProfile(double,double,double,double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"setPivotVelocity(double, boolean)","u":"setPivotVelocity(double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"setPrimaryPower(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerPower(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerPowerCmd(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(Angle)","u":"setRollerProfile(tagalong.measurements.Angle)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(Angle, double)","u":"setRollerProfile(tagalong.measurements.Angle,double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(Angle, double, double)","u":"setRollerProfile(tagalong.measurements.Angle,double,double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(Angle, double, double, double)","u":"setRollerProfile(tagalong.measurements.Angle,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(Angle, double, double, double, boolean)","u":"setRollerProfile(tagalong.measurements.Angle,double,double,double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(double, double)","u":"setRollerProfile(double,double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(double, double, double)","u":"setRollerProfile(double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(double, double, double, double)","u":"setRollerProfile(double,double,double,double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerProfile(double, double, double, double, boolean)","u":"setRollerProfile(double,double,double,double,boolean)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerRPSCmd(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerRPSWithFFCmd(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"setRollerVelocity(double, boolean)","u":"setRollerVelocity(double,boolean)"},{"p":"tagalong","c":"TagalongConfiguration","l":"shuffleboardMicrosystems"},{"p":"tagalong.subsystems.micro.confs","c":"ElevatorConf","l":"simFeedForward"},{"p":"tagalong.subsystems.micro.confs","c":"RollerConf","l":"simNumLigaments"},{"p":"tagalong.devices","c":"Motors","l":"simSupplier"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"simulationInit()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"simulationInit()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"simulationInit()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"simulationInit()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"simulationInit()"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"simulationPeriodic()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"simulationPeriodic()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"simulationPeriodic()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"simulationPeriodic()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"simulationPeriodic()"},{"p":"tagalong.math","c":"LinearizedLookupTable","l":"size()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"startEndRollerPowerCmd(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"startEndRollerRPSCmd(double)"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"startEndRollerRPSWithFFCmd(double)"},{"p":"tagalong.commands","c":"TagalongCommand","l":"TagalongCommand()","u":"%3Cinit%3E()"},{"p":"tagalong","c":"TagalongConfiguration","l":"TagalongConfiguration()","u":"%3Cinit%3E()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"TagalongSubsystemBase(Object)","u":"%3Cinit%3E(java.lang.Object)"},{"p":"tagalong.units","c":"AccelerationUnits","l":"timeUnit"},{"p":"tagalong.units","c":"VelocityUnits","l":"timeUnit"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"toCTRESlot0Configuration()"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"toCTRESlot1Configuration()"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"toCTRESlot2Configuration()"},{"p":"tagalong.logging","c":"ElevatorIOInputsAutoLogged","l":"toLog(LogTable)","u":"toLog(org.littletonrobotics.junction.LogTable)"},{"p":"tagalong.logging","c":"PivotIOInputsAutoLogged","l":"toLog(LogTable)","u":"toLog(org.littletonrobotics.junction.LogTable)"},{"p":"tagalong.logging","c":"RollerIOInputsAutoLogged","l":"toLog(LogTable)","u":"toLog(org.littletonrobotics.junction.LogTable)"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"trapezoidalAccelerationUnit"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"trapezoidalLimits"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"trapezoidalLimitsAcceleration"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"trapezoidalLimitsVelocity"},{"p":"tagalong.subsystems.micro.confs","c":"MicrosystemConf","l":"trapezoidalVelocityUnit"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"updateAllPIDSGVA()"},{"p":"tagalong.logging","c":"ElevatorIO","l":"updateInputs(ElevatorIO.ElevatorIOInputs)","u":"updateInputs(tagalong.logging.ElevatorIO.ElevatorIOInputs)"},{"p":"tagalong.logging","c":"ElevatorIOTalonFX","l":"updateInputs(ElevatorIO.ElevatorIOInputs)","u":"updateInputs(tagalong.logging.ElevatorIO.ElevatorIOInputs)"},{"p":"tagalong.logging","c":"PivotIO","l":"updateInputs(PivotIO.PivotIOInputs)","u":"updateInputs(tagalong.logging.PivotIO.PivotIOInputs)"},{"p":"tagalong.logging","c":"PivotIOTalonFX","l":"updateInputs(PivotIO.PivotIOInputs)","u":"updateInputs(tagalong.logging.PivotIO.PivotIOInputs)"},{"p":"tagalong.logging","c":"RollerIO","l":"updateInputs(RollerIO.RollerIOInputs)","u":"updateInputs(tagalong.logging.RollerIO.RollerIOInputs)"},{"p":"tagalong.logging","c":"RollerIOTalonFX","l":"updateInputs(RollerIO.RollerIOInputs)","u":"updateInputs(tagalong.logging.RollerIO.RollerIOInputs)"},{"p":"tagalong.subsystems.micro","c":"Elevator","l":"updateShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"updateShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Pivot","l":"updateShuffleboard()"},{"p":"tagalong.subsystems.micro","c":"Roller","l":"updateShuffleboard()"},{"p":"tagalong.subsystems","c":"TagalongSubsystemBase","l":"updateShuffleboard()"},{"p":"tagalong.controls","c":"FeedforwardConstants","l":"v"},{"p":"tagalong.controls","c":"PIDSGVAConstants","l":"v"},{"p":"tagalong.devices","c":"Encoders","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.devices","c":"Motors","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.units","c":"AccelerationUnits","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.units","c":"DistanceUnits","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.units","c":"MassUnits","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.units","c":"TimeUnits","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.units","c":"VelocityUnits","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"tagalong.devices","c":"Encoders","l":"values()"},{"p":"tagalong.devices","c":"Motors","l":"values()"},{"p":"tagalong.units","c":"AccelerationUnits","l":"values()"},{"p":"tagalong.units","c":"DistanceUnits","l":"values()"},{"p":"tagalong.units","c":"MassUnits","l":"values()"},{"p":"tagalong.units","c":"TimeUnits","l":"values()"},{"p":"tagalong.units","c":"VelocityUnits","l":"values()"},{"p":"tagalong.subsystems.micro","c":"Microsystem","l":"waitForInitialization()"},{"p":"tagalong.math","c":"WpilibUtils","l":"WpilibUtils()","u":"%3Cinit%3E()"},{"p":"tagalong.math","c":"AlgebraicUtils","l":"zRotTFMatrixToPose(Matrix)","u":"zRotTFMatrixToPose(edu.wpi.first.math.Matrix)"}];updateSearchResults();
\ No newline at end of file
diff --git a/docs/src-html/tagalong/subsystems/micro/Roller.html b/docs/src-html/tagalong/subsystems/micro/Roller.html
index d18801b..a754863 100644
--- a/docs/src-html/tagalong/subsystems/micro/Roller.html
+++ b/docs/src-html/tagalong/subsystems/micro/Roller.html
@@ -185,7 +185,7 @@
172 _rollerSim = new FlywheelSim(
173 LinearSystemId.createFlywheelSystem(dcMotor, _rollerConf.rollerMOI, _motorToMechRatio),
174 dcMotor,
-175 null
+175 _motorToMechRatio
176 );
177 _mechanism = new Mechanism2d(_rollerConf.mech2dDim, _rollerConf.mech2dDim);
178 SmartDashboard.putData("SIM: " + _rollerConf.name, _mechanism);
@@ -193,447 +193,449 @@
180 _root = _mechanism.getRoot(_rollerConf.name, _rollerConf.rootX, _rollerConf.rootY);
181 for (int i = 1; i <= _rollerConf.simNumLigaments; i++) {
182 MechanismLigament2d ligament = new MechanismLigament2d(
-183 _rollerConf.name + " " + i, 10, i * (360 / _rollerConf.simNumLigaments)
-184 );
-185 _rollerLigaments.add(ligament);
-186 _root.append(ligament);
-187
-188 // FUTURE DEV: allow for explicit color configuration
-189 ligament.setColor(new Color8Bit(
-190 i * 255 / _rollerConf.simNumLigaments,
-191 i * 255 / _rollerConf.simNumLigaments,
-192 i * 255 / _rollerConf.simNumLigaments
-193 ));
-194 }
-195 _primaryMotorSim = _primaryMotor.getSimState();
-196 }
-197
-198 @Override
-199 public void simulationPeriodic() {
-200 if (_isMicrosystemDisabled) {
-201 return;
-202 }
-203 _rollerSim.setInput(getPrimaryMotorPower() * RobotController.getBatteryVoltage());
-204 _rollerSim.update(TagalongConfiguration.LOOP_PERIOD_S);
-205
-206 double prevSimVelo = _simVeloRPM;
-207 _simVeloRPM = _rollerSim.getAngularVelocityRPM();
-208 _simRotations += _simVeloRPM * TagalongConfiguration.LOOP_PERIOD_S / 60.0;
-209 _simAccelRPM2 = (_simVeloRPM - prevSimVelo) * 60.0 / TagalongConfiguration.LOOP_PERIOD_S;
-210
-211 for (int i = 1; i <= _rollerConf.simNumLigaments; i++) {
-212 _rollerLigaments.get(i - 1).setAngle(
-213 Rotation2d.fromRotations(_simRotations + (i * (1.0 / _rollerConf.simNumLigaments)))
-214 );
-215 }
-216
-217 _primaryMotorSim.setRawRotorPosition(rollerRotToMotor(_simRotations));
-218 _primaryMotorSim.setRotorVelocity(rollerRotToMotor(_rollerSim.getAngularVelocityRPM() / 60.0));
-219 _primaryMotorSim.setRotorAcceleration(rollerRotToMotor(_simAccelRPM2 / 3600.0));
-220 _primaryMotorSim.setSupplyVoltage(RobotController.getBatteryVoltage());
-221
-222 RoboRioSim.setVInVoltage(
-223 BatterySim.calculateDefaultBatteryLoadedVoltage(_rollerSim.getCurrentDrawAmps())
-224 );
-225 }
-226
-227 @Override
-228 public boolean motorResetConfig() {
-229 if (_isMicrosystemDisabled) {
-230 return false;
-231 }
-232 return super.motorResetConfig();
-233 }
-234
-235 @Override
-236 public void updateShuffleboard() {
-237 if (_isMicrosystemDisabled) {
-238 return;
-239 }
-240 if (_isShuffleboardMicro) {
-241 _currentPositionEntry.setDouble(getRollerPosition());
-242 _currentVelocityEntry.setDouble(getRollerVelocity());
-243 }
-244 }
-245
-246 @Override
-247 public void configShuffleboard() {
-248 if (_isMicrosystemDisabled) {
-249 return;
-250 }
-251 super.configShuffleboard();
-252 }
-253
-254 /**
-255 * Converts motor rotations to roller rotations
-256 *
-257 * @param motorRot motor rotations
-258 * @return roller rotations converted from motor rotations
-259 *
-260 */
-261 public double motorToRollerRot(double motorRot) {
-262 if (_isMicrosystemDisabled) {
-263 return 0.0;
-264 }
-265 return motorRot / _motorToMechRatio;
-266 }
-267
-268 /**
-269 * Converts motor rotations to roller rotations
-270 *
-271 * @param rollerRot roller rotations
-272 * @return motor rotations converted from roller rotations
-273 */
-274 public double rollerRotToMotor(double rollerRot) {
-275 if (_isMicrosystemDisabled) {
-276 return 0.0;
-277 }
-278 return rollerRot * _motorToMechRatio;
-279 }
-280
-281 /**
-282 * Calculates the next state according to the trapezoidal profile and requests the roller motor(s)
-283 * to arrive at the next position with feedforward
-284 */
-285 public void followLastProfile() {
-286 if (_isMicrosystemDisabled) {
-287 return;
-288 }
-289 TrapezoidProfile.State nextState =
-290 _trapProfile.calculate(TagalongConfiguration.LOOP_PERIOD_S, _curState, _goalState);
-291
-292 // Control and FeedForward based on mechanism rotations rather than motor rotations
-293 _primaryMotor.setControl(_requestedPositionVoltage
-294 .withPosition(rollerRotToMotor(nextState.position))
-295 .withFeedForward(_rollerFF.calculate(nextState.velocity)));
-296
-297 if (_isShuffleboardMicro) {
-298 _targetPositionEntry.setDouble(nextState.position);
-299 _targetVelocityEntry.setDouble(nextState.velocity);
-300 }
-301
-302 _curState = nextState;
-303 }
-304
-305 /**
-306 * Creates a new trapezoidal profile for the roller to follow
-307 *
-308 * @param goalPosition goal position in rotations
-309 */
-310 public void setRollerProfile(Angle goalPosition) {
-311 setRollerProfile(goalPosition.getRotations());
-312 }
-313 /**
-314 * Creates a new trapezoidal profile for the roller to follow
-315 *
-316 * @param goalPosition goal position in rotations
-317 * @param goalVelocityRPS goal velocity in rotations per second
-318 */
-319 public void setRollerProfile(Angle goalPosition, double goalVelocityRPS) {
-320 setRollerProfile(goalPosition.getRotations(), goalVelocityRPS);
-321 }
-322
-323 /**
-324 * Creates a new trapezoidal profile for the roller to follow
-325 *
-326 * @param goalPosition goal position in rotations
-327 * @param goalVelocityRPS goal velocity in rotations per second
-328 * @param maxVelocityRPS maximum velocity in rotations per second
-329 */
-330 public void setRollerProfile(Angle goalPosition, double goalVelocityRPS, double maxVelocityRPS) {
-331 setRollerProfile(goalPosition.getRotations(), goalVelocityRPS, maxVelocityRPS);
-332 }
-333
-334 /**
-335 * Creates a new trapezoidal profile for the roller to follow
-336 *
-337 * @param goalPosition goal position in rotations
-338 * @param goalVelocityRPS goal velocity in rotations per second
-339 * @param maxVelocityRPS maximum velocity in rotations per second
-340 * @param maxAccelerationRPS2 maximum acceleration in rotations per second squared
-341 */
-342 public void setRollerProfile(
-343 Angle goalPosition, double goalVelocityRPS, double maxVelocityRPS, double maxAccelerationRPS2
-344 ) {
-345 setRollerProfile(
-346 goalPosition.getRotations(), goalVelocityRPS, maxVelocityRPS, maxAccelerationRPS2
-347 );
-348 }
-349
-350 /**
-351 * Creates a new trapezoidal profile for the roller to follow
-352 *
-353 * @param goalPosition goal position in rotations
-354 * @param goalVelocityRPS goal velocity in rotations per second
-355 * @param maxVelocityRPS maximum velocity in rotations per second
-356 * @param maxAccelerationRPS2 maximum acceleration in rotations per second squared
-357 * @param setCurrentState True if the profiles current state should base itself off sensor
-358 * values rather than continue from the existing state
-359 */
-360 public void setRollerProfile(
-361 Angle goalPosition,
-362 double goalVelocityRPS,
-363 double maxVelocityRPS,
-364 double maxAccelerationRPS2,
-365 boolean setCurrentState
-366 ) {
-367 setRollerProfile(
-368 goalPosition.getRotations(),
-369 goalVelocityRPS,
-370 maxVelocityRPS,
-371 maxAccelerationRPS2,
-372 setCurrentState
-373 );
-374 }
-375
-376 /**
-377 * Creates a new trapezoidal profile for the roller to follow
-378 *
-379 * @param goalPositionRot goal position in rotations
-380 */
-381 public void setRollerProfile(double goalPositionRot) {
-382 setRollerProfile(goalPositionRot, 0.0);
-383 }
-384
-385 /**
-386 * Creates a new trapezoidal profile for the roller to follow
-387 *
-388 * @param goalPositionRot goal position in rotations
-389 * @param goalVelocityRPS goal velocity in rotations per second
-390 */
-391 public void setRollerProfile(double goalPositionRot, double goalVelocityRPS) {
-392 setRollerProfile(goalPositionRot, goalVelocityRPS, _maxVelocityRPS);
-393 }
-394
-395 /**
-396 * Creates a new trapezoidal profile for the roller to follow
-397 *
-398 * @param goalPositionRot goal position in rotations
-399 * @param goalVelocityRPS goal velocity in rotations per second
-400 * @param maxVelocityRPS maximum velocity in rotations per second
-401 */
-402 public void setRollerProfile(
-403 double goalPositionRot, double goalVelocityRPS, double maxVelocityRPS
-404 ) {
-405 setRollerProfile(goalPositionRot, goalVelocityRPS, maxVelocityRPS, _maxAccelerationRPS2);
-406 }
-407
-408 /**
-409 * Creates a new trapezoidal profile for the roller to follow
-410 *
-411 * @param goalPositionRot goal position in rotations
-412 * @param goalVelocityRPS goal velocity in rotations per second
-413 * @param maxVelocityRPS maximum velocity in rotations per second
-414 * @param maxAccelerationRPS2 maximum acceleration in rotations per second squared
-415 */
-416 public void setRollerProfile(
-417 double goalPositionRot,
-418 double goalVelocityRPS,
-419 double maxVelocityRPS,
-420 double maxAccelerationRPS2
-421 ) {
-422 setRollerProfile(goalPositionRot, goalVelocityRPS, maxVelocityRPS, maxAccelerationRPS2, true);
-423 }
-424
-425 /**
-426 * Creates a new trapezoidal profile for the roller to follow
-427 *
-428 * @param goalPositionRot goal position in rotations
-429 * @param goalVelocityRPS goal velocity in rotations per second
-430 * @param maxVelocityRPS maximum velocity in rotations per second
-431 * @param maxAccelerationRPS2 maximum acceleration in rotations per second squared
-432 * @param setCurrentState True if the profiles current state should base itself off sensor
-433 * values rather than continue from the existing state
-434 */
-435 public void setRollerProfile(
-436 double goalPositionRot,
-437 double goalVelocityRPS,
-438 double maxVelocityRPS,
-439 double maxAccelerationRPS2,
-440 boolean setCurrentState
-441 ) {
-442 if (_isMicrosystemDisabled) {
-443 return;
-444 }
-445 setFollowProfile(false);
-446
-447 if (setCurrentState) {
-448 _curState.position = getRollerPosition();
-449 _curState.velocity = getRollerVelocity();
-450 }
-451
-452 _goalState.position = goalPositionRot;
-453 _goalState.velocity = goalVelocityRPS;
-454
-455 _trapProfile = new TrapezoidProfile(
-456 (maxVelocityRPS >= _maxVelocityRPS || maxAccelerationRPS2 >= _maxAccelerationRPS2)
-457 ? _rollerConf.trapezoidalLimits
-458 : new TrapezoidProfile.Constraints(maxVelocityRPS, maxAccelerationRPS2)
-459 );
-460
-461 _profileTimer.restart();
-462 }
-463
-464 /**
-465 * Sets the power of the primary roller motor
-466 *
-467 * @param power roller power
-468 */
-469 public void setRollerPower(double power) {
-470 setPrimaryPower(power);
-471 }
-472
-473 /**
-474 * Gets the power of the primary roller motor
-475 *
-476 * @return roller power
-477 */
-478 public double getRollerPower() {
-479 return getPrimaryMotorPower();
-480 }
-481
-482 /**
-483 * Gets the position of the roller in rotations
-484 *
-485 * @return roller position in rotations
-486 */
-487 public double getRollerPosition() {
-488 return motorToRollerRot(getPrimaryMotorPosition());
-489 }
-490
-491 /**
-492 * Gets the velocity of roller in rotations
-493 *
-494 * @return roller velocity
-495 */
-496 public double getRollerVelocity() {
-497 return motorToRollerRot(getPrimaryMotorVelocity());
-498 }
-499
-500 /**
-501 * Sets the velocity of the roller in RPS
-502 *
-503 * @param rps Desired velocity in rotations per second
-504 * @param withFF with feedforward
-505 */
-506 public void setRollerVelocity(double rps, boolean withFF) {
-507 if (_isMicrosystemDisabled) {
-508 return;
-509 }
-510
-511 setFollowProfile(false);
-512 _primaryMotor.setControl(_requestedVelocityVoltage.withVelocity(rollerRotToMotor(rps))
-513 .withFeedForward(withFF ? _rollerFF.calculate(rps) : 0.0));
-514 }
-515
-516 /**
-517 * Checks if the roller is at the target speed
-518 *
-519 * @param targetSpeed target speed in rotations per second
-520 * @return if roller is at target speed
-521 */
-522 public boolean isRollerAtTargetSpeed(double targetSpeed) {
-523 if (_isMicrosystemDisabled) {
-524 return true;
-525 }
-526 return AlgebraicUtils.inTolerance(
-527 getRollerVelocity() - targetSpeed,
-528 -_defaultRollerLowerToleranceRot,
-529 _defaultRollerUpperToleranceRot
-530 );
-531 }
-532
-533 /**
-534 * Command that sets the roller power
-535 *
-536 * @param power roller power
-537 * @return instant command to set roller power
-538 */
-539 public Command setRollerPowerCmd(double power) {
-540 return new InstantCommand(() -> setRollerPower(power));
-541 }
-542
-543 /**
-544 * Command that sets the velocity of the roller in rotations per second
-545 *
-546 * @param rps rotations per second
-547 * @return instant command to set roller velocity
-548 */
-549 public Command setRollerRPSCmd(double rps) {
-550 return new InstantCommand(() -> setRollerVelocity(rps, false));
-551 }
-552
-553 /**
-554 * Command that sets the velocity of the roller in rotations per second with feedforward
-555 *
-556 * @param rps rotations per second
-557 * @return instant command to set roller velocity with feedforward
-558 */
-559 public Command setRollerRPSWithFFCmd(double rps) {
-560 return new InstantCommand(() -> setRollerVelocity(rps, true));
-561 }
-562
-563 /**
-564 * Command that sets the power of the primary motor (zero if interrupted)
-565 *
-566 * @param power roller power
-567 * @return start end command to set roller power
-568 */
-569 public Command startEndRollerPowerCmd(double power) {
-570 return (Commands.startEnd(() -> setRollerPower(power), () -> setRollerPower(0.0)));
-571 }
-572
-573 /**
-574 * Command that sets the velocity of the roller in rotations per second (sets zero power if
-575 * interrupted)
-576 *
-577 * @param rps rotations per second
-578 * @return start end command to set roller velocity
-579 */
-580 public Command startEndRollerRPSCmd(double rps) {
-581 return Commands.startEnd(() -> setRollerVelocity(rps, false), () -> setRollerPower(0.0));
-582 }
-583
-584 /**
-585 * Command that sets the velocity of the roller in rotations per second with feedforward. (sets
-586 * zero power if interrupted)
-587 *
-588 * @param rps rotations per second
-589 * @return start end command to set roller velocity with feedforward
-590 */
-591 public Command startEndRollerRPSWithFFCmd(double rps) {
-592 return Commands.startEnd(() -> setRollerVelocity(rps, true), () -> setRollerPower(0.0));
-593 }
-594
-595 /**
-596 * Bounds checking function that uses the current roller position
-597 *
-598 * @param lowerBound minimum of acceptable range
-599 * @param upperBound maximum of acceptable range
-600 * @return if the current position is in specified acceptable range
-601 */
-602 public boolean isRollerInTolerance(double lowerBound, double upperBound) {
-603 if (_isMicrosystemDisabled) {
-604 return true;
-605 }
-606 return AlgebraicUtils.inTolerance(getRollerPosition(), lowerBound, upperBound);
-607 }
-608
-609 @Override
-610 public void holdCurrentPosition() {
-611 setRollerProfile(getRollerPosition(), 0.0);
-612 setFollowProfile(true);
-613 }
-614
-615 /**
-616 * Retrieves ligaments attached to roller Mechanism2d
-617 *
-618 * @return roller ligaments
-619 */
-620 public ArrayList<MechanismLigament2d> getRollerLigaments() {
-621 return _rollerLigaments;
-622 }
-623}
+183 _rollerConf.name + " " + i,
+184 _rollerConf.ligamentsLength,
+185 i * (360 / _rollerConf.simNumLigaments)
+186 );
+187 _rollerLigaments.add(ligament);
+188 _root.append(ligament);
+189
+190 // FUTURE DEV: allow for explicit color configuration
+191 ligament.setColor(new Color8Bit(
+192 i * 255 / _rollerConf.simNumLigaments,
+193 i * 255 / _rollerConf.simNumLigaments,
+194 i * 255 / _rollerConf.simNumLigaments
+195 ));
+196 }
+197 _primaryMotorSim = _primaryMotor.getSimState();
+198 }
+199
+200 @Override
+201 public void simulationPeriodic() {
+202 if (_isMicrosystemDisabled) {
+203 return;
+204 }
+205 _rollerSim.setInput(getPrimaryMotorPower() * RobotController.getBatteryVoltage());
+206 _rollerSim.update(TagalongConfiguration.LOOP_PERIOD_S);
+207
+208 double prevSimVelo = _simVeloRPM;
+209 _simVeloRPM = _rollerSim.getAngularVelocityRPM();
+210 _simRotations += _simVeloRPM * TagalongConfiguration.LOOP_PERIOD_S / 60.0;
+211 _simAccelRPM2 = (_simVeloRPM - prevSimVelo) * 60.0 / TagalongConfiguration.LOOP_PERIOD_S;
+212
+213 for (int i = 1; i <= _rollerConf.simNumLigaments; i++) {
+214 _rollerLigaments.get(i - 1).setAngle(
+215 Rotation2d.fromRotations(_simRotations + (i * (1.0 / _rollerConf.simNumLigaments)))
+216 );
+217 }
+218
+219 _primaryMotorSim.setRawRotorPosition(rollerRotToMotor(_simRotations));
+220 _primaryMotorSim.setRotorVelocity(rollerRotToMotor(_rollerSim.getAngularVelocityRPM() / 60.0));
+221 _primaryMotorSim.setRotorAcceleration(rollerRotToMotor(_simAccelRPM2 / 3600.0));
+222 _primaryMotorSim.setSupplyVoltage(RobotController.getBatteryVoltage());
+223
+224 RoboRioSim.setVInVoltage(
+225 BatterySim.calculateDefaultBatteryLoadedVoltage(_rollerSim.getCurrentDrawAmps())
+226 );
+227 }
+228
+229 @Override
+230 public boolean motorResetConfig() {
+231 if (_isMicrosystemDisabled) {
+232 return false;
+233 }
+234 return super.motorResetConfig();
+235 }
+236
+237 @Override
+238 public void updateShuffleboard() {
+239 if (_isMicrosystemDisabled) {
+240 return;
+241 }
+242 if (_isShuffleboardMicro) {
+243 _currentPositionEntry.setDouble(getRollerPosition());
+244 _currentVelocityEntry.setDouble(getRollerVelocity());
+245 }
+246 }
+247
+248 @Override
+249 public void configShuffleboard() {
+250 if (_isMicrosystemDisabled) {
+251 return;
+252 }
+253 super.configShuffleboard();
+254 }
+255
+256 /**
+257 * Converts motor rotations to roller rotations
+258 *
+259 * @param motorRot motor rotations
+260 * @return roller rotations converted from motor rotations
+261 *
+262 */
+263 public double motorToRollerRot(double motorRot) {
+264 if (_isMicrosystemDisabled) {
+265 return 0.0;
+266 }
+267 return motorRot / _motorToMechRatio;
+268 }
+269
+270 /**
+271 * Converts motor rotations to roller rotations
+272 *
+273 * @param rollerRot roller rotations
+274 * @return motor rotations converted from roller rotations
+275 */
+276 public double rollerRotToMotor(double rollerRot) {
+277 if (_isMicrosystemDisabled) {
+278 return 0.0;
+279 }
+280 return rollerRot * _motorToMechRatio;
+281 }
+282
+283 /**
+284 * Calculates the next state according to the trapezoidal profile and requests the roller motor(s)
+285 * to arrive at the next position with feedforward
+286 */
+287 public void followLastProfile() {
+288 if (_isMicrosystemDisabled) {
+289 return;
+290 }
+291 TrapezoidProfile.State nextState =
+292 _trapProfile.calculate(TagalongConfiguration.LOOP_PERIOD_S, _curState, _goalState);
+293
+294 // Control and FeedForward based on mechanism rotations rather than motor rotations
+295 _primaryMotor.setControl(_requestedPositionVoltage
+296 .withPosition(rollerRotToMotor(nextState.position))
+297 .withFeedForward(_rollerFF.calculate(nextState.velocity)));
+298
+299 if (_isShuffleboardMicro) {
+300 _targetPositionEntry.setDouble(nextState.position);
+301 _targetVelocityEntry.setDouble(nextState.velocity);
+302 }
+303
+304 _curState = nextState;
+305 }
+306
+307 /**
+308 * Creates a new trapezoidal profile for the roller to follow
+309 *
+310 * @param goalPosition goal position in rotations
+311 */
+312 public void setRollerProfile(Angle goalPosition) {
+313 setRollerProfile(goalPosition.getRotations());
+314 }
+315 /**
+316 * Creates a new trapezoidal profile for the roller to follow
+317 *
+318 * @param goalPosition goal position in rotations
+319 * @param goalVelocityRPS goal velocity in rotations per second
+320 */
+321 public void setRollerProfile(Angle goalPosition, double goalVelocityRPS) {
+322 setRollerProfile(goalPosition.getRotations(), goalVelocityRPS);
+323 }
+324
+325 /**
+326 * Creates a new trapezoidal profile for the roller to follow
+327 *
+328 * @param goalPosition goal position in rotations
+329 * @param goalVelocityRPS goal velocity in rotations per second
+330 * @param maxVelocityRPS maximum velocity in rotations per second
+331 */
+332 public void setRollerProfile(Angle goalPosition, double goalVelocityRPS, double maxVelocityRPS) {
+333 setRollerProfile(goalPosition.getRotations(), goalVelocityRPS, maxVelocityRPS);
+334 }
+335
+336 /**
+337 * Creates a new trapezoidal profile for the roller to follow
+338 *
+339 * @param goalPosition goal position in rotations
+340 * @param goalVelocityRPS goal velocity in rotations per second
+341 * @param maxVelocityRPS maximum velocity in rotations per second
+342 * @param maxAccelerationRPS2 maximum acceleration in rotations per second squared
+343 */
+344 public void setRollerProfile(
+345 Angle goalPosition, double goalVelocityRPS, double maxVelocityRPS, double maxAccelerationRPS2
+346 ) {
+347 setRollerProfile(
+348 goalPosition.getRotations(), goalVelocityRPS, maxVelocityRPS, maxAccelerationRPS2
+349 );
+350 }
+351
+352 /**
+353 * Creates a new trapezoidal profile for the roller to follow
+354 *
+355 * @param goalPosition goal position in rotations
+356 * @param goalVelocityRPS goal velocity in rotations per second
+357 * @param maxVelocityRPS maximum velocity in rotations per second
+358 * @param maxAccelerationRPS2 maximum acceleration in rotations per second squared
+359 * @param setCurrentState True if the profiles current state should base itself off sensor
+360 * values rather than continue from the existing state
+361 */
+362 public void setRollerProfile(
+363 Angle goalPosition,
+364 double goalVelocityRPS,
+365 double maxVelocityRPS,
+366 double maxAccelerationRPS2,
+367 boolean setCurrentState
+368 ) {
+369 setRollerProfile(
+370 goalPosition.getRotations(),
+371 goalVelocityRPS,
+372 maxVelocityRPS,
+373 maxAccelerationRPS2,
+374 setCurrentState
+375 );
+376 }
+377
+378 /**
+379 * Creates a new trapezoidal profile for the roller to follow
+380 *
+381 * @param goalPositionRot goal position in rotations
+382 */
+383 public void setRollerProfile(double goalPositionRot) {
+384 setRollerProfile(goalPositionRot, 0.0);
+385 }
+386
+387 /**
+388 * Creates a new trapezoidal profile for the roller to follow
+389 *
+390 * @param goalPositionRot goal position in rotations
+391 * @param goalVelocityRPS goal velocity in rotations per second
+392 */
+393 public void setRollerProfile(double goalPositionRot, double goalVelocityRPS) {
+394 setRollerProfile(goalPositionRot, goalVelocityRPS, _maxVelocityRPS);
+395 }
+396
+397 /**
+398 * Creates a new trapezoidal profile for the roller to follow
+399 *
+400 * @param goalPositionRot goal position in rotations
+401 * @param goalVelocityRPS goal velocity in rotations per second
+402 * @param maxVelocityRPS maximum velocity in rotations per second
+403 */
+404 public void setRollerProfile(
+405 double goalPositionRot, double goalVelocityRPS, double maxVelocityRPS
+406 ) {
+407 setRollerProfile(goalPositionRot, goalVelocityRPS, maxVelocityRPS, _maxAccelerationRPS2);
+408 }
+409
+410 /**
+411 * Creates a new trapezoidal profile for the roller to follow
+412 *
+413 * @param goalPositionRot goal position in rotations
+414 * @param goalVelocityRPS goal velocity in rotations per second
+415 * @param maxVelocityRPS maximum velocity in rotations per second
+416 * @param maxAccelerationRPS2 maximum acceleration in rotations per second squared
+417 */
+418 public void setRollerProfile(
+419 double goalPositionRot,
+420 double goalVelocityRPS,
+421 double maxVelocityRPS,
+422 double maxAccelerationRPS2
+423 ) {
+424 setRollerProfile(goalPositionRot, goalVelocityRPS, maxVelocityRPS, maxAccelerationRPS2, true);
+425 }
+426
+427 /**
+428 * Creates a new trapezoidal profile for the roller to follow
+429 *
+430 * @param goalPositionRot goal position in rotations
+431 * @param goalVelocityRPS goal velocity in rotations per second
+432 * @param maxVelocityRPS maximum velocity in rotations per second
+433 * @param maxAccelerationRPS2 maximum acceleration in rotations per second squared
+434 * @param setCurrentState True if the profiles current state should base itself off sensor
+435 * values rather than continue from the existing state
+436 */
+437 public void setRollerProfile(
+438 double goalPositionRot,
+439 double goalVelocityRPS,
+440 double maxVelocityRPS,
+441 double maxAccelerationRPS2,
+442 boolean setCurrentState
+443 ) {
+444 if (_isMicrosystemDisabled) {
+445 return;
+446 }
+447 setFollowProfile(false);
+448
+449 if (setCurrentState) {
+450 _curState.position = getRollerPosition();
+451 _curState.velocity = getRollerVelocity();
+452 }
+453
+454 _goalState.position = goalPositionRot;
+455 _goalState.velocity = goalVelocityRPS;
+456
+457 _trapProfile = new TrapezoidProfile(
+458 (maxVelocityRPS >= _maxVelocityRPS || maxAccelerationRPS2 >= _maxAccelerationRPS2)
+459 ? _rollerConf.trapezoidalLimits
+460 : new TrapezoidProfile.Constraints(maxVelocityRPS, maxAccelerationRPS2)
+461 );
+462
+463 _profileTimer.restart();
+464 }
+465
+466 /**
+467 * Sets the power of the primary roller motor
+468 *
+469 * @param power roller power
+470 */
+471 public void setRollerPower(double power) {
+472 setPrimaryPower(power);
+473 }
+474
+475 /**
+476 * Gets the power of the primary roller motor
+477 *
+478 * @return roller power
+479 */
+480 public double getRollerPower() {
+481 return getPrimaryMotorPower();
+482 }
+483
+484 /**
+485 * Gets the position of the roller in rotations
+486 *
+487 * @return roller position in rotations
+488 */
+489 public double getRollerPosition() {
+490 return motorToRollerRot(getPrimaryMotorPosition());
+491 }
+492
+493 /**
+494 * Gets the velocity of roller in rotations
+495 *
+496 * @return roller velocity
+497 */
+498 public double getRollerVelocity() {
+499 return motorToRollerRot(getPrimaryMotorVelocity());
+500 }
+501
+502 /**
+503 * Sets the velocity of the roller in RPS
+504 *
+505 * @param rps Desired velocity in rotations per second
+506 * @param withFF with feedforward
+507 */
+508 public void setRollerVelocity(double rps, boolean withFF) {
+509 if (_isMicrosystemDisabled) {
+510 return;
+511 }
+512
+513 setFollowProfile(false);
+514 _primaryMotor.setControl(_requestedVelocityVoltage.withVelocity(rollerRotToMotor(rps))
+515 .withFeedForward(withFF ? _rollerFF.calculate(rps) : 0.0));
+516 }
+517
+518 /**
+519 * Checks if the roller is at the target speed
+520 *
+521 * @param targetSpeed target speed in rotations per second
+522 * @return if roller is at target speed
+523 */
+524 public boolean isRollerAtTargetSpeed(double targetSpeed) {
+525 if (_isMicrosystemDisabled) {
+526 return true;
+527 }
+528 return AlgebraicUtils.inTolerance(
+529 getRollerVelocity() - targetSpeed,
+530 -_defaultRollerLowerToleranceRot,
+531 _defaultRollerUpperToleranceRot
+532 );
+533 }
+534
+535 /**
+536 * Command that sets the roller power
+537 *
+538 * @param power roller power
+539 * @return instant command to set roller power
+540 */
+541 public Command setRollerPowerCmd(double power) {
+542 return new InstantCommand(() -> setRollerPower(power));
+543 }
+544
+545 /**
+546 * Command that sets the velocity of the roller in rotations per second
+547 *
+548 * @param rps rotations per second
+549 * @return instant command to set roller velocity
+550 */
+551 public Command setRollerRPSCmd(double rps) {
+552 return new InstantCommand(() -> setRollerVelocity(rps, false));
+553 }
+554
+555 /**
+556 * Command that sets the velocity of the roller in rotations per second with feedforward
+557 *
+558 * @param rps rotations per second
+559 * @return instant command to set roller velocity with feedforward
+560 */
+561 public Command setRollerRPSWithFFCmd(double rps) {
+562 return new InstantCommand(() -> setRollerVelocity(rps, true));
+563 }
+564
+565 /**
+566 * Command that sets the power of the primary motor (zero if interrupted)
+567 *
+568 * @param power roller power
+569 * @return start end command to set roller power
+570 */
+571 public Command startEndRollerPowerCmd(double power) {
+572 return (Commands.startEnd(() -> setRollerPower(power), () -> setRollerPower(0.0)));
+573 }
+574
+575 /**
+576 * Command that sets the velocity of the roller in rotations per second (sets zero power if
+577 * interrupted)
+578 *
+579 * @param rps rotations per second
+580 * @return start end command to set roller velocity
+581 */
+582 public Command startEndRollerRPSCmd(double rps) {
+583 return Commands.startEnd(() -> setRollerVelocity(rps, false), () -> setRollerPower(0.0));
+584 }
+585
+586 /**
+587 * Command that sets the velocity of the roller in rotations per second with feedforward. (sets
+588 * zero power if interrupted)
+589 *
+590 * @param rps rotations per second
+591 * @return start end command to set roller velocity with feedforward
+592 */
+593 public Command startEndRollerRPSWithFFCmd(double rps) {
+594 return Commands.startEnd(() -> setRollerVelocity(rps, true), () -> setRollerPower(0.0));
+595 }
+596
+597 /**
+598 * Bounds checking function that uses the current roller position
+599 *
+600 * @param lowerBound minimum of acceptable range
+601 * @param upperBound maximum of acceptable range
+602 * @return if the current position is in specified acceptable range
+603 */
+604 public boolean isRollerInTolerance(double lowerBound, double upperBound) {
+605 if (_isMicrosystemDisabled) {
+606 return true;
+607 }
+608 return AlgebraicUtils.inTolerance(getRollerPosition(), lowerBound, upperBound);
+609 }
+610
+611 @Override
+612 public void holdCurrentPosition() {
+613 setRollerProfile(getRollerPosition(), 0.0);
+614 setFollowProfile(true);
+615 }
+616
+617 /**
+618 * Retrieves ligaments attached to roller Mechanism2d
+619 *
+620 * @return roller ligaments
+621 */
+622 public ArrayList<MechanismLigament2d> getRollerLigaments() {
+623 return _rollerLigaments;
+624 }
+625}
diff --git a/docs/src-html/tagalong/subsystems/micro/confs/FlywheelConf.html b/docs/src-html/tagalong/subsystems/micro/confs/FlywheelConf.html
index 71c6cb0..8679516 100644
--- a/docs/src-html/tagalong/subsystems/micro/confs/FlywheelConf.html
+++ b/docs/src-html/tagalong/subsystems/micro/confs/FlywheelConf.html
@@ -59,86 +59,89 @@
046 * @param rootX sim root x coordinate
047 * @param rootY sim root y coordinate
048 * @param simNumLigaments number of simulated ligaments used
-049 * @param rollerMOI moment of inertia for the roller
-050 */
-051 public FlywheelConf(
-052 String name,
-053 Motors[] motorTypes,
-054 int[] motorDeviceIDs,
-055 String[] motorCanBus,
-056 InvertedValue[] motorDirection,
-057 NeutralModeValue[] motorEnabledBrakeMode,
-058 NeutralModeValue[] motorDisabledBrakeMode,
-059 int[][] gearRatio,
-060 DistanceUnits trapezoidalLengthUnit,
-061 VelocityUnits trapezoidalVelocityUnit,
-062 double trapezoidalLimitsVelocity,
-063 AccelerationUnits trapezoidalAccelerationUnit,
-064 double trapezoidalLimitsAcceleration,
-065 DistanceUnits defaultTolerancesUnit,
-066 double defaultLowerTolerance,
-067 double defaultUpperTolerance,
-068 FeedforwardConstants feedForward,
-069 FeedforwardConstants simFeedForward,
-070 CurrentLimitsConfigs currentLimitsConfigs,
-071 PIDSGVAConstants slot0,
-072 PIDSGVAConstants slot1,
-073 PIDSGVAConstants slot2,
-074 PIDSGVAConstants simSlot0,
-075 PIDSGVAConstants simSlot1,
-076 PIDSGVAConstants simSlot2,
-077 double mech2dDim,
-078 String rootName,
-079 double rootX,
-080 double rootY,
-081 int simNumLigaments,
-082 double rollerMOI
-083
-084 ) {
-085 super(
-086 name,
-087 motorTypes,
-088 motorDeviceIDs,
-089 motorCanBus,
-090 motorDirection,
-091 motorEnabledBrakeMode,
-092 motorDisabledBrakeMode,
-093 gearRatio,
-094 trapezoidalLengthUnit,
-095 VelocityUnits.ROTATIONS_PER_SECOND,
-096 trapezoidalVelocityUnit.convertX(
-097 trapezoidalLimitsVelocity, VelocityUnits.ROTATIONS_PER_SECOND
-098 ),
-099 AccelerationUnits.ROTATIONS_PER_SECOND2,
-100 trapezoidalAccelerationUnit.convertX(
-101 trapezoidalLimitsAcceleration, AccelerationUnits.ROTATIONS_PER_SECOND2
-102 ),
-103 DistanceUnits.ROTATION,
-104 defaultTolerancesUnit.convertX(defaultLowerTolerance, DistanceUnits.ROTATION),
-105 defaultTolerancesUnit.convertX(defaultUpperTolerance, DistanceUnits.ROTATION),
-106 feedForward,
-107 simFeedForward,
-108 currentLimitsConfigs,
-109 slot0,
-110 slot1,
-111 slot2,
-112 simSlot0,
-113 simSlot1,
-114 simSlot2,
-115 mech2dDim,
-116 rootName,
-117 rootX,
-118 rootY,
-119 simNumLigaments,
-120 rollerMOI
-121 );
-122
-123 for (int i = 0; i < numMotors; i++) {
-124 motorConfig[i].MotorOutput.PeakReverseDutyCycle = 0.0;
-125 motorConfig[i].Voltage.PeakReverseVoltage = 0.0;
-126 }
-127 }
-128}
+049 * @param ligamentsLength length of simulated ligaments
+050 * @param rollerMOI moment of inertia for the roller
+051 */
+052 public FlywheelConf(
+053 String name,
+054 Motors[] motorTypes,
+055 int[] motorDeviceIDs,
+056 String[] motorCanBus,
+057 InvertedValue[] motorDirection,
+058 NeutralModeValue[] motorEnabledBrakeMode,
+059 NeutralModeValue[] motorDisabledBrakeMode,
+060 int[][] gearRatio,
+061 DistanceUnits trapezoidalLengthUnit,
+062 VelocityUnits trapezoidalVelocityUnit,
+063 double trapezoidalLimitsVelocity,
+064 AccelerationUnits trapezoidalAccelerationUnit,
+065 double trapezoidalLimitsAcceleration,
+066 DistanceUnits defaultTolerancesUnit,
+067 double defaultLowerTolerance,
+068 double defaultUpperTolerance,
+069 FeedforwardConstants feedForward,
+070 FeedforwardConstants simFeedForward,
+071 CurrentLimitsConfigs currentLimitsConfigs,
+072 PIDSGVAConstants slot0,
+073 PIDSGVAConstants slot1,
+074 PIDSGVAConstants slot2,
+075 PIDSGVAConstants simSlot0,
+076 PIDSGVAConstants simSlot1,
+077 PIDSGVAConstants simSlot2,
+078 double mech2dDim,
+079 String rootName,
+080 double rootX,
+081 double rootY,
+082 int simNumLigaments,
+083 double ligamentsLength,
+084 double rollerMOI
+085
+086 ) {
+087 super(
+088 name,
+089 motorTypes,
+090 motorDeviceIDs,
+091 motorCanBus,
+092 motorDirection,
+093 motorEnabledBrakeMode,
+094 motorDisabledBrakeMode,
+095 gearRatio,
+096 trapezoidalLengthUnit,
+097 VelocityUnits.ROTATIONS_PER_SECOND,
+098 trapezoidalVelocityUnit.convertX(
+099 trapezoidalLimitsVelocity, VelocityUnits.ROTATIONS_PER_SECOND
+100 ),
+101 AccelerationUnits.ROTATIONS_PER_SECOND2,
+102 trapezoidalAccelerationUnit.convertX(
+103 trapezoidalLimitsAcceleration, AccelerationUnits.ROTATIONS_PER_SECOND2
+104 ),
+105 DistanceUnits.ROTATION,
+106 defaultTolerancesUnit.convertX(defaultLowerTolerance, DistanceUnits.ROTATION),
+107 defaultTolerancesUnit.convertX(defaultUpperTolerance, DistanceUnits.ROTATION),
+108 feedForward,
+109 simFeedForward,
+110 currentLimitsConfigs,
+111 slot0,
+112 slot1,
+113 slot2,
+114 simSlot0,
+115 simSlot1,
+116 simSlot2,
+117 mech2dDim,
+118 rootName,
+119 rootX,
+120 rootY,
+121 simNumLigaments,
+122 ligamentsLength,
+123 rollerMOI
+124 );
+125
+126 for (int i = 0; i < numMotors; i++) {
+127 motorConfig[i].MotorOutput.PeakReverseDutyCycle = 0.0;
+128 motorConfig[i].Voltage.PeakReverseVoltage = 0.0;
+129 }
+130 }
+131}
diff --git a/docs/src-html/tagalong/subsystems/micro/confs/RollerConf.html b/docs/src-html/tagalong/subsystems/micro/confs/RollerConf.html
index 9dcece9..d11232e 100644
--- a/docs/src-html/tagalong/subsystems/micro/confs/RollerConf.html
+++ b/docs/src-html/tagalong/subsystems/micro/confs/RollerConf.html
@@ -56,120 +56,127 @@
043 */
044 public final int simNumLigaments;
045 /**
-046 * Moment of inertia for the roller
+046 * Length of simulated ligaments
047 */
-048 public final double rollerMOI;
+048 public final double ligamentsLength;
049 /**
-050 * Motor feedforward model
+050 * Moment of inertia for the roller
051 */
-052 public final SimpleMotorFeedforward feedForward;
-053
-054 /**
-055 *
-056 * @param name name of the subsystem
-057 * @param motorTypes array of motor types used
-058 * @param motorDeviceIDs CAN IDs of the motors
-059 * @param motorCanBus CAN buses which the motors are connected to
-060 * @param motorDirection motor inversion settings
-061 * @param motorEnabledBrakeMode brake mode when motors are enabled
-062 * @param motorDisabledBrakeMode brake mode when motors are disabled
-063 * @param gearRatio gear ratios
-064 * @param trapezoidalLengthUnit units for trapezoidal motion length
-065 * @param trapezoidalVelocityUnit units for trapezoidal motion velocity
-066 * @param trapezoidalLimitsVelocity velocity limits for trapezoidal motion
-067 * @param trapezoidalAccelerationUnit units for trapezoidal motion acceleration
-068 * @param trapezoidalLimitsAcceleration acceleration limits for trapezoidal motion
-069 * @param defaultTolerancesUnit default unit of the tolerance values
-070 * @param defaultLowerTolerance default lower tolerance
-071 * @param defaultUpperTolerance default upper tolerance
-072 * @param feedForward feedforward constants
-073 * @param simFeedForward simulated feedforward constants
-074 * @param currentLimitsConfigs current limit configurations
-075 * @param slot0 PID slot 0 configuration
-076 * @param slot1 PID slot 1 configuration
-077 * @param slot2 PID slot 2 configuration
-078 * @param simSlot0 simulated PID slot 0 configuration
-079 * @param simSlot1 simulated PID slot 1 configuration
-080 * @param simSlot2 simulated PID slot 2 configuration
-081 * @param mech2dDim dimensions of mechanical system
-082 * @param rootName sim root name
-083 * @param rootX sim root x coordinate
-084 * @param rootY sim root y coordinate
-085 * @param simNumLigaments number of simulated ligaments used
-086 * @param rollerMOI moment of inertia for the roller
-087 */
-088 public RollerConf(
-089 String name,
-090 Motors[] motorTypes,
-091 int[] motorDeviceIDs,
-092 String[] motorCanBus,
-093 InvertedValue[] motorDirection,
-094 NeutralModeValue[] motorEnabledBrakeMode,
-095 NeutralModeValue[] motorDisabledBrakeMode,
-096 int[][] gearRatio,
-097 DistanceUnits trapezoidalLengthUnit,
-098 VelocityUnits trapezoidalVelocityUnit,
-099 double trapezoidalLimitsVelocity,
-100 AccelerationUnits trapezoidalAccelerationUnit,
-101 double trapezoidalLimitsAcceleration,
-102 DistanceUnits defaultTolerancesUnit,
-103 double defaultLowerTolerance,
-104 double defaultUpperTolerance,
-105 FeedforwardConstants feedForward,
-106 FeedforwardConstants simFeedForward,
-107 CurrentLimitsConfigs currentLimitsConfigs,
-108 PIDSGVAConstants slot0,
-109 PIDSGVAConstants slot1,
-110 PIDSGVAConstants slot2,
-111 PIDSGVAConstants simSlot0,
-112 PIDSGVAConstants simSlot1,
-113 PIDSGVAConstants simSlot2,
-114 double mech2dDim,
-115 String rootName,
-116 double rootX,
-117 double rootY,
-118 int simNumLigaments,
-119 double rollerMOI
-120 ) {
-121 super(
-122 name,
-123 motorTypes,
-124 motorDeviceIDs,
-125 motorCanBus,
-126 motorDirection,
-127 motorEnabledBrakeMode,
-128 motorDisabledBrakeMode,
-129 gearRatio,
-130 trapezoidalLengthUnit,
-131 VelocityUnits.ROTATIONS_PER_SECOND,
-132 trapezoidalVelocityUnit.convertX(
-133 trapezoidalLimitsVelocity, VelocityUnits.ROTATIONS_PER_SECOND
-134 ),
-135 AccelerationUnits.ROTATIONS_PER_SECOND2,
-136 trapezoidalAccelerationUnit.convertX(
-137 trapezoidalLimitsAcceleration, AccelerationUnits.ROTATIONS_PER_SECOND2
-138 ),
-139 DistanceUnits.ROTATION,
-140 defaultTolerancesUnit.convertX(defaultLowerTolerance, DistanceUnits.ROTATION),
-141 defaultTolerancesUnit.convertX(defaultUpperTolerance, DistanceUnits.ROTATION),
-142 currentLimitsConfigs,
-143 slot0,
-144 slot1,
-145 slot2,
-146 simSlot0,
-147 simSlot1,
-148 simSlot2
-149 );
-150 this.mech2dDim = mech2dDim;
-151 this.rootName = rootName;
-152 this.rootX = rootX;
-153 this.rootY = rootY;
-154 this.simNumLigaments = simNumLigaments;
-155 this.rollerMOI = rollerMOI;
-156 this.feedForward = IterativeRobotBase.isReal() ? feedForward.getSimpleMotorFeedforward()
-157 : simFeedForward.getSimpleMotorFeedforward();
-158 }
-159}
+052 public final double rollerMOI;
+053 /**
+054 * Motor feedforward model
+055 */
+056 public final SimpleMotorFeedforward feedForward;
+057
+058 /**
+059 *
+060 * @param name name of the subsystem
+061 * @param motorTypes array of motor types used
+062 * @param motorDeviceIDs CAN IDs of the motors
+063 * @param motorCanBus CAN buses which the motors are connected to
+064 * @param motorDirection motor inversion settings
+065 * @param motorEnabledBrakeMode brake mode when motors are enabled
+066 * @param motorDisabledBrakeMode brake mode when motors are disabled
+067 * @param gearRatio gear ratios
+068 * @param trapezoidalLengthUnit units for trapezoidal motion length
+069 * @param trapezoidalVelocityUnit units for trapezoidal motion velocity
+070 * @param trapezoidalLimitsVelocity velocity limits for trapezoidal motion
+071 * @param trapezoidalAccelerationUnit units for trapezoidal motion acceleration
+072 * @param trapezoidalLimitsAcceleration acceleration limits for trapezoidal motion
+073 * @param defaultTolerancesUnit default unit of the tolerance values
+074 * @param defaultLowerTolerance default lower tolerance
+075 * @param defaultUpperTolerance default upper tolerance
+076 * @param feedForward feedforward constants
+077 * @param simFeedForward simulated feedforward constants
+078 * @param currentLimitsConfigs current limit configurations
+079 * @param slot0 PID slot 0 configuration
+080 * @param slot1 PID slot 1 configuration
+081 * @param slot2 PID slot 2 configuration
+082 * @param simSlot0 simulated PID slot 0 configuration
+083 * @param simSlot1 simulated PID slot 1 configuration
+084 * @param simSlot2 simulated PID slot 2 configuration
+085 * @param mech2dDim dimensions of mechanical system
+086 * @param rootName sim root name
+087 * @param rootX sim root x coordinate
+088 * @param rootY sim root y coordinate
+089 * @param simNumLigaments number of simulated ligaments used
+090 * @param ligamentsLength length of simulated ligaments
+091 * @param rollerMOI moment of inertia for the roller
+092 */
+093 public RollerConf(
+094 String name,
+095 Motors[] motorTypes,
+096 int[] motorDeviceIDs,
+097 String[] motorCanBus,
+098 InvertedValue[] motorDirection,
+099 NeutralModeValue[] motorEnabledBrakeMode,
+100 NeutralModeValue[] motorDisabledBrakeMode,
+101 int[][] gearRatio,
+102 DistanceUnits trapezoidalLengthUnit,
+103 VelocityUnits trapezoidalVelocityUnit,
+104 double trapezoidalLimitsVelocity,
+105 AccelerationUnits trapezoidalAccelerationUnit,
+106 double trapezoidalLimitsAcceleration,
+107 DistanceUnits defaultTolerancesUnit,
+108 double defaultLowerTolerance,
+109 double defaultUpperTolerance,
+110 FeedforwardConstants feedForward,
+111 FeedforwardConstants simFeedForward,
+112 CurrentLimitsConfigs currentLimitsConfigs,
+113 PIDSGVAConstants slot0,
+114 PIDSGVAConstants slot1,
+115 PIDSGVAConstants slot2,
+116 PIDSGVAConstants simSlot0,
+117 PIDSGVAConstants simSlot1,
+118 PIDSGVAConstants simSlot2,
+119 double mech2dDim,
+120 String rootName,
+121 double rootX,
+122 double rootY,
+123 int simNumLigaments,
+124 double ligamentsLength,
+125 double rollerMOI
+126 ) {
+127 super(
+128 name,
+129 motorTypes,
+130 motorDeviceIDs,
+131 motorCanBus,
+132 motorDirection,
+133 motorEnabledBrakeMode,
+134 motorDisabledBrakeMode,
+135 gearRatio,
+136 trapezoidalLengthUnit,
+137 VelocityUnits.ROTATIONS_PER_SECOND,
+138 trapezoidalVelocityUnit.convertX(
+139 trapezoidalLimitsVelocity, VelocityUnits.ROTATIONS_PER_SECOND
+140 ),
+141 AccelerationUnits.ROTATIONS_PER_SECOND2,
+142 trapezoidalAccelerationUnit.convertX(
+143 trapezoidalLimitsAcceleration, AccelerationUnits.ROTATIONS_PER_SECOND2
+144 ),
+145 DistanceUnits.ROTATION,
+146 defaultTolerancesUnit.convertX(defaultLowerTolerance, DistanceUnits.ROTATION),
+147 defaultTolerancesUnit.convertX(defaultUpperTolerance, DistanceUnits.ROTATION),
+148 currentLimitsConfigs,
+149 slot0,
+150 slot1,
+151 slot2,
+152 simSlot0,
+153 simSlot1,
+154 simSlot2
+155 );
+156 this.mech2dDim = mech2dDim;
+157 this.rootName = rootName;
+158 this.rootX = rootX;
+159 this.rootY = rootY;
+160 this.simNumLigaments = simNumLigaments;
+161 this.ligamentsLength = ligamentsLength;
+162 this.rollerMOI = rollerMOI;
+163 this.feedForward = IterativeRobotBase.isReal() ? feedForward.getSimpleMotorFeedforward()
+164 : simFeedForward.getSimpleMotorFeedforward();
+165 }
+166}
diff --git a/docs/tagalong/subsystems/micro/Roller.html b/docs/tagalong/subsystems/micro/Roller.html
index cbf32b7..88b780b 100644
--- a/docs/tagalong/subsystems/micro/Roller.html
+++ b/docs/tagalong/subsystems/micro/Roller.html
@@ -562,7 +562,7 @@
simulationInit
-
simulationPeriodic
-
+
Periodic function during simulation
@@ -574,7 +574,7 @@ simulationPeriodic
-
motorResetConfig
-
+
- Overrides:
motorResetConfig in class Microsystem
@@ -588,7 +588,7 @@ motorResetConfig
-
updateShuffleboard
-
+
Updates shuffleboard
@@ -600,7 +600,7 @@ updateShuffleboard
-
configShuffleboard
-
+
Configures a user interface on the Shuffleboard for the specified micro
system
@@ -613,7 +613,7 @@ configShuffleboard
-
motorToRollerRot
-
+
Converts motor rotations to roller rotations
- Parameters:
@@ -626,7 +626,7 @@ motorToRollerRot
-
rollerRotToMotor
-
+
Converts motor rotations to roller rotations
- Parameters:
@@ -639,7 +639,7 @@ rollerRotToMotor
-
followLastProfile
-
+
Calculates the next state according to the trapezoidal profile and requests the roller motor(s)
to arrive at the next position with feedforward
@@ -647,7 +647,7 @@ followLastProfile
-
setRollerProfile
-
+
Creates a new trapezoidal profile for the roller to follow
- Parameters:
@@ -658,7 +658,7 @@ setRollerProfile
-
setRollerProfile
-public void setRollerProfile(Angle goalPosition,
+
Creates a new trapezoidal profile for the roller to follow
@@ -671,7 +671,7 @@ setRollerProfile
-
setRollerProfile
-public void setRollerProfile(Angle goalPosition,
+
Creates a new trapezoidal profile for the roller to follow
@@ -686,7 +686,7 @@ setRollerProfile
-
setRollerProfile
-public void setRollerProfile(Angle goalPosition,
+public void setRollerProfile(Angle goalPosition,
double goalVelocityRPS,
double maxVelocityRPS,
double maxAccelerationRPS2)
@@ -703,7 +703,7 @@ setRollerProfile
-
setRollerProfile
-public void setRollerProfile(Angle goalPosition,
+public void setRollerProfile(Angle goalPosition,
double goalVelocityRPS,
double maxVelocityRPS,
double maxAccelerationRPS2,
@@ -723,7 +723,7 @@ setRollerProfile
-
setRollerProfile
-
+
Creates a new trapezoidal profile for the roller to follow
- Parameters:
@@ -734,7 +734,7 @@ setRollerProfile
-
setRollerProfile
-public void setRollerProfile(double goalPositionRot,
+
Creates a new trapezoidal profile for the roller to follow
@@ -747,7 +747,7 @@ setRollerProfile
-
setRollerProfile
-public void setRollerProfile(double goalPositionRot,
+public void setRollerProfile(double goalPositionRot,
double goalVelocityRPS,
double maxVelocityRPS)
Creates a new trapezoidal profile for the roller to follow
@@ -762,7 +762,7 @@ setRollerProfile
-
setRollerProfile
-public void setRollerProfile(double goalPositionRot,
+public void setRollerProfile(double goalPositionRot,
double goalVelocityRPS,
double maxVelocityRPS,
double maxAccelerationRPS2)
@@ -779,7 +779,7 @@ setRollerProfile
-
setRollerProfile
-public void setRollerProfile(double goalPositionRot,
+public void setRollerProfile(double goalPositionRot,
double goalVelocityRPS,
double maxVelocityRPS,
double maxAccelerationRPS2,
@@ -799,7 +799,7 @@ setRollerProfile
-
setRollerPower
-
+
Sets the power of the primary roller motor
- Parameters:
@@ -810,7 +810,7 @@ setRollerPower
-
getRollerPower
-
+
Gets the power of the primary roller motor
- Returns:
@@ -821,7 +821,7 @@ getRollerPower
-
getRollerPosition
-
+
Gets the position of the roller in rotations
- Returns:
@@ -832,7 +832,7 @@ getRollerPosition
-
getRollerVelocity
-
+
Gets the velocity of roller in rotations
- Returns:
@@ -843,7 +843,7 @@ getRollerVelocity
-
setRollerVelocity
-public void setRollerVelocity(double rps,
+
Sets the velocity of the roller in RPS
@@ -856,7 +856,7 @@ setRollerVelocity
-
isRollerAtTargetSpeed
-
+
Checks if the roller is at the target speed
- Parameters:
@@ -869,7 +869,7 @@ isRollerAtTargetSpeed
-
setRollerPowerCmd
-
+
Command that sets the roller power
- Parameters:
@@ -882,7 +882,7 @@ setRollerPowerCmd
-
setRollerRPSCmd
-
+
Command that sets the velocity of the roller in rotations per second
- Parameters:
@@ -895,7 +895,7 @@ setRollerRPSCmd
-
setRollerRPSWithFFCmd
-
+
Command that sets the velocity of the roller in rotations per second with feedforward
- Parameters:
@@ -908,7 +908,7 @@ setRollerRPSWithFFCmd
-
startEndRollerPowerCmd
-
+
Command that sets the power of the primary motor (zero if interrupted)
- Parameters:
@@ -921,7 +921,7 @@ startEndRollerPowerCmd
-
startEndRollerRPSCmd
-
+
Command that sets the velocity of the roller in rotations per second (sets zero power if
interrupted)
@@ -935,7 +935,7 @@ startEndRollerRPSCmd
-
startEndRollerRPSWithFFCmd
-
+
Command that sets the velocity of the roller in rotations per second with feedforward. (sets
zero power if interrupted)
@@ -949,7 +949,7 @@ startEndRollerRPSWithFFCmd
-
isRollerInTolerance
-public boolean isRollerInTolerance(double lowerBound,
+
Bounds checking function that uses the current roller position
@@ -964,7 +964,7 @@ isRollerInTolerance
-
holdCurrentPosition
-
+
Sets the power of the primary motor to zero
@@ -976,7 +976,7 @@ holdCurrentPosition
-
getRollerLigaments
-
+
Retrieves ligaments attached to roller Mechanism2d
- Returns:
diff --git a/docs/tagalong/subsystems/micro/confs/FlywheelConf.html b/docs/tagalong/subsystems/micro/confs/FlywheelConf.html
index 3c3573f..5cb74c5 100644
--- a/docs/tagalong/subsystems/micro/confs/FlywheelConf.html
+++ b/docs/tagalong/subsystems/micro/confs/FlywheelConf.html
@@ -87,7 +87,7 @@ Class FlywheelConf
Field Summary
+feedForward, ligamentsLength, mech2dDim, rollerMOI, rootName, rootX, rootY, simNumLigaments
Fields inherited from class tagalong.subsystems.micro.confs.MicrosystemConf
defaultLowerTolerance, defaultTolerancesUnit, defaultUpperTolerance, motorCanBus, motorConfig, motorDeviceIDs, motorDirection, motorDisabledBrakeMode, motorEnabledBrakeMode, motorToMechRatio, motorTypes, name, numMotors, trapezoidalAccelerationUnit, trapezoidalLimits, trapezoidalLimitsAcceleration, trapezoidalLimitsVelocity, trapezoidalVelocityUnit
@@ -101,7 +101,7 @@ Constructor Summary
-
FlywheelConf(String name,
+FlywheelConf(String name,
Motors[] motorTypes,
int[] motorDeviceIDs,
String[] motorCanBus,
@@ -131,6 +131,7 @@ Constructor Summary
double rootX,
double rootY,
int simNumLigaments,
+ double ligamentsLength,
double rollerMOI)
@@ -158,9 +159,9 @@
Methods inherited from cl
Constructor Details
-
-
+
FlywheelConf
-public FlywheelConf(String name,
+public FlywheelConf(String name,
Motors[] motorTypes,
int[] motorDeviceIDs,
String[] motorCanBus,
@@ -190,6 +191,7 @@ FlywheelConf
double rootX,
double rootY,
int simNumLigaments,
+ double ligamentsLength,
double rollerMOI)
- Parameters:
@@ -223,6 +225,7 @@ FlywheelConf
rootX - sim root x coordinate
rootY - sim root y coordinate
simNumLigaments - number of simulated ligaments used
+ligamentsLength - length of simulated ligaments
rollerMOI - moment of inertia for the roller
diff --git a/docs/tagalong/subsystems/micro/confs/RollerConf.html b/docs/tagalong/subsystems/micro/confs/RollerConf.html
index 5dd7f38..52e993b 100644
--- a/docs/tagalong/subsystems/micro/confs/RollerConf.html
+++ b/docs/tagalong/subsystems/micro/confs/RollerConf.html
@@ -98,33 +98,38 @@ Field Summary
Motor feedforward model
final double
-
+
-
Dimension of the mechanical system
+
Length of simulated ligaments
final double
-
+
-
Moment of inertia for the roller
+
Dimension of the mechanical system
-
-
+final double
+
-
Sim root name
+
Moment of inertia for the roller
-final double
-
+
+
-
Sim root x coordinate
+
Sim root name
final double
-
+
-
Sim root y coordinate
+
Sim root x coordinate
-final int
-
+final double
+
+final int
+
+
Number of simulated ligaments used
@@ -141,7 +146,7 @@ Constructor Summary
-
RollerConf(String name,
+RollerConf(String name,
Motors[] motorTypes,
int[] motorDeviceIDs,
String[] motorCanBus,
@@ -171,6 +176,7 @@ Constructor Summary
double rootX,
double rootY,
int simNumLigaments,
+ double ligamentsLength,
double rollerMOI)
@@ -233,16 +239,23 @@
simNumLigaments
-
+
+
ligamentsLength
+
+Length of simulated ligaments
+
+
+
-
rollerMOI
-
+
Moment of inertia for the roller
-
feedForward
-
+
Motor feedforward model
@@ -255,9 +268,9 @@
feedForward
Constructor Details
-
-
+
RollerConf
-public RollerConf(String name,
+public RollerConf(String name,
Motors[] motorTypes,
int[] motorDeviceIDs,
String[] motorCanBus,
@@ -287,6 +300,7 @@ RollerConf
double rootX,
double rootY,
int simNumLigaments,
+ double ligamentsLength,
double rollerMOI)
- Parameters:
@@ -320,6 +334,7 @@ RollerConf
rootX - sim root x coordinate
rootY - sim root y coordinate
simNumLigaments - number of simulated ligaments used
+ligamentsLength - length of simulated ligaments
rollerMOI - moment of inertia for the roller