43 Radar(platform, std::move(name),
121 void setSchedule(std::vector<SchedulePeriod> schedule);
127 [[nodiscard]]
const std::vector<SchedulePeriod>&
getSchedule() const noexcept {
return _schedule; }
148 std::vector<SchedulePeriod> _schedule;
Thread-safe Meyers singleton for generating unique object IDs.
Class representing a radar signal with associated properties.
Represents a radar system on a platform.
SimId getId() const noexcept
Retrieves the unique ID of the radar object.
Represents a radar transmitter system.
void setWave(fers_signal::RadarSignal *pulse) noexcept
Sets the radar signal wave to be transmitted.
Transmitter & operator=(const Transmitter &)=delete
void setMode(OperationMode mode) noexcept
Sets the operational mode of the transmitter.
SimId getId() const noexcept
Retrieves the unique ID of the transmitter.
RealType getPrf() const noexcept
Retrieves the pulse repetition frequency (PRF).
fers_signal::RadarSignal * getSignal() const noexcept
Retrieves the radar signal currently being transmitted.
~Transmitter() override=default
Transmitter(const Transmitter &)=delete
std::optional< RealType > getNextPulseTime(RealType time) const
Determines the valid simulation time for a pulse at or after the given time.
Transmitter & operator=(Transmitter &&)=delete
const std::vector< SchedulePeriod > & getSchedule() const noexcept
Retrieves the list of active transmission periods.
OperationMode getMode() const noexcept
Gets the operational mode of the transmitter.
Transmitter(Platform *platform, std::string name, const OperationMode mode, const SimId id=0) noexcept
Constructor for the Transmitter class.
void setSignal(fers_signal::RadarSignal *signal) noexcept
Sets the radar signal wave to be transmitted.
void setSchedule(std::vector< SchedulePeriod > schedule)
Sets the active schedule for the transmitter.
Transmitter(Transmitter &&)=delete
void setPrf(RealType mprf) noexcept
Sets the pulse repetition frequency (PRF) of the transmitter.
double RealType
Type for real numbers.
OperationMode
Defines the operational mode of a radar component.
Defines the Radar class and associated functionality.
uint64_t SimId
64-bit Unique Simulation ID.
ObjectType
Categorizes objects for ID generation.