Files
UnrealEngineUWP/Engine/Source/Editor/EnvironmentQueryEditor/Classes/EnvironmentQueryGraph.h
Chris Gagnon 8fc25ea18e Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4676797 by Chris Gagnon in Dev-Editor branch]
2019-01-02 14:54:39 -05:00

47 lines
1.4 KiB
C++

// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "UObject/ObjectMacros.h"
#include "AIGraph.h"
#include "EnvironmentQuery/EnvQueryManager.h"
#include "EnvironmentQueryGraph.generated.h"
class UEnvironmentQueryGraphNode;
class UEnvQueryOption;
class UEnvQueryTest;
UCLASS()
class UEnvironmentQueryGraph : public UAIGraph
{
GENERATED_UCLASS_BODY()
virtual void Initialize() override;
virtual void OnLoaded() override;
virtual void UpdateVersion() override;
virtual void MarkVersion() override;
virtual void UpdateAsset(int32 UpdateFlags = 0) override;
void UpdateDeprecatedGeneratorClasses();
void SpawnMissingNodes();
void CalculateAllWeights();
void CreateEnvQueryFromGraph(class UEnvironmentQueryGraphNode* RootEdNode);
void ResetProfilerStats();
#if USE_EQS_DEBUGGER
void StoreProfilerStats(const FEQSDebugger::FStatsInfo& Stats);
#endif
protected:
void UpdateVersion_NestedNodes();
void UpdateVersion_FixupOuters();
void UpdateVersion_CollectClassData();
virtual void CollectAllNodeInstances(TSet<UObject*>& NodeInstances) override;
virtual void OnNodeInstanceRemoved(UObject* NodeInstance) override;
virtual void OnNodesPasted(const FString& ImportStr) override;
void SpawnMissingSubNodes(UEnvQueryOption* Option, TSet<UEnvQueryTest*> ExistingTests, UEnvironmentQueryGraphNode* OptionNode);
};