UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
GameplayDebuggerAddonBase.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
7
8class UWorld;
9class AActor;
12
13class FGameplayDebuggerAddonBase : public TSharedFromThis<FGameplayDebuggerAddonBase>
14{
15public:
16
18
19 int32 GetNumInputHandlers() const { return InputHandlers.Num(); }
24 GAMEPLAYDEBUGGER_API UWorld* GetDataWorld(const APlayerController* OwnerPC, const AActor* DebugActor) const;
25
28
31
34
35protected:
36
39
42
44 template<class UserClass>
45 bool BindKeyPress(FName KeyName, UserClass* KeyHandlerObject, typename FGameplayDebuggerInputHandler::FHandler::TMethodPtr< UserClass > KeyHandlerFunc, EGameplayDebuggerInputMode InputMode = EGameplayDebuggerInputMode::Local)
46 {
48 NewHandler.KeyName = KeyName;
50 NewHandler.Mode = InputMode;
51
52 if (NewHandler.IsValid())
53 {
54 InputHandlers.Add(NewHandler);
55 return true;
56 }
57
58 return false;
59 }
60
62 template<class UserClass>
63 bool BindKeyPress(FName KeyName, FGameplayDebuggerInputModifier KeyModifer, UserClass* KeyHandlerObject, typename FGameplayDebuggerInputHandler::FHandler::TMethodPtr< UserClass > KeyHandlerFunc, EGameplayDebuggerInputMode InputMode = EGameplayDebuggerInputMode::Local)
64 {
66 NewHandler.KeyName = KeyName;
67 NewHandler.Modifier = KeyModifer;
69 NewHandler.Mode = InputMode;
70
71 if (NewHandler.IsValid())
72 {
73 InputHandlers.Add(NewHandler);
74 return true;
75 }
76
77 return false;
78 }
79
81 template<class UserClass>
82 bool BindKeyPress(const FGameplayDebuggerInputHandlerConfig& InputConfig, UserClass* KeyHandlerObject, typename FGameplayDebuggerInputHandler::FHandler::TMethodPtr< UserClass > KeyHandlerFunc, EGameplayDebuggerInputMode InputMode = EGameplayDebuggerInputMode::Local)
83 {
86 NewHandler.Modifier = InputConfig.Modifier;
88 NewHandler.Mode = InputMode;
89
90 if (NewHandler.IsValid())
91 {
92 InputHandlers.Add(NewHandler);
93 return true;
94 }
95
96 return false;
97 }
98
99private:
100
102
105
108};
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
EGameplayDebuggerInputMode
Definition GameplayDebuggerTypes.h:352
Definition Actor.h:257
Definition GameplayDebuggerCategoryReplicator.h:119
Definition PlayerController.h:261
Definition GameplayDebuggerAddonBase.h:14
virtual ~FGameplayDebuggerAddonBase()
Definition GameplayDebuggerAddonBase.h:17
GAMEPLAYDEBUGGER_API AGameplayDebuggerCategoryReplicator * GetReplicator() const
Definition GameplayDebuggerAddonBase.cpp:16
bool BindKeyPress(FName KeyName, UserClass *KeyHandlerObject, typename FGameplayDebuggerInputHandler::FHandler::TMethodPtr< UserClass > KeyHandlerFunc, EGameplayDebuggerInputMode InputMode=EGameplayDebuggerInputMode::Local)
Definition GameplayDebuggerAddonBase.h:45
int32 GetNumInputHandlers() const
Definition GameplayDebuggerAddonBase.h:19
bool BindKeyPress(FName KeyName, FGameplayDebuggerInputModifier KeyModifer, UserClass *KeyHandlerObject, typename FGameplayDebuggerInputHandler::FHandler::TMethodPtr< UserClass > KeyHandlerFunc, EGameplayDebuggerInputMode InputMode=EGameplayDebuggerInputMode::Local)
Definition GameplayDebuggerAddonBase.h:63
static GAMEPLAYDEBUGGER_API bool IsSimulateInEditor()
Definition GameplayDebuggerAddonBase.cpp:57
GAMEPLAYDEBUGGER_API FString GetInputHandlerDescription(int32 HandlerId) const
Definition GameplayDebuggerAddonBase.cpp:21
GAMEPLAYDEBUGGER_API UWorld * GetWorldFromReplicator() const
Definition GameplayDebuggerAddonBase.cpp:26
bool BindKeyPress(const FGameplayDebuggerInputHandlerConfig &InputConfig, UserClass *KeyHandlerObject, typename FGameplayDebuggerInputHandler::FHandler::TMethodPtr< UserClass > KeyHandlerFunc, EGameplayDebuggerInputMode InputMode=EGameplayDebuggerInputMode::Local)
Definition GameplayDebuggerAddonBase.h:82
GAMEPLAYDEBUGGER_API UWorld * GetDataWorld(const APlayerController *OwnerPC, const AActor *DebugActor) const
Definition GameplayDebuggerAddonBase.cpp:32
FGameplayDebuggerInputHandler & GetInputHandler(int32 HandlerId)
Definition GameplayDebuggerAddonBase.h:20
virtual GAMEPLAYDEBUGGER_API void OnGameplayDebuggerActivated()
Definition GameplayDebuggerAddonBase.cpp:47
GAMEPLAYDEBUGGER_API AActor * FindLocalDebugActor() const
Definition GameplayDebuggerAddonBase.cpp:10
virtual GAMEPLAYDEBUGGER_API void OnGameplayDebuggerDeactivated()
Definition GameplayDebuggerAddonBase.cpp:52
Definition GameplayDebuggerAddonManager.h:33
Definition NameTypes.h:617
Definition Array.h:670
UE_REWRITE SizeType Num() const
Definition Array.h:1144
UE_NODEBUG UE_FORCEINLINE_HINT SizeType Add(ElementType &&Item)
Definition Array.h:2696
Definition SharedPointer.h:1640
Definition World.h:918
Definition GameplayDebuggerTypes.h:405
Definition GameplayDebuggerTypes.h:385
FName KeyName
Definition GameplayDebuggerTypes.h:388
Definition GameplayDebuggerTypes.h:361
Definition WeakObjectPtrTemplates.h:25