|
YAMS
Yet Another Mechanism System
|
#include <SwerveDriveTelemetryConfig.hpp>
Swerve drive telemetry configuration.
Use this builder to select exactly which fields are published to NetworkTables and/or DataLog. Every field is disabled by default; call the individual With*() methods to opt in, or use WithTelemetryVerbosity() to enable a predefined set.
The field enums are owned by this class (rather than by SwerveDriveTelemetry) so that this config header has no dependency on SwerveDriveTelemetry.hpp; SwerveDriveTelemetry re-exposes them via type aliases for API parity.
| using yams::telemetry::SwerveDriveTelemetryConfig::TelemetryVerbosity = motorcontrollers::SmartMotorControllerConfig::TelemetryVerbosity |
|
strong |
Boolean telemetry field for a SwerveDrive.
|
strong |
Double telemetry field for a SwerveDrive.
|
strong |
|
strong |
Struct telemetry field for a SwerveDrive, backed by wpi::math::Pose2d.
| yams::telemetry::SwerveDriveTelemetryConfig::SwerveDriveTelemetryConfig | ( | ) |
|
explicit |
Construct with a verbosity preset.
| verbosity | TelemetryVerbosity to use by default. |
| std::unordered_map< BooleanTelemetryField, BooleanTelemetry< BooleanTelemetryField > > & yams::telemetry::SwerveDriveTelemetryConfig::GetBoolFields | ( | ) |
| std::unordered_map< StructTelemetryField, StructTelemetry< wpi::math::ChassisVelocities, StructTelemetryField > > & yams::telemetry::SwerveDriveTelemetryConfig::GetChassisSpeedsFields | ( | ) |
| std::optional< std::string > yams::telemetry::SwerveDriveTelemetryConfig::GetDataLogName | ( | ) | const |
| std::unordered_map< DoubleTelemetryField, DoubleTelemetry< DoubleTelemetryField > > & yams::telemetry::SwerveDriveTelemetryConfig::GetDoubleFields | ( | ) |
| std::unordered_map< StructArrayTelemetryField, StructArrayTelemetry< wpi::math::SwerveModuleVelocity, StructArrayTelemetryField > > & yams::telemetry::SwerveDriveTelemetryConfig::GetModuleStatesFields | ( | ) |
| bool yams::telemetry::SwerveDriveTelemetryConfig::GetNT4Enabled | ( | ) | const |
| std::unordered_map< StructTelemetryField, StructTelemetry< wpi::math::Pose2d, StructTelemetryField > > & yams::telemetry::SwerveDriveTelemetryConfig::GetPoseFields | ( | ) |
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithCurrentModuleStates | ( | ) |
Enables the measured module states logging.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithCurrentRobotRelativeChassisSpeeds | ( | ) |
Enables the measured robot relative chassis speeds logging.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithCustom | ( | BooleanTelemetryField | field, |
| bool | value | ||
| ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithCustom | ( | const std::vector< BooleanTelemetryField > & | fields, |
| bool | value | ||
| ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithCustom | ( | const std::vector< DoubleTelemetryField > & | fields, |
| bool | value | ||
| ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithCustom | ( | const std::vector< StructArrayTelemetryField > & | fields, |
| bool | value | ||
| ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithCustom | ( | const std::vector< StructTelemetryField > & | fields, |
| bool | value | ||
| ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithCustom | ( | DoubleTelemetryField | field, |
| bool | value | ||
| ) |
Escape hatch for unimplemented fields which should be enabled or disabled.
| field | Field to configure. |
| value | Enable on true, disable on false. |
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithCustom | ( | StructArrayTelemetryField | field, |
| bool | value | ||
| ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithCustom | ( | StructTelemetryField | field, |
| bool | value | ||
| ) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithDataLogName | ( | const std::string & | dataLogName | ) |
Set up a DataLog entry for this drive.
| dataLogName | DataLog entry name. |
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithDesiredModuleStates | ( | ) |
Enables the last-commanded desired module states logging.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithDesiredRobotRelativeChassisSpeeds | ( | ) |
Enables the last-commanded desired robot relative chassis speeds logging.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithFieldRelativeChassisSpeeds | ( | ) |
Enables the measured field relative chassis speeds logging.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithGyro | ( | ) |
Enables the gyro angle logging.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithNetworkTables | ( | bool | enabled | ) |
Enable or disable NT4 telemetry. This will not create NT4 entries and is generally only advisable during competition matches.
| enabled | true to enable NT4 output. |
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithoutNetworkTables | ( | ) |
Disable NetworkTable output.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithPose | ( | ) |
Enables the pose logging.
| SwerveDriveTelemetryConfig & yams::telemetry::SwerveDriveTelemetryConfig::WithTelemetryVerbosity | ( | TelemetryVerbosity | verbosity | ) |
Enable a preset bundle of fields based on verbosity level.
| verbosity | Verbosity level to apply. |