38 lines
1.2 KiB
C++
38 lines
1.2 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "AssetRegistry/AssetData.h"
|
|
|
|
#define UE_API UAFANIMGRAPHUNCOOKEDONLY_API
|
|
|
|
class URigVMNode;
|
|
class UAnimNextController;
|
|
class URigVMController;
|
|
class UAnimNextRigVMAssetEditorData;
|
|
struct FAnimNextAssetRegistryExports;
|
|
|
|
// Gets a 'pin path' (e.g. MyTrait.MyMember from GET_PIN_PATH_STRING_CHECKED(FMyTrait, MyMember)) while statically verifying that the
|
|
// struct amen member exist
|
|
#define GET_PIN_PATH_STRING_CHECKED(StructName, MemberName) \
|
|
((void)sizeof(UEAsserts_Private::GetMemberNameCheckedJunk(((StructName*)0)->MemberName)), StructName::StaticStruct()->GetName() + TEXT("." #MemberName))
|
|
|
|
namespace UE::UAF::UncookedOnly
|
|
{
|
|
|
|
struct FAnimGraphUtils
|
|
{
|
|
/** Set up a simple animation graph */
|
|
static UE_API void SetupAnimGraph(const FName EntryName, URigVMController* InController, bool bSetupUndoRedo = true, bool bPrintPythonCommand = false);
|
|
|
|
/** Check whether the supplied node is a trait stack */
|
|
static UE_API bool IsTraitStackNode(const URigVMNode* InModelNode);
|
|
|
|
static UE_API bool RequestVMAutoRecompile(UAnimNextRigVMAssetEditorData* EditorData);
|
|
};
|
|
|
|
}
|
|
|
|
#undef UE_API
|