25 #if defined(WITH_CHRONO) && PLATFORM_WINDOWS
26 const FString BaseDir = FPaths::Combine(*FPaths::ProjectPluginsDir(), TEXT(
"Carla"));
27 const FString DllDir = FPaths::Combine(*BaseDir, TEXT(
"CarlaDependencies"), TEXT(
"dll"));
28 FString ChronoEngineDll = FPaths::Combine(*DllDir, TEXT(
"ChronoEngine.dll"));
29 FString ChronoVehicleDll = FPaths::Combine(*DllDir, TEXT(
"ChronoEngine_vehicle.dll"));
30 FString ChronoModelsDll = FPaths::Combine(*DllDir, TEXT(
"ChronoModels_vehicle.dll"));
31 FString ChronoRobotDll = FPaths::Combine(*DllDir, TEXT(
"ChronoModels_robot.dll"));
32 UE_LOG(LogCarla, Log, TEXT(
"Loading Dlls from: %s"), *DllDir);
35 auto ChronoEngineHandle = FPlatformProcess::GetDllHandle(*ChronoEngineDll);
36 if (!ChronoEngineHandle)
38 UE_LOG(LogCarla, Warning, TEXT(
"Error: ChronoEngine.dll could not be loaded"));
40 auto ChronoVehicleHandle = FPlatformProcess::GetDllHandle(*ChronoVehicleDll);
41 if (!ChronoVehicleHandle)
43 UE_LOG(LogCarla, Warning, TEXT(
"Error: ChronoEngine_vehicle.dll could not be loaded"));
45 auto ChronoModelsHandle = FPlatformProcess::GetDllHandle(*ChronoModelsDll);
46 if (!ChronoModelsHandle)
48 UE_LOG(LogCarla, Warning, TEXT(
"Error: ChronoModels_vehicle.dll could not be loaded"));
50 auto ChronoRobotHandle = FPlatformProcess::GetDllHandle(*ChronoRobotDll);
51 if (!ChronoRobotHandle)
53 UE_LOG(LogCarla, Warning, TEXT(
"Error: ChronoModels_robot.dll could not be loaded"));
71 if (ISettingsModule* SettingsModule = FModuleManager::GetModulePtr<ISettingsModule>(
"Settings"))
74 ISettingsContainerPtr SettingsContainer = SettingsModule->GetContainer(
"Project");
76 SettingsContainer->DescribeCategory(
"CARLASettings",
77 LOCTEXT(
"RuntimeWDCategoryName",
"CARLA Settings"),
78 LOCTEXT(
"RuntimeWDCategoryDescription",
"CARLA plugin settings"));
81 ISettingsSectionPtr SettingsSection = SettingsModule->RegisterSettings(
"Project",
"CARLASettings",
"General",
82 LOCTEXT(
"RuntimeGeneralSettingsName",
"General"),
83 LOCTEXT(
"RuntimeGeneralSettingsDescription",
"General configuration for the CARLA plugin"),
84 GetMutableDefault<UCarlaSettings>()
88 if (SettingsSection.IsValid())
UE_LOG(LogCarla, Log, TEXT("UActorDispatcher::Destroying actor: '%s' %x"), *Id, Actor)