59 lines
1.5 KiB
C++
59 lines
1.5 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "EdGraph/EdGraphNode.h"
|
|
#include "HAL/Platform.h"
|
|
#include "Internationalization/Text.h"
|
|
#include "K2Node.h"
|
|
#include "KismetCompilerMisc.h"
|
|
#include "UObject/NameTypes.h"
|
|
#include "UObject/ObjectMacros.h"
|
|
#include "UObject/UObjectGlobals.h"
|
|
|
|
#include "K2Node_TunnelBoundary.generated.h"
|
|
|
|
class FKismetCompilerContext;
|
|
class UK2Node_Tunnel;
|
|
class UObject;
|
|
|
|
UENUM()
|
|
enum class ETunnelBoundaryType : uint8
|
|
{
|
|
Unknown = 0,
|
|
EntrySite,
|
|
InputSite,
|
|
OutputSite
|
|
};
|
|
|
|
UCLASS()
|
|
class BLUEPRINTGRAPH_API UK2Node_TunnelBoundary : public UK2Node
|
|
{
|
|
GENERATED_UCLASS_BODY()
|
|
|
|
/** Base Name */
|
|
UPROPERTY(Transient)
|
|
FName BaseName;
|
|
|
|
/** Node Type */
|
|
UPROPERTY(Transient)
|
|
ETunnelBoundaryType TunnelBoundaryType;
|
|
|
|
public:
|
|
|
|
//~ Begin UEdGraphNode Interface
|
|
virtual FText GetNodeTitle(ENodeTitleType::Type TitleType) const override;
|
|
//~ End UEdGraphNode Interface
|
|
|
|
//~ Begin K2Node Interface
|
|
virtual class FNodeHandlingFunctor* CreateNodeHandler(FKismetCompilerContext& CompilerContext) const override;
|
|
virtual int32 GetNodeRefreshPriority() const override { return EBaseNodeRefreshPriority::Low_UsesDependentWildcard; }
|
|
//~ End UK2Node Interface
|
|
|
|
/** Returns the type of tunnel boundary this node is */
|
|
ETunnelBoundaryType GetTunnelBoundaryType() const { return TunnelBoundaryType; }
|
|
|
|
/** Set node attributes based on the tunnel source node */
|
|
void SetNodeAttributes(const UK2Node_Tunnel* SourceNode);
|
|
}; |