Agrarsense
|
#include <SimulatorJsonParser.h>
Static Public Member Functions | |
static void | ParseAndOperateJSONFile (const FString &Path) |
Static Private Member Functions | |
static void | ParseVehicle (const TSharedPtr< FJsonObject > &JsonObject) |
static void | ParsePropOrFoliage (const TSharedPtr< FJsonObject > &JsonObject, const FString &ObjectType) |
static void | SpawnSensorToVehicle (AVehicle *Vehicle, const TSharedPtr< FJsonObject > &SensorObject) |
static void | SpawnSensorWorld (const TSharedPtr< FJsonObject > &SensorObject) |
static void | SpawnWalker (const TSharedPtr< FJsonObject > &JsonObject) |
static void | ParseWalkerSpawnPoints (const TSharedPtr< FJsonObject > &ParametersObject, FWalkerParameters &WalkerParams) |
static void | ChangeWeather (const TSharedPtr< FJsonObject > &JsonObject) |
static void | ParseAndSetDroneParameters (APIDDrone *DronePtr, const TSharedPtr< FJsonObject > &JsonObject) |
static void | ParseAndSetWheeledVehicleParameters (AVehicle *VehiclePtr, const TSharedPtr< FJsonObject > &JsonObject) |
static void | HandleSpectatorMovement (const TSharedPtr< FJsonObject > &JsonObject, AActor *Actor, const FTransform &Transform) |
static void | AttachActorToSpectatorCamera (AActor *ActorPtr) |
static void | ParseAndSetSemanticColors (const TSharedPtr< FJsonObject > &JsonObject) |
static void | ParseCommands (const TSharedPtr< FJsonObject > &JsonObject) |
static void | ParseVolumeDeletion (const TSharedPtr< FJsonObject > &JsonObject) |
static void | ParseDataCapture (const TSharedPtr< FJsonObject > &JsonObject) |
static FTransform | ParseTransform (const FString &FieldName, const TSharedPtr< FJsonObject > &Object) |
static FVector4 | ParseVector4 (const FString &FieldName, const TSharedPtr< FJsonObject > &Object) |
static FThermalCameraParameters | ParseThermalCameraParameters (const TSharedPtr< FJsonObject > &ParametersObject) |
static int32 | GetIntValueOrDefault (const TSharedPtr< FJsonObject > &JsonObject, const FString &FieldName, int32 DefaultValue) |
static void | ComputeAndSetZFromGround (FTransform &Position) |
template<typename T > | |
static T | ParseParameters (const TSharedPtr< FJsonObject > &ParametersObject) |
Static Private Attributes | |
static bool | IsDataCapture = false |
static TArray< ASensor * > | SpawnedSensorsForDataCapture |
Static UBlueprintFunctionLibrary that reads and parses JSON file content. It processes the parsed data and attempts to spawn objects as defined within the JSON file.
Definition at line 34 of file SimulatorJsonParser.h.
|
staticprivate |
Definition at line 814 of file SimulatorJsonParser.cpp.
References ASensor::GetSensorModel(), and UAgrarsenseStatics::GetSpectator().
Referenced by SpawnSensorWorld().
|
staticprivate |
Definition at line 640 of file SimulatorJsonParser.cpp.
References AWeather::GetCurrentWeather(), UAgrarsenseStatics::GetWeatherActor(), and AWeather::UpdateWeather().
Referenced by ParseAndOperateJSONFile().
|
staticprivate |
Definition at line 1131 of file SimulatorJsonParser.cpp.
References Transform.
Referenced by ParseAndSetDroneParameters(), ParseDataCapture(), ParseVehicle(), and SpawnSensorWorld().
|
staticprivate |
Definition at line 1119 of file SimulatorJsonParser.cpp.
Referenced by SpawnWalker().
|
staticprivate |
Definition at line 766 of file SimulatorJsonParser.cpp.
References UAgrarsenseStatics::GetSimulationLevelManager(), UAgrarsenseStatics::GetSpectator(), ASimulationLevelManager::TakeManualControlOfVehicle(), ASpectator::TeleportSpectator(), and Transform.
Referenced by ParseVehicle(), SpawnSensorWorld(), and SpawnWalker().
|
static |
Try to load json file from Path and operate it based on the JSON content.
Path | full path to the JSON file, ex. C:\Agrarsense\Examples\ExampleJsonFiles\lidar.json |
Definition at line 62 of file SimulatorJsonParser.cpp.
References ChangeWeather(), IsDataCapture, UAgrarsenseSettings::IsPlayingInMainMenu(), SimulatorLog::Log(), ParseAndSetSemanticColors(), ParseCommands(), ParseDataCapture(), ParsePropOrFoliage(), ParseVehicle(), ParseVolumeDeletion(), SpawnedSensorsForDataCapture, SpawnSensorWorld(), and SpawnWalker().
Referenced by UROSCommands::HandleSpawnObjects(), and SDragAndDropWidget::OnDrop().
|
staticprivate |
Definition at line 680 of file SimulatorJsonParser.cpp.
References APIDDrone::ChangeDroneParameters(), ComputeAndSetZFromGround(), FDroneParameters::DroneAction, FDroneParameters::DroneEndAction, GetDroneAction(), GetDroneEndAction(), ParseTransform(), FDroneParameters::Points, and APIDDrone::SetShowForwardArrow().
Referenced by ParseVehicle().
|
staticprivate |
Definition at line 859 of file SimulatorJsonParser.cpp.
References UMaterialParameterCollectionUtilities::LoadMaterialParameterCollectionInstance(), SimulatorLog::Log(), and UMaterialParameterCollectionUtilities::UpdateMaterialCollectionVectorValue().
Referenced by ParseAndOperateJSONFile().
|
staticprivate |
Definition at line 750 of file SimulatorJsonParser.cpp.
References AVehicle::GetVehicleParameters(), and AVehicle::SetVehicleParameters().
Referenced by ParseVehicle().
|
staticprivate |
Definition at line 907 of file SimulatorJsonParser.cpp.
Referenced by ParseAndOperateJSONFile().
|
staticprivate |
Definition at line 964 of file SimulatorJsonParser.cpp.
References FCaptureData::CapturePositions, FCaptureData::CaptureRotatedViews, ComputeAndSetZFromGround(), ParseTransform(), FCaptureData::Sensors, ADataCapture::SetupDataCapture(), SpawnedSensorsForDataCapture, FCaptureData::UseGPSLocation, and FCaptureData::UseHeightAboveGround.
Referenced by ParseAndOperateJSONFile().
|
inlinestaticprivate |
Templated function to parse parameters from JSON object into specific struct. Requires the struct type T to have a StaticStruct method compatible with FJsonObjectConverter::JsonObjectToUStruct.
SensorObject | The JSON object from which to parse the parameters. |
Definition at line 102 of file SimulatorJsonParser.h.
|
staticprivate |
Definition at line 276 of file SimulatorJsonParser.cpp.
References UEnumUtilities::ConvertStringToFoliageType(), UEnumUtilities::ConvertStringToPropType(), ParseTransform(), UAssetLibrary::SpawnFoliage(), and UAssetLibrary::SpawnProp().
Referenced by ParseAndOperateJSONFile().
|
staticprivate |
Definition at line 1095 of file SimulatorJsonParser.cpp.
References FThermalCameraParameters::AllowCustomNoiseResolution, FThermalCameraParameters::CameraParameters, FThermalCameraParameters::ColdColor, FThermalCameraParameters::HeightResolutionNoise, ParseVector4(), FThermalCameraParameters::WarmColor, and FThermalCameraParameters::WidthResolutionNoise.
Referenced by SpawnSensorWorld().
|
staticprivate |
Definition at line 1027 of file SimulatorJsonParser.cpp.
Referenced by ParseAndSetDroneParameters(), ParseDataCapture(), ParsePropOrFoliage(), ParseVehicle(), ParseVolumeDeletion(), ParseWalkerSpawnPoints(), SpawnSensorToVehicle(), and SpawnSensorWorld().
|
staticprivate |
Definition at line 1077 of file SimulatorJsonParser.cpp.
Referenced by ParseThermalCameraParameters().
|
staticprivate |
Definition at line 207 of file SimulatorJsonParser.cpp.
References ComputeAndSetZFromGround(), UEnumUtilities::ConvertStringToVehicleType(), Drone, HandleSpectatorMovement(), ParseAndSetDroneParameters(), ParseAndSetWheeledVehicleParameters(), ParseTransform(), SpawnSensorToVehicle(), and UAssetLibrary::SpawnVehicle().
Referenced by ParseAndOperateJSONFile().
|
staticprivate |
Definition at line 934 of file SimulatorJsonParser.cpp.
References ADeletionVolume::ChangeOverlapBounds(), ADeletionVolume::DestroyOverlappingActors(), and ParseTransform().
Referenced by ParseAndOperateJSONFile().
|
staticprivate |
Definition at line 604 of file SimulatorJsonParser.cpp.
References ParseTransform(), and FWalkerParameters::Points.
Referenced by SpawnWalker().
|
staticprivate |
Definition at line 308 of file SimulatorJsonParser.cpp.
References UEnumUtilities::ConvertStringToSensorType(), DepthCamera, DVSCamera, Lidar, ParseTransform(), Radar, RGBCamera, SemanticSegmentationCamera, ThermalCamera, and Vehicle.
Referenced by ParseVehicle().
|
staticprivate |
Definition at line 404 of file SimulatorJsonParser.cpp.
References AttachActorToSpectatorCamera(), ComputeAndSetZFromGround(), UEnumUtilities::ConvertStringToSensorType(), DepthCamera, DVSCamera, ASimulationLevelManager::GetSensorsManager(), UAgrarsenseStatics::GetSimulationLevelManager(), HandleSpectatorMovement(), IsDataCapture, Lidar, SimulatorLog::Log(), ParseThermalCameraParameters(), ParseTransform(), Radar, RGBCamera, SemanticSegmentationCamera, SpawnedSensorsForDataCapture, and ThermalCamera.
Referenced by ParseAndOperateJSONFile().
|
staticprivate |
Definition at line 526 of file SimulatorJsonParser.cpp.
References UEnumUtilities::ConvertStringToWalkerActionType(), UEnumUtilities::ConvertStringToWalkerEndActionType(), UEnumUtilities::ConvertStringToWalkerType(), GetIntValueOrDefault(), HandleSpectatorMovement(), SimulatorLog::Log(), NONE, ParseWalkerSpawnPoints(), FWalkerParameters::Points, Roaming, UAssetLibrary::SpawnWalker(), Walker, FWalkerParameters::WalkerAction, FWalkerParameters::WalkerEndAction, FWalkerParameters::WalkerSpeed, and FWalkerParameters::WalkerType.
Referenced by ParseAndOperateJSONFile().
|
staticprivate |
Definition at line 114 of file SimulatorJsonParser.h.
Referenced by ParseAndOperateJSONFile(), and SpawnSensorWorld().
|
staticprivate |
Definition at line 116 of file SimulatorJsonParser.h.
Referenced by ParseAndOperateJSONFile(), ParseDataCapture(), and SpawnSensorWorld().