|
FERS 1.0.0
The Flexible Extensible Radar Simulator
|
Provides functions to serialize and deserialize the simulation world to/from JSON. More...
Include dependency graph for json_serializer.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Namespaces | |
| namespace | timing |
| namespace | antenna |
| namespace | fers_signal |
| namespace | radar |
| namespace | core |
| namespace | serial |
Functions | |
| nlohmann::json | serial::world_to_json (const core::World &world) |
| Serializes the entire simulation world into a nlohmann::json object. | |
| void | serial::update_platform_paths_from_json (const nlohmann::json &j, radar::Platform *plat) |
| Updates a platform's motion and rotation paths from JSON. | |
| std::unique_ptr< antenna::Antenna > | serial::parse_antenna_from_json (const nlohmann::json &j) |
| Parses an Antenna from JSON. | |
| std::unique_ptr< fers_signal::RadarSignal > | serial::parse_waveform_from_json (const nlohmann::json &j) |
| Parses a Waveform from JSON. | |
| std::unique_ptr< timing::PrototypeTiming > | serial::parse_timing_from_json (const nlohmann::json &j, SimId id) |
| Parses a timing prototype from JSON. | |
| void | serial::update_parameters_from_json (const nlohmann::json &j, std::mt19937 &masterSeeder) |
| Updates global simulation parameters from JSON. | |
| void | serial::update_antenna_from_json (const nlohmann::json &j, antenna::Antenna *ant, core::World &world) |
| Updates an antenna from JSON without full context recreation. | |
| void | serial::update_transmitter_from_json (const nlohmann::json &j, radar::Transmitter *tx, core::World &world, std::mt19937 &masterSeeder) |
| Updates a transmitter from JSON without full context recreation. | |
| void | serial::update_receiver_from_json (const nlohmann::json &j, radar::Receiver *rx, core::World &world, std::mt19937 &masterSeeder) |
| Updates a receiver from JSON without full context recreation. | |
| void | serial::update_target_from_json (const nlohmann::json &j, radar::Target *tgt, core::World &world, std::mt19937 &masterSeeder) |
| Updates a target from JSON without full context recreation. | |
| void | serial::update_monostatic_from_json (const nlohmann::json &j, radar::Transmitter *tx, radar::Receiver *rx, core::World &world, std::mt19937 &masterSeeder) |
| Updates a monostatic radar from JSON without full context recreation. | |
| void | serial::update_timing_from_json (const nlohmann::json &j, core::World &world, SimId id) |
| Updates a timing source from JSON without full context recreation. | |
| void | serial::json_to_world (const nlohmann::json &j, core::World &world, std::mt19937 &masterSeeder) |
| Deserializes a nlohmann::json object and reconstructs the simulation world. | |
Provides functions to serialize and deserialize the simulation world to/from JSON.
This module is the primary data interchange layer between the C++ core engine and the user interface. JSON was chosen as the format for its native support in web technologies (like the React/TypeScript frontend), its human-readability, and its lightweight nature. This serializer defines the contract for how C++ simulation objects are represented in JSON, enabling the UI to read, modify, and write back the entire simulation state.
Definition in file json_serializer.h.