// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "UObject/ObjectMacros.h" #include "Misc/Timecode.h" #include "FrameRange.h" #include "MetaHumanTakeData.generated.h" /** * Enum that describes how the operations of the capture source should be executed */ UENUM(meta = (Deprecated = "5.7", DeprecationMessage = "MetaHumanAnimator/MetaHumanCaptureSource is deprecated. This functionality is now available in the CaptureManager/CaptureManagerDevices module")) enum class UE_DEPRECATED(5.7, "MetaHumanAnimator/MetaHumanCaptureSource is deprecated. This functionality is now available in the CaptureManager/CaptureManagerDevices module") ETakeIngestMode : uint8 { Async, Blocking, }; using TakeId = int32; enum { INVALID_ID = -1 }; USTRUCT(BlueprintType, meta = (Deprecated = "5.7", DeprecationMessage = "MetaHumanAnimator/MetaHumanCaptureSource is deprecated. This functionality is now available in the CaptureManager/CaptureManagerDevices module")) // DEPRECATED: This functionality is now available in the CaptureManager/CaptureManagerDevices module. struct FMetaHumanTakeInfo { GENERATED_BODY() // Note: We can't use UE_DEPRECATED to deprecate this type unfortunately. If we try, we hit warnings in TTuple which // we can't suppress, or else warnings in UHT generated files which we likewise can't suppress. UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") FString Name; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") int32 Id = INVALID_ID; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") int32 NumFrames = 0; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") double FrameRate = 0; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") int32 TakeNumber = 0; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") FIntPoint Resolution = FIntPoint::NoneValue; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") FIntPoint DepthResolution = FIntPoint::NoneValue; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") FDateTime Date; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") int32 NumStreams = 0; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") FString DeviceModel; // A list of tags that describe this take, if any UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") TSet Tags; // Any data we want to have on a per-take basis UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") TMap Metadata; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") TArray RawThumbnailData; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") FString OutputDirectory; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take Info") TArray Issues; }; USTRUCT(BlueprintType, meta = (Deprecated = "5.7", DeprecationMessage = "MetaHumanAnimator/MetaHumanCaptureSource is deprecated. This functionality is now available in the CaptureManager/CaptureManagerDevices module")) struct UE_DEPRECATED(5.7, "MetaHumanAnimator/MetaHumanCaptureSource is deprecated. This functionality is now available in the CaptureManager/CaptureManagerDevices module") FMetaHumanTakeView { GENERATED_BODY() UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take View") TObjectPtr Video; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take View") bool bVideoTimecodePresent = false; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take View") FTimecode VideoTimecode; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take View") FFrameRate VideoTimecodeRate; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take View") TObjectPtr Depth; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take View") bool bDepthTimecodePresent = false; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take View") FTimecode DepthTimecode; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take View") FFrameRate DepthTimecodeRate; }; USTRUCT(BlueprintType, meta = (Deprecated = "5.7", DeprecationMessage = "MetaHumanAnimator/MetaHumanCaptureSource is deprecated. This functionality is now available in the CaptureManager/CaptureManagerDevices module")) struct UE_DEPRECATED(5.7, "MetaHumanAnimator/MetaHumanCaptureSource is deprecated. This functionality is now available in the CaptureManager/CaptureManagerDevices module") FMetaHumanTake { GENERATED_BODY() UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take") int32 TakeId = INVALID_ID; PRAGMA_DISABLE_DEPRECATION_WARNINGS UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take") TArray Views; PRAGMA_ENABLE_DEPRECATION_WARNINGS UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take") TObjectPtr CameraCalibration; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take") TObjectPtr Audio; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take") bool bAudioTimecodePresent = false; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take") FTimecode AudioTimecode; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take") FFrameRate AudioTimecodeRate; UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Take") TArray CaptureExcludedFrames; };