Files
UnrealEngineUWP/Engine/Plugins/Runtime/SmartObjects/Source/SmartObjectsModule/Private/SmartObjectsModule.cpp

47 lines
1.3 KiB
C++
Raw Normal View History

// Copyright Epic Games, Inc. All Rights Reserved.
#include "SmartObjectsModule.h"
#include "Modules/ModuleManager.h"
#include "SmartObjectTypes.h"
#if WITH_GAMEPLAY_DEBUGGER && WITH_SMARTOBJECT_DEBUG
#include "GameplayDebugger.h"
#include "GameplayDebuggerCategory_SmartObject.h"
#endif
#define LOCTEXT_NAMESPACE "SmartObjects"
class FSmartObjectsModule : public ISmartObjectsModule
{
virtual void StartupModule() override;
virtual void ShutdownModule() override;
};
IMPLEMENT_MODULE(FSmartObjectsModule, SmartObjectsModule)
void FSmartObjectsModule::StartupModule()
{
#if WITH_GAMEPLAY_DEBUGGER && WITH_SMARTOBJECT_DEBUG
IGameplayDebugger& GameplayDebuggerModule = IGameplayDebugger::Get();
GameplayDebuggerModule.RegisterCategory("SmartObject",
IGameplayDebugger::FOnGetCategory::CreateStatic(&FGameplayDebuggerCategory_SmartObject::MakeInstance),
EGameplayDebuggerCategoryState::EnabledInGameAndSimulate);
GameplayDebuggerModule.NotifyCategoriesChanged();
#endif
}
void FSmartObjectsModule::ShutdownModule()
{
#if WITH_GAMEPLAY_DEBUGGER && WITH_SMARTOBJECT_DEBUG
if (IGameplayDebugger::IsAvailable())
{
IGameplayDebugger& GameplayDebuggerModule = IGameplayDebugger::Get();
GameplayDebuggerModule.UnregisterCategory("SmartObject");
GameplayDebuggerModule.NotifyCategoriesChanged();
}
#endif
}
#undef LOCTEXT_NAMESPACE