CarlaWheeledVehicle: Telemetry is enable/disable with one methor

This commit is contained in:
Daniel Santos-Oliván 2021-06-30 13:16:25 +02:00 committed by bernat
parent 7c4f26f15b
commit a55bafeacd
2 changed files with 16 additions and 21 deletions

View File

@ -465,28 +465,26 @@ void ACarlaWheeledVehicle::DeactivateVelocityControl()
VelocityControl->Deactivate();
}
void ACarlaWheeledVehicle::EnableDebugTelemetry()
void ACarlaWheeledVehicle::ShowDebugTelemetry(bool Enabled)
{
if (GetWorld()->GetFirstPlayerController())
{
ACarlaHUD* hud = Cast<ACarlaHUD>(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<ACarlaHUD>(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);
}

View File

@ -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();