Files
UnrealEngineUWP/Engine/Plugins/Runtime/nDisplayModularFeatures/Source/DisplayClusterModularFeaturesEditor/Public/IDisplayClusterModularFeatureMediaInitializer.h
andrey yamashev 3c4a9f979f [nDisplay] Default parameters for ICVFX tiled media
#jira UE-207869, UE-207871
#rb Alejandro.Arango

[CL 32046503 by andrey yamashev in ue5-main branch]
2024-03-05 23:30:48 -05:00

44 lines
1.2 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Features/IModularFeature.h"
/**
* Base class for nDisplay media initializer implementations.
*/
class DISPLAYCLUSTERMODULARFEATURESEDITOR_API IDisplayClusterModularFeatureMediaInitializer
: public IModularFeature
{
public:
/** Public feature name */
static const FName ModularFeatureName;
public:
virtual ~IDisplayClusterModularFeatureMediaInitializer() = default;
public:
/**
* Checks if media subject is supported by the initializer
*
* @param MediaSubject - UMediaSource or UMediaOutput instance
* @return true if media subject supported
*/
virtual bool IsMediaSubjectSupported(const UObject* MediaSubject) = 0;
/**
* Performs initialization of a media subject
*
* @param MediaSubject - UMediaSource or UMediaOutput instance
* @param OwnerName - Owner name (e.g. ICVFX camera component)
* @param OwnerUniqueIdx - Unique owner index
* @param TilePos - TIle XY-position
*
* @return true if media subject supported
*/
virtual void InitializeMediaSubjectForTile(UObject* MediaSubject, const FString& OwnerName, uint8 OwnerUniqueIdx, const FIntPoint& TilePos) = 0;
};