CARLA
VehicleInputPriority.h
Go to the documentation of this file.
1 // Copyright (c) 2017 Computer Vision Center (CVC) at the Universitat Autonoma
2 // de Barcelona (UAB).
3 //
4 // This work is licensed under the terms of the MIT license.
5 // For a copy, see <https://opensource.org/licenses/MIT>.
6 
7 #pragma once
8 
9 #include <type_traits>
10 
11 #include "VehicleInputPriority.generated.h"
12 
13 UENUM(BlueprintType)
14 enum class EVehicleInputPriority : uint8
15 {
16  Null = 0, // Workarround for UE4.24 issue with enums
17  INVALID = 0u UMETA(Hidden),
18 
19  Lowest UMETA(DisplayName = "Lowest Priority", ToolTip = "Use for debugging purposes only"),
20  Relaxation UMETA(DisplayName = "Control Relaxation Input", ToolTip = "Control relaxation when no other input is provided (non-sticky control)"),
21  Autopilot UMETA(DisplayName = "Autopilot Input", ToolTip = "Input provided by the built-in autopilot"),
22  User UMETA(DisplayName = "User Input", ToolTip = "Input provided by an user playing in the simulator"),
23  Client UMETA(DisplayName = "Client Input", ToolTip = "Input provided by an RPC client connected to the simulator"),
24  Highest UMETA(DisplayName = "Highest Priority", ToolTip = "Use for debugging purposes only")
25 };
26 
28 {
29  auto Cast = [](auto e) { return static_cast<typename std::underlying_type<decltype(e)>::type>(e); };
30  return Cast(Lhs) <= Cast(Rhs);
31 }
static bool operator<=(EVehicleInputPriority Lhs, EVehicleInputPriority Rhs)
EVehicleInputPriority