|
FERS 1.0.0
The Flexible Extensible Radar Simulator
|
Classes | |
| class | FileTarget |
| File-based radar target. More... | |
| class | IsoTarget |
| Isotropic radar target. More... | |
| class | Object |
| Represents a physical object in the radar system. More... | |
| class | Platform |
| Represents a simulation platform with motion and rotation paths. More... | |
| class | Radar |
| Represents a radar system on a platform. More... | |
| class | RcsChiSquare |
| Chi-square distributed RCS model. More... | |
| class | RcsConst |
| Constant RCS model. More... | |
| class | RcsModel |
| Base class for RCS fluctuation models. More... | |
| class | Receiver |
| Manages radar signal reception and response processing. More... | |
| struct | SchedulePeriod |
| Represents a time period during which the transmitter is active. More... | |
| class | Target |
| Base class for radar targets. More... | |
| class | Transmitter |
| Represents a radar transmitter system. More... | |
Enumerations | |
| enum class | OperationMode { PULSED_MODE , CW_MODE } |
| Defines the operational mode of a radar component. More... | |
Functions | |
| std::vector< SchedulePeriod > | processRawSchedule (std::vector< SchedulePeriod > periods, const std::string &ownerName, bool isPulsed, RealType pri) |
| Processes a raw list of schedule periods. | |
| std::unique_ptr< Target > | createIsoTarget (Platform *platform, std::string name, RealType rcs, unsigned seed) |
| Creates an isotropic target. | |
| std::unique_ptr< Target > | createFileTarget (Platform *platform, std::string name, const std::string &filename, unsigned seed) |
| Creates a file-based target. | |
| void | to_json (nlohmann::json &j, const SchedulePeriod &p) |
| void | from_json (const nlohmann::json &j, SchedulePeriod &p) |
| void | to_json (nlohmann::json &j, const Transmitter &t) |
| void | to_json (nlohmann::json &j, const Receiver &r) |
| void | to_json (nlohmann::json &j, const Target &t) |
| void | to_json (nlohmann::json &j, const Platform &p) |
|
strong |
Defines the operational mode of a radar component.
| Enumerator | |
|---|---|
| PULSED_MODE | The component operates in a pulsed mode. |
| CW_MODE | The component operates in a continuous-wave mode. |
Definition at line 35 of file radar_obj.h.
| std::unique_ptr< Target > radar::createFileTarget | ( | Platform * | platform, |
| std::string | name, | ||
| const std::string & | filename, | ||
| unsigned | seed | ||
| ) |
Creates a file-based target.
| platform | Pointer to the platform associated with the target. |
| name | The name of the target. |
| filename | The name of the file containing RCS data. |
| seed | The seed for the target's internal random number generator. |
Definition at line 279 of file target.h.
Referenced by serial::json_to_world().
Here is the caller graph for this function:| std::unique_ptr< Target > radar::createIsoTarget | ( | Platform * | platform, |
| std::string | name, | ||
| RealType | rcs, | ||
| unsigned | seed | ||
| ) |
Creates an isotropic target.
| platform | Pointer to the platform associated with the target. |
| name | The name of the target. |
| rcs | The constant RCS value for the target. |
| seed | The seed for the target's internal random number generator. |
Definition at line 265 of file target.h.
Referenced by serial::json_to_world().
Here is the caller graph for this function:| void radar::from_json | ( | const nlohmann::json & | j, |
| SchedulePeriod & | p | ||
| ) |
Definition at line 383 of file json_serializer.cpp.
References radar::SchedulePeriod::end, and radar::SchedulePeriod::start.
| std::vector< SchedulePeriod > radar::processRawSchedule | ( | std::vector< SchedulePeriod > | periods, |
| const std::string & | ownerName, | ||
| bool | isPulsed, | ||
| RealType | pri | ||
| ) |
Processes a raw list of schedule periods.
This function performs the following operations:
| periods | The raw vector of periods. |
| ownerName | The name of the object owning this schedule (for logging). |
| isPulsed | Whether the object is operating in pulsed mode. |
| pri | The Pulse Repetition Interval (only used if isPulsed is true). |
Definition at line 17 of file schedule_period.cpp.
References params::endTime(), LOG, params::startTime(), and logging::WARNING.
Referenced by serial::json_to_world().
Here is the call graph for this function:
Here is the caller graph for this function:| void radar::to_json | ( | nlohmann::json & | j, |
| const Platform & | p | ||
| ) |
Definition at line 467 of file json_serializer.cpp.
References radar::Platform::getMotionPath(), radar::Platform::getName(), radar::Platform::getRotationPath(), math::RotationPath::getType(), and math::RotationPath::INTERP_CONSTANT.
Here is the call graph for this function:| void radar::to_json | ( | nlohmann::json & | j, |
| const Receiver & | r | ||
| ) |
Definition at line 410 of file json_serializer.cpp.
References radar::Receiver::checkFlag(), radar::Receiver::FLAG_NODIRECT, radar::Receiver::FLAG_NOPROPLOSS, radar::Radar::getAntenna(), radar::Receiver::getMode(), antenna::Antenna::getName(), radar::Object::getName(), radar::Receiver::getNoiseTemperature(), radar::Receiver::getSchedule(), radar::Radar::getTiming(), radar::Receiver::getWindowLength(), radar::Receiver::getWindowPrf(), radar::Receiver::getWindowSkip(), and PULSED_MODE.
Here is the call graph for this function:| void radar::to_json | ( | nlohmann::json & | j, |
| const SchedulePeriod & | p | ||
| ) |
Definition at line 381 of file json_serializer.cpp.
References radar::SchedulePeriod::end, and radar::SchedulePeriod::start.
| void radar::to_json | ( | nlohmann::json & | j, |
| const Target & | t | ||
| ) |
Definition at line 434 of file json_serializer.cpp.
References radar::Target::getFluctuationModel(), and radar::Object::getName().
Here is the call graph for this function:| void radar::to_json | ( | nlohmann::json & | j, |
| const Transmitter & | t | ||
| ) |
Definition at line 389 of file json_serializer.cpp.
References radar::Radar::getAntenna(), radar::Transmitter::getMode(), antenna::Antenna::getName(), radar::Object::getName(), fers_signal::RadarSignal::getName(), radar::Transmitter::getPrf(), radar::Transmitter::getSchedule(), radar::Transmitter::getSignal(), radar::Radar::getTiming(), and PULSED_MODE.
Here is the call graph for this function: