Files
UnrealEngineUWP/Engine/Source/Runtime/InteractiveToolsFramework/Public/TargetInterfaces/AssetBackedTarget.h
michael balzer 2b10993563 Move InteractiveToolsFramework and GeometryFramework out of Experimental
#jira UETOOL-3823
#rb brooke.hubert
#preflight 6109d1e9b4288d0001acb7ef

[CL 17055606 by michael balzer in ue5-main branch]
2021-08-04 13:58:55 -04:00

33 lines
759 B
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Engine/EngineTypes.h"
#include "UObject/Interface.h"
#include "ToolTargets/ToolTarget.h"
#include "AssetBackedTarget.generated.h"
UINTERFACE()
class INTERACTIVETOOLSFRAMEWORK_API UAssetBackedTarget : public UInterface
{
GENERATED_BODY()
};
class INTERACTIVETOOLSFRAMEWORK_API IAssetBackedTarget
{
GENERATED_BODY()
public:
/**
* @return the underlying source asset for this Target.
*/
virtual UObject* GetSourceData() const = 0;
virtual bool HasSameSourceData(UToolTarget* OtherTarget) const
{
IAssetBackedTarget* OtherAsset = Cast<IAssetBackedTarget>(OtherTarget);
return OtherAsset && GetSourceData() == OtherAsset->GetSourceData();
}
};