YAMS
Yet Another Mechanism System
Loading...
Searching...
No Matches
MechanismGearing.hpp
Go to the documentation of this file.
1// Copyright (c) 2026 Yet Another Software Suite
2// SPDX-License-Identifier: LGPL-3.0-or-later
3
4#pragma once
5
6#include <optional>
7
8#include "GearBox.hpp"
9#include "Sprocket.hpp"
10
11namespace yams::gearing {
12
20 public:
22 static const MechanismGearing kOne;
23
29 explicit MechanismGearing(double reductionRatio);
30
36 explicit MechanismGearing(const GearBox& gearBox);
37
44 MechanismGearing(const GearBox& gearBox, const Sprocket& sprockets);
45
52
59
67
68 private:
69 GearBox m_gearBox;
70 std::optional<Sprocket> m_sprockets;
71};
72
73} // namespace yams::gearing
Definition GearBox.hpp:19
Definition MechanismGearing.hpp:19
MechanismGearing(const GearBox &gearBox, const Sprocket &sprockets)
MechanismGearing(const GearBox &gearBox)
MechanismGearing(double reductionRatio)
MechanismGearing & Div(double i)
double GetMechanismToRotorRatio() const
double GetRotorToMechanismRatio() const
static const MechanismGearing kOne
Definition MechanismGearing.hpp:22
Definition Sprocket.hpp:18
Definition GearBox.hpp:11