42 Radar(platform, std::move(name)), _mode(mode)
104 void setSchedule(std::vector<SchedulePeriod> schedule);
110 [[nodiscard]]
const std::vector<SchedulePeriod>&
getSchedule() const noexcept {
return _schedule; }
131 std::vector<SchedulePeriod> _schedule;
Class representing a radar signal with associated properties.
Represents a radar system on a platform.
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
RealType getPrf() const noexcept
Retrieves the pulse repetition frequency (PRF).
Transmitter(Platform *platform, std::string name, const OperationMode mode) noexcept
Constructor for the Transmitter class.
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.
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.