CARLA
WalkerController.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 
12 
13 #include "CoreMinimal.h"
14 #include "GameFramework/Controller.h"
15 
19 
20 #include "WalkerController.generated.h"
21 
22 UCLASS()
23 class CARLA_API AWalkerController : public AController
24 {
25  GENERATED_BODY()
26 
27 public:
28 
29  AWalkerController(const FObjectInitializer &ObjectInitializer);
30 
31  void OnPossess(APawn *InPawn) override;
32 
33  void Tick(float DeltaSeconds) override;
34 
35  /// Maximum walk speed allowed in centimetres per second.
36  UFUNCTION(BlueprintCallable)
37  float GetMaximumWalkSpeed() const
38  {
39  return 4096.0f; // ~147 km/h
40  }
41 
42  UFUNCTION(BlueprintCallable)
43  void ApplyWalkerControl(const FWalkerControl &InControl);
44 
45  UFUNCTION(BlueprintCallable)
46  const FWalkerControl GetWalkerControl() const
47  {
48  return Control;
49  }
50 
51  UFUNCTION(BlueprintCallable)
52  void GetBonesTransform(FWalkerBoneControlOut &WalkerBones);
53 
54  UFUNCTION(BlueprintCallable)
55  void SetBonesTransform(const FWalkerBoneControlIn &WalkerBones);
56 
57  UFUNCTION(BlueprintCallable)
58  void BlendPose(float Blend);
59 
60  UFUNCTION(BlueprintCallable)
61  void GetPoseFromAnimation();
62 
63 private:
64 
66 };
FWalkerControl Control