// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "CoreMinimal.h" #include "UObject/ObjectMacros.h" #include "UObject/WeakObjectPtrTemplates.h" #include "EdGraph/EdGraphNodeUtils.h" #include "K2Node.h" #include "UObject/SoftObjectPath.h" #include "EdGraphSchema_K2.h" #include "RigVMModel/RigVMGraph.h" #include "EdGraph/RigVMEdGraphNode.h" #include "ControlRigGraphNode.generated.h" class FBlueprintActionDatabaseRegistrar; class UEdGraph; struct FSlateIcon; class UControlRigBlueprint; /** Base class for animation ControlRig-related nodes */ UCLASS() class CONTROLRIGDEVELOPER_API UControlRigGraphNode : public URigVMEdGraphNode { GENERATED_BODY() friend class FControlRigGraphNodeDetailsCustomization; friend class FControlRigBlueprintCompilerContext; friend class UControlRigGraph; friend class UControlRigGraphSchema; friend class UControlRigBlueprint; friend class FControlRigGraphTraverser; friend class FControlRigGraphPanelPinFactory; friend class FControlRigEditor; friend class SControlRigGraphPinCurveFloat; public: UControlRigGraphNode(); private: friend class SRigVMGraphNode; friend class FControlRigArgumentLayout; friend class FControlRigGraphDetails; friend class UControlRigTemplateNodeSpawner; friend class UControlRigArrayNodeSpawner; friend class UControlRigIfNodeSpawner; friend class UControlRigSelectNodeSpawner; };