Files
UnrealEngine/Engine/Source/Editor/PhysicsAssetEditor/Private/PhysicsAssetGraph/PhysicsAssetGraphNode.h
2025-05-18 13:04:45 +08:00

52 lines
1.1 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "EdGraph/EdGraphNode.h"
#include "Internationalization/Text.h"
#include "Math/Vector2D.h"
#include "UObject/UObjectGlobals.h"
#include "PhysicsAssetGraphNode.generated.h"
class UEdGraphPin;
class UObject;
UCLASS()
class UPhysicsAssetGraphNode : public UEdGraphNode
{
GENERATED_UCLASS_BODY()
virtual void SetupPhysicsAssetNode();
virtual UObject* GetDetailsObject();
class UPhysicsAssetGraph* GetPhysicsAssetGraph() const;
// UEdGraphNode implementation
virtual FText GetNodeTitle(ENodeTitleType::Type TitleType) const override;
virtual void AllocateDefaultPins() override;
UEdGraphPin& GetInputPin() const;
UEdGraphPin& GetOutputPin() const;
void SetDimensions(const FVector2D& InDimensions) { Dimensions = InDimensions; }
const FVector2D& GetDimensions() const { return Dimensions; }
protected:
/** Cached title for the node */
FText NodeTitle;
/** Our one input pin */
UEdGraphPin* InputPin;
/** Our one output pin */
UEdGraphPin* OutputPin;
/** Cached dimensions of this node (used for layout) */
FVector2D Dimensions;
};