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]
32 lines
1.3 KiB
C++
32 lines
1.3 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "UObject/Interface.h"
|
|
#include "Containers/ArrayView.h"
|
|
#include "Delegates/Delegate.h"
|
|
#include "IAnimBlueprintCompilerHandler.h"
|
|
|
|
enum class EPropertyAccessBatchType : uint8;
|
|
class IAnimBlueprintGeneratedClassCompiledData;
|
|
|
|
// Delegate called when the library is compiled (whether successfully or not)
|
|
DECLARE_MULTICAST_DELEGATE_OneParam(FOnPostLibraryCompiled, IAnimBlueprintGeneratedClassCompiledData& /*OutCompiledData*/)
|
|
|
|
class FPropertyAccessCompilerHandler : public IAnimBlueprintCompilerHandler
|
|
{
|
|
public:
|
|
// Add a copy to the property access library we are compiling
|
|
// @return an integer handle to the pending copy. This can be resolved to a true copy index by calling MapCopyIndex
|
|
virtual int32 AddCopy(TArrayView<FString> InSourcePath, TArrayView<FString> InDestPath, EPropertyAccessBatchType InBatchType, UObject* InObject = nullptr) = 0;
|
|
|
|
// Delegate called when the library is compiled (whether successfully or not)
|
|
virtual FSimpleMulticastDelegate& OnPreLibraryCompiled() = 0;
|
|
|
|
// Delegate called when the library is compiled (whether successfully or not)
|
|
virtual FOnPostLibraryCompiled& OnPostLibraryCompiled() = 0;
|
|
|
|
// Maps the initial integer copy handle to a true handle, post compilation
|
|
virtual int32 MapCopyIndex(int32 InIndex) const = 0;
|
|
}; |