Files
UnrealEngine/Engine/Source/Runtime/TimeManagement/Public/MusicalTimeFunctionLibrary.h
2025-05-18 13:04:45 +08:00

37 lines
1.2 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "Kismet/BlueprintFunctionLibrary.h"
#include "Misc/MusicalTime.h"
#include "MusicalTimeFunctionLibrary.generated.h"
class UObject;
struct FFrame;
struct FMusicalTime;
/**
* Expose FMusicalTime methods to blueprints
*/
UCLASS(meta = (BlueprintThreadSafe, ScriptName = "MusicalTimeFunctionLibrary"), MinimalAPI)
class UMusicalTimeFunctionLibrary : public UBlueprintFunctionLibrary
{
GENERATED_BODY()
public:
UFUNCTION(BlueprintPure, meta = (DisplayName = "Is Valid Musical Time"), Category = "Utilities|Musical Time")
static bool IsValid(const FMusicalTime& InMusicalTime);
UFUNCTION(BlueprintPure, meta = (DisplayName = "Fractional Beat In Bar"), Category = "Utilities|Musical Time")
static float FractionalBeatsInBar(const FMusicalTime& InMusicalTime);
UFUNCTION(BlueprintPure, meta = (DisplayName = "Fractional Bar"), Category = "Utilities|Musical Time")
static float FractionalBars(const FMusicalTime& InMusicalTime);
UFUNCTION(BlueprintPure, meta = (DisplayName = "Bar & Beat"), Category = "Utilities|Musical Time")
static void BarAndBeat(const FMusicalTime& InMusicalTime, int& Bar, float& Beat);
};