102 template <
typename... Heights>
103 requires(std::convertible_to<Heights, wpi::units::meter_t> && ...)
105 return WithStages(std::vector<wpi::units::meter_t>{wpi::units::meter_t{stageHeights}...});
126 m_mechanismPositionConfig = mechanismPositionConfig;
169 std::string m_telemetryName;
170 std::optional<wpi::units::meter_t> m_minHeight;
171 std::optional<wpi::units::meter_t> m_maxHeight;
172 std::optional<wpi::units::kilogram_t> m_carriageMass;
173 std::optional<wpi::units::meter_t> m_drumRadius;
174 bool m_isHorizontal{
false};
175 wpi::util::Color8Bit m_simColor{wpi::util::Color::ORANGE};
176 wpi::units::degree_t m_angle{90.0};
177 std::optional<int> m_stages;
178 std::vector<wpi::units::meter_t> m_stageHeights;
179 std::optional<wpi::units::meter_t> m_stageHeightTotal;
180 MechanismPositionConfig m_mechanismPositionConfig;