From a55bafeacd258c48f8ed850dca95679039b07a08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Santos-Oliv=C3=A1n?= Date: Wed, 30 Jun 2021 13:16:25 +0200 Subject: [PATCH] CarlaWheeledVehicle: Telemetry is enable/disable with one methor --- .../Carla/Vehicle/CarlaWheeledVehicle.cpp | 32 +++++++++---------- .../Carla/Vehicle/CarlaWheeledVehicle.h | 5 +-- 2 files changed, 16 insertions(+), 21 deletions(-) diff --git a/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/CarlaWheeledVehicle.cpp b/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/CarlaWheeledVehicle.cpp index a028b64e3..f5943e892 100644 --- a/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/CarlaWheeledVehicle.cpp +++ b/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/CarlaWheeledVehicle.cpp @@ -465,28 +465,26 @@ void ACarlaWheeledVehicle::DeactivateVelocityControl() VelocityControl->Deactivate(); } -void ACarlaWheeledVehicle::EnableDebugTelemetry() +void ACarlaWheeledVehicle::ShowDebugTelemetry(bool Enabled) { if (GetWorld()->GetFirstPlayerController()) { ACarlaHUD* hud = Cast(GetWorld()->GetFirstPlayerController()->GetHUD()); - if (hud) - hud->AddDebugVehicleForTelemetry(GetVehicleMovementComponent()); - else - UE_LOG(LogCarla, Warning, TEXT("ACarlaWheeledVehicle::EnableDebugTelemetry:: Cannot find HUD for debug info")); - } -} + if (hud) { -void ACarlaWheeledVehicle::DisableDebugTelemetry() -{ - if (GetWorld()->GetFirstPlayerController()) - { - ACarlaHUD* hud = Cast(GetWorld()->GetFirstPlayerController()->GetHUD()); + // Set/Unset the car movement component in HUD to show the temetry + if (Enabled) { + hud->AddDebugVehicleForTelemetry(GetVehicleMovementComponent()); + } + else{ + if (hud->DebugVehicle == GetVehicleMovementComponent()) + hud->AddDebugVehicleForTelemetry(nullptr); + } - if (hud) - hud->AddDebugVehicleForTelemetry(nullptr); - else - UE_LOG(LogCarla, Warning, TEXT("ACarlaWheeledVehicle::DisableDebugTelemetry:: Cannot find HUD for debug info")); + } + else { + UE_LOG(LogCarla, Warning, TEXT("ACarlaWheeledVehicle::ShowDebugTelemetry:: Cannot find HUD for debug info")); + } } } @@ -583,5 +581,5 @@ FVector ACarlaWheeledVehicle::GetVelocity() const void ACarlaWheeledVehicle::EndPlay(const EEndPlayReason::Type EndPlayReason) { - DisableDebugTelemetry(); + ShowDebugTelemetry(false); } diff --git a/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/CarlaWheeledVehicle.h b/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/CarlaWheeledVehicle.h index 8a707ab92..99bd6fb68 100644 --- a/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/CarlaWheeledVehicle.h +++ b/Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Vehicle/CarlaWheeledVehicle.h @@ -177,10 +177,7 @@ public: void DeactivateVelocityControl(); UFUNCTION(Category = "CARLA Wheeled Vehicle", BlueprintCallable) - void EnableDebugTelemetry(); - - UFUNCTION(Category = "CARLA Wheeled Vehicle", BlueprintCallable) - void DisableDebugTelemetry(); + void ShowDebugTelemetry(bool Enabled); /// @todo This function should be private to AWheeledVehicleAIController. void FlushVehicleControl();