Files
UnrealEngineUWP/Engine/Plugins/Runtime/Metasound/Source/MetasoundFrontend/Public/MetasoundFrontendDocumentModifyDelegates.h
rob gay 9ec52c5d42 Only register assets requested from builder if never built or if builder has transactions logged requiring re-registration (CVar disabled, will enable in subsequent change)
#rb phil.popp
#jira UE-198400
[FYI] helen.yang, Maxwell.Hayes, sondra.moyls, charlie.huguenard

[CL 29291747 by rob gay in ue5-main branch]
2023-10-31 17:16:11 -04:00

57 lines
2.4 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "Delegates/DelegateCombinations.h"
#include "MetasoundFrontendDocument.h"
#include "Templates/SharedPointer.h"
DECLARE_MULTICAST_DELEGATE_OneParam(FOnMetaSoundFrontendDocumentMutateArray, int32 /* Index */);
DECLARE_MULTICAST_DELEGATE_OneParam(FOnMetaSoundFrontendDocumentMutateInterfaceArray, const FMetasoundFrontendInterface& /* Interface */);
DECLARE_MULTICAST_DELEGATE_TwoParams(FOnMetaSoundFrontendDocumentRemoveSwappingArray, int32 /* Index */, int32 /* LastIndex */);
DECLARE_MULTICAST_DELEGATE_TwoParams(FOnMetaSoundFrontendDocumentRenameClass, const int32 /* Index */, const FMetasoundFrontendClassName& /* NewName */);
DECLARE_MULTICAST_DELEGATE_ThreeParams(FOnMetaSoundFrontendDocumentMutateNodeInputLiteralArray, int32 /* NodeIndex */, int32 /* VertexIndex */, int32 /* LiteralIndex */);
namespace Metasound::Frontend
{
struct METASOUNDFRONTEND_API FInterfaceModifyDelegates
{
FOnMetaSoundFrontendDocumentMutateInterfaceArray OnInterfaceAdded;
FOnMetaSoundFrontendDocumentMutateInterfaceArray OnRemovingInterface;
FOnMetaSoundFrontendDocumentMutateArray OnInputAdded;
FOnMetaSoundFrontendDocumentMutateArray OnInputDefaultChanged;
FOnMetaSoundFrontendDocumentMutateArray OnRemovingInput;
FOnMetaSoundFrontendDocumentMutateArray OnOutputAdded;
FOnMetaSoundFrontendDocumentMutateArray OnRemovingOutput;
};
struct METASOUNDFRONTEND_API FNodeModifyDelegates
{
FOnMetaSoundFrontendDocumentMutateArray OnNodeAdded;
FOnMetaSoundFrontendDocumentRemoveSwappingArray OnRemoveSwappingNode;
FOnMetaSoundFrontendDocumentMutateNodeInputLiteralArray OnNodeInputLiteralSet;
FOnMetaSoundFrontendDocumentMutateNodeInputLiteralArray OnRemovingNodeInputLiteral;
};
struct METASOUNDFRONTEND_API FEdgeModifyDelegates
{
FOnMetaSoundFrontendDocumentMutateArray OnEdgeAdded;
FOnMetaSoundFrontendDocumentRemoveSwappingArray OnRemoveSwappingEdge;
};
struct METASOUNDFRONTEND_API FDocumentModifyDelegates : TSharedFromThis<FDocumentModifyDelegates>
{
FOnMetaSoundFrontendDocumentMutateArray OnDependencyAdded;
FOnMetaSoundFrontendDocumentRemoveSwappingArray OnRemoveSwappingDependency;
FOnMetaSoundFrontendDocumentRenameClass OnRenamingDependencyClass;
FInterfaceModifyDelegates InterfaceDelegates;
FNodeModifyDelegates NodeDelegates;
FEdgeModifyDelegates EdgeDelegates;
};
} // namespace Metasound::Frontend