34 _platform(platform), _id(
id == 0 ?
SimIdGenerator::instance().generateId(type) :
id), _name(std::move(name))
72 [[nodiscard]]
SimId getId() const noexcept {
return _id; }
79 [[nodiscard]]
const std::string&
getName() const noexcept {
return _name; }
86 void setName(std::string name)
noexcept { _name = std::move(name); }
Thread-safe Meyers singleton for generating unique object IDs.
A class representing a vector in spherical coordinates.
Represents a physical object in the radar system.
const std::string & getName() const noexcept
Retrieves the name of the object.
Platform * getPlatform() const noexcept
Retrieves the associated platform of the object.
SimId getId() const noexcept
Retrieves the unique ID of the object.
void setName(std::string name) noexcept
Sets the name of the object.
Object(Platform *platform, std::string name, const ObjectType type, const SimId id=0) noexcept
Constructor for Object.
Object & operator=(const Object &)=delete
math::SVec3 getRotation(const RealType time) const
Retrieves the rotation of the object.
math::Vec3 getPosition(const RealType time) const
Retrieves the position of the object.
Object(const Object &)=delete
Object(Object &&) noexcept=default
virtual ~Object()=default
double RealType
Type for real numbers.
uint64_t SimId
64-bit Unique Simulation ID.
ObjectType
Categorizes objects for ID generation.