40 _motion_path(std::make_unique<
math::Path>()), _rotation_path(std::make_unique<
math::RotationPath>()),
90 [[nodiscard]]
const std::string&
getName() const noexcept {
return _name; }
97 [[nodiscard]]
SimId getId() const noexcept {
return _id; }
104 void setRotationPath(std::unique_ptr<math::RotationPath> path)
noexcept { _rotation_path = std::move(path); }
111 void setMotionPath(std::unique_ptr<math::Path> path)
noexcept { _motion_path = std::move(path); }
118 void setName(std::string name)
noexcept { _name = std::move(name); }
121 std::unique_ptr<math::Path> _motion_path;
122 std::unique_ptr<math::RotationPath> _rotation_path;
Thread-safe Meyers singleton for generating unique object IDs.
Represents a path with coordinates and allows for various interpolation methods.
Manages rotational paths with different interpolation techniques.
A class representing a vector in spherical coordinates.
A class representing a vector in rectangular coordinates.
Global configuration file for the project.
double RealType
Type for real numbers.
Classes and operations for 3D geometry.
Provides the definition and functionality of the Path class for handling coordinate-based paths with ...
Defines the RotationPath class for handling rotational paths with different interpolation types.
uint64_t SimId
64-bit Unique Simulation ID.
ObjectType
Categorizes objects for ID generation.