// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "Animation/AnimData/IAnimationDataController.h" #include "Animation/BuiltInAttributeTypes.h" #include "Containers/Array.h" #include "HAL/Platform.h" #include "Kismet/BlueprintFunctionLibrary.h" #include "UObject/ObjectMacros.h" #include "UObject/ScriptInterface.h" #include "UObject/UObjectGlobals.h" #include "AnimationAttributeBlueprintLibrary.generated.h" class FArrayProperty; class IAnimationDataController; class UAnimDataModel; class UObject; class UScriptStruct; struct FAnimationAttributeIdentifier; struct FFrame; UCLASS(meta=(ScriptName="AnimationAttributeLibrary")) class ANIMATIONBLUEPRINTLIBRARY_API UAnimationAttributeBlueprintLibrary : public UBlueprintFunctionLibrary { GENERATED_BODY() public: UFUNCTION(BlueprintCallable, CustomThunk, Category = "Animation|Attributes", meta=(CustomStructureParam="Value", BlueprintInternalUseOnly="true")) static bool SetAttributeKey(TScriptInterface AnimationDataController, const FAnimationAttributeIdentifier& AttributeIdentifier, float Time, const int32& Value); static bool Generic_SetAttributeKey(TScriptInterface AnimationDataController, const FAnimationAttributeIdentifier& AttributeIdentifier, float Time, UScriptStruct* ScriptStruct, const void* Value); DECLARE_FUNCTION(execSetAttributeKey); UFUNCTION(BlueprintCallable, CustomThunk, Category = "Animation|Attributes", meta=(CustomStructureParam="Values", BlueprintInternalUseOnly="true")) static bool SetAttributeKeys(TScriptInterface AnimationDataController, const FAnimationAttributeIdentifier& AttributeIdentifier, const TArray& Times, const TArray& Values); static bool Generic_SetAttributeKeys(TScriptInterface AnimationDataController, const FAnimationAttributeIdentifier& AttributeIdentifier, const TArray& Times, const void* ValuesArray, const FArrayProperty* ValuesArrayProperty); DECLARE_FUNCTION(execSetAttributeKeys); UFUNCTION(BlueprintCallable, CustomThunk, Category = "Animation|Attributes", meta=(CustomStructureParam="Value", BlueprintInternalUseOnly="true")) static bool GetAttributeKey(TScriptInterface AnimationDataModel, const FAnimationAttributeIdentifier& AttributeIdentifier, float Time, int32& Value); static bool Generic_GetAttributeKey(TScriptInterface AnimationDataModel, const FAnimationAttributeIdentifier& AttributeIdentifier, float Time, UScriptStruct* ScriptStruct, void* Value); DECLARE_FUNCTION(execGetAttributeKey); UFUNCTION(BlueprintCallable, CustomThunk, Category = "Animation|Attributes", meta=(CustomStructureParam="Values", BlueprintInternalUseOnly="true")) static bool GetAttributeKeys(TScriptInterface AnimationDataModel, const FAnimationAttributeIdentifier& AttributeIdentifier, TArray& OutTimes, TArray& Values); static bool Generic_GetAttributeKeys(TScriptInterface AnimationDataModel, const FAnimationAttributeIdentifier& AttributeIdentifier, TArray& Times, void* ValuesArray, const FArrayProperty* ValuesArrayProperty); DECLARE_FUNCTION(execGetAttributeKeys); };