You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
Removed direct access to currently compiling BP class to restrict unguarded mutation. Const-corrected various accessors and overrides. Moved UObject-based compiler subsystems to 'handlers' and removed UObject dependency. Moved from set of virtual functions on subsystems/handlers to a restricted set of contexts passed to specific multicast delegates that handlers subscribe to. Removed anim class subsystems. Moved property access code to engine module (editor code is still in a plugin). Fixed nativized builds where anim BPs have nativized/non-nativized classes in the hierarchy #rb Dan.OConnor #jira none [CL 14278258 by Thomas Sarkanen in ue5-main branch]
89 lines
3.8 KiB
C++
89 lines
3.8 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "IAnimBlueprintCompilationContext.h"
|
|
#include "IAnimBlueprintCompilationBracketContext.h"
|
|
#include "IAnimBlueprintCopyTermDefaultsContext.h"
|
|
#include "IAnimBlueprintPostExpansionStepContext.h"
|
|
|
|
class FAnimBlueprintCompilerContext;
|
|
|
|
class FAnimBlueprintCompilationContext : public IAnimBlueprintCompilationContext
|
|
{
|
|
private:
|
|
friend class FAnimBlueprintCompilerContext;
|
|
friend class IAnimBlueprintCompilationContext;
|
|
|
|
FAnimBlueprintCompilationContext(FAnimBlueprintCompilerContext* InCompilerContext)
|
|
: CompilerContext(InCompilerContext)
|
|
{}
|
|
|
|
virtual void AddPoseLinkMappingRecordImpl(const FPoseLinkMappingRecord& InRecord) override;
|
|
virtual void ProcessAnimationNodesImpl(TArray<UAnimGraphNode_Base*>& AnimNodeList) override;
|
|
virtual void PruneIsolatedAnimationNodesImpl(const TArray<UAnimGraphNode_Base*>& RootSet, TArray<UAnimGraphNode_Base*>& GraphNodes) override;
|
|
virtual void ExpansionStepImpl(UEdGraph* Graph, bool bAllowUbergraphExpansions) override;
|
|
virtual FCompilerResultsLog& GetMessageLogImpl() const override;
|
|
virtual bool ValidateGraphIsWellFormedImpl(UEdGraph* Graph) const override;
|
|
virtual int32 GetAllocationIndexOfNodeImpl(UAnimGraphNode_Base* VisualAnimNode) const override;
|
|
virtual const UBlueprint* GetBlueprintImpl() const override;
|
|
virtual const UAnimBlueprint* GetAnimBlueprintImpl() const override;
|
|
virtual UEdGraph* GetConsolidatedEventGraphImpl() const override;
|
|
virtual void GetLinkedAnimNodesImpl(UAnimGraphNode_Base* InGraphNode, TArray<UAnimGraphNode_Base*>& LinkedAnimNodes) const override;
|
|
virtual const TMap<UAnimGraphNode_Base*, int32>& GetAllocatedAnimNodeIndicesImpl() const override;
|
|
virtual const TMap<UAnimGraphNode_Base*, UAnimGraphNode_Base*>& GetSourceNodeToProcessedNodeMapImpl() const override;
|
|
virtual const TMap<int32, FProperty*>& GetAllocatedPropertiesByIndexImpl() const override;
|
|
virtual const TMap<UAnimGraphNode_Base*, FProperty*>& GetAllocatedPropertiesByNodeImpl() const override;
|
|
virtual IAnimBlueprintCompilerHandler* GetHandlerInternal(FName InName) const override;
|
|
virtual FKismetCompilerContext* GetKismetCompiler() const override;
|
|
|
|
FAnimBlueprintCompilerContext* CompilerContext;
|
|
};
|
|
|
|
class FAnimBlueprintCompilationBracketContext : public IAnimBlueprintCompilationBracketContext
|
|
{
|
|
private:
|
|
friend class FAnimBlueprintCompilerContext;
|
|
|
|
FAnimBlueprintCompilationBracketContext(FAnimBlueprintCompilerContext* InCompilerContext)
|
|
: CompilerContext(InCompilerContext)
|
|
{}
|
|
|
|
virtual FCompilerResultsLog& GetMessageLogImpl() const override;
|
|
virtual IAnimBlueprintCompilerHandler* GetHandlerInternal(FName InName) const override;
|
|
|
|
FAnimBlueprintCompilerContext* CompilerContext;
|
|
};
|
|
|
|
class FAnimBlueprintCopyTermDefaultsContext : public IAnimBlueprintCopyTermDefaultsContext
|
|
{
|
|
private:
|
|
friend class FAnimBlueprintCompilerContext;
|
|
|
|
FAnimBlueprintCopyTermDefaultsContext(FAnimBlueprintCompilerContext* InCompilerContext)
|
|
: CompilerContext(InCompilerContext)
|
|
{}
|
|
|
|
virtual FCompilerResultsLog& GetMessageLogImpl() const override;
|
|
virtual const UAnimBlueprint* GetAnimBlueprintImpl() const override;
|
|
|
|
FAnimBlueprintCompilerContext* CompilerContext;
|
|
};
|
|
|
|
class FAnimBlueprintPostExpansionStepContext : public IAnimBlueprintPostExpansionStepContext
|
|
{
|
|
private:
|
|
friend class FAnimBlueprintCompilerContext;
|
|
|
|
FAnimBlueprintPostExpansionStepContext(FAnimBlueprintCompilerContext* InCompilerContext)
|
|
: CompilerContext(InCompilerContext)
|
|
{}
|
|
|
|
virtual FCompilerResultsLog& GetMessageLogImpl() const override;
|
|
virtual UEdGraph* GetConsolidatedEventGraphImpl() const override;
|
|
virtual const FKismetCompilerOptions& GetCompileOptionsImpl() const override;
|
|
virtual IAnimBlueprintCompilerHandler* GetHandlerInternal(FName InName) const override;
|
|
|
|
FAnimBlueprintCompilerContext* CompilerContext;
|
|
}; |