Files
UnrealEngineUWP/Engine/Source/Runtime/NavigationSystem/Private/NavGraph/NavGraphGenerator.h
Ben Marsh 530369c613 Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none
#rnx

[CL 4662695 by Ben Marsh in Dev-Build branch]
2018-12-14 14:49:12 -05:00

47 lines
1.2 KiB
C++

// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "GameFramework/Volume.h"
#include "AI/NavDataGenerator.h"
class ANavigationGraph;
/**
* Class that handles generation of the ANavigationGraph data
*/
class FNavGraphGenerator : public FNavDataGenerator
{
public:
FNavGraphGenerator(ANavigationGraph* InDestNavGraph);
virtual ~FNavGraphGenerator();
private:
/** Prevent copying. */
FNavGraphGenerator(FNavGraphGenerator const& NoCopy) { check(0); };
FNavGraphGenerator& operator=(FNavGraphGenerator const& NoCopy) { check(0); return *this; }
public:
//----------------------------------------------------------------------//
// FNavDataGenerator overrides
//----------------------------------------------------------------------//
virtual bool IsBuildInProgress(bool bCheckDirtyToo = false) const override;
private:
// Performs initial setup of member variables so that generator is ready to do its thing from this point on
void Init();
void CleanUpIntermediateData();
void UpdateBuilding();
private:
/** Bounding geometry definition. */
TArray<AVolume const*> InclusionVolumes;
FCriticalSection GraphChangingLock;
ANavigationGraph* DestNavGraph;
uint32 bInitialized:1;
};