CriWare Unreal Engine
Plug-ins for CriWare solutions.
読み取り中…
検索中…
一致する文字列を見つけられません
UAtomQuartzClockHandle クラス

#include <AtomMixerClockHandle.h>

UAtomQuartzClockHandle の継承関係図

公開メンバ関数

CRI_API UAtomQuartzClockHandle ()
CRI_API ~UAtomQuartzClockHandle ()
CRI_API void BeginDestroy () override
bool DoesClockExist (const UObject *WorldContextObject) const
CRI_API float GetBeatProgressPercent (EQuartzCommandQuantization QuantizationBoundary=EQuartzCommandQuantization::Beat, float PhaseOffset=0.f, float MsOffset=0.f)
CRI_API float GetBeatsPerMinute (const UObject *WorldContextObject) const
FName GetClockName () const
CRI_API bool GetCurrentTickRate (const UObject *WorldContextObject, Audio::FQuartzClockTickRate &OutTickRate) const
CRI_API FQuartzTransportTimeStamp GetCurrentTimestamp (const UObject *WorldContextObject)
CRI_API float GetDurationOfQuantizationTypeInSeconds (const UObject *WorldContextObject, const EQuartzCommandQuantization &QuantizationType, float Multiplier=1.0f)
CRI_API float GetEstimatedRunTime (const UObject *WorldContextObject)
CRI_API float GetMillisecondsPerTick (const UObject *WorldContextObject) const
CRI_API float GetSecondsPerTick (const UObject *WorldContextObject) const
CRI_API float GetThirtySecondNotesPerMinute (const UObject *WorldContextObject) const
CRI_API float GetTicksPerSecond (const UObject *WorldContextObject) const
CRI_API bool IsClockRunning (const UObject *WorldContextObject)
CRI_API void NotifyOnQuantizationBoundary (const UObject *WorldContextObject, FQuartzQuantizationBoundary InQuantizationBoundary, const FOnQuartzCommandEventBP &InDelegate, float InMsOffset=0.f)
CRI_API void PauseClock (const UObject *WorldContextObject, UAtomQuartzClockHandle *&ClockHandle)
CRI_API void QueueQuantizedSound (const UObject *WorldContextObject, UAtomQuartzClockHandle *&ClockHandle, const FAtomComponentCommandInfo &AudioComponentData, const FOnQuartzCommandEventBP &InDelegate, const FQuartzQuantizationBoundary &InTargetBoundary)
CRI_API void ResetTransport (const UObject *WorldContextObject, const FOnQuartzCommandEventBP &InDelegate)
CRI_API void ResetTransportQuantized (const UObject *WorldContextObject, FQuartzQuantizationBoundary InQuantizationBoundary, const FOnQuartzCommandEventBP &InDelegate, UAtomQuartzClockHandle *&ClockHandle)
CRI_API void ResumeClock (const UObject *WorldContextObject, UAtomQuartzClockHandle *&ClockHandle)
CRI_API void SetBeatsPerMinute (const UObject *WorldContextObject, UPARAM(ref) const FQuartzQuantizationBoundary &QuantizationBoundary, const FOnQuartzCommandEventBP &Delegate, UAtomQuartzClockHandle *&ClockHandle, float BeatsPerMinute=60.f)
CRI_API void SetMillisecondsPerTick (const UObject *WorldContextObject, UPARAM(ref) const FQuartzQuantizationBoundary &QuantizationBoundary, const FOnQuartzCommandEventBP &Delegate, UAtomQuartzClockHandle *&ClockHandle, float MillisecondsPerTick=100.f)
CRI_API void SetSecondsPerTick (const UObject *WorldContextObject, UPARAM(ref) const FQuartzQuantizationBoundary &QuantizationBoundary, const FOnQuartzCommandEventBP &Delegate, UAtomQuartzClockHandle *&ClockHandle, float SecondsPerTick=0.25f)
CRI_API void SetThirtySecondNotesPerMinute (const UObject *WorldContextObject, UPARAM(ref) const FQuartzQuantizationBoundary &QuantizationBoundary, const FOnQuartzCommandEventBP &Delegate, UAtomQuartzClockHandle *&ClockHandle, float ThirtySecondsNotesPerMinute=960.f)
CRI_API void SetTicksPerSecond (const UObject *WorldContextObject, UPARAM(ref) const FQuartzQuantizationBoundary &QuantizationBoundary, const FOnQuartzCommandEventBP &Delegate, UAtomQuartzClockHandle *&ClockHandle, float TicksPerSecond=10.f)
CRI_API void StartClock (const UObject *WorldContextObject, UAtomQuartzClockHandle *&ClockHandle)
CRI_API void StartOtherClock (const UObject *WorldContextObject, FName OtherClockName, FQuartzQuantizationBoundary InQuantizationBoundary, const FOnQuartzCommandEventBP &InDelegate)
CRI_API void StopClock (const UObject *WorldContextObject, bool CancelPendingEvents, UAtomQuartzClockHandle *&ClockHandle)
CRI_API void SubscribeToAllQuantizationEvents (const UObject *WorldContextObject, const FOnQuartzMetronomeEventBP &OnQuantizationEvent, UAtomQuartzClockHandle *&ClockHandle)
CRI_API UAtomQuartzClockHandleSubscribeToClock (const UObject *WorldContextObject, FName ClockName, Atom::FQuartzClockProxy const *InHandlePtr=nullptr)
CRI_API void SubscribeToQuantizationEvent (const UObject *WorldContextObject, EQuartzCommandQuantization InQuantizationBoundary, const FOnQuartzMetronomeEventBP &OnQuantizationEvent, UAtomQuartzClockHandle *&ClockHandle)
CRI_API void UnsubscribeFromAllTimeDivisions (const UObject *WorldContextObject, UAtomQuartzClockHandle *&ClockHandle)
CRI_API void UnsubscribeFromTimeDivision (const UObject *WorldContextObject, EQuartzCommandQuantization InQuantizationBoundary, UAtomQuartzClockHandle *&ClockHandle)

非公開メンバ関数

CRI_API void SetTickRateInternal (const FQuartzQuantizationBoundary &InQuantizationBoundary, const FOnQuartzCommandEventBP &InDelegate, const Audio::FQuartzClockTickRate &NewTickRate)

非公開変数類

FName CurrentClockId
Atom::FQuartzClockProxy RawHandle

詳解

This class is a BP / Game thread wrapper around FQuartzClockProxy (to talk to the underlying clock)

...and inherits from FQuartzTickableObject (to listen to the underlying clock)

It can subscribe to Quantized Event & Metronome delegates to synchronize gameplay & VFX to Quartz events fired from the Audio Engine

構築子と解体子

◆ UAtomQuartzClockHandle()

UAtomQuartzClockHandle::UAtomQuartzClockHandle ( )

◆ ~UAtomQuartzClockHandle()

UAtomQuartzClockHandle::~UAtomQuartzClockHandle ( )

関数詳解

◆ BeginDestroy()

void UAtomQuartzClockHandle::BeginDestroy ( )
override

◆ DoesClockExist()

bool UAtomQuartzClockHandle::DoesClockExist ( const UObject * WorldContextObject) const
inline

◆ GetBeatProgressPercent()

float UAtomQuartzClockHandle::GetBeatProgressPercent ( EQuartzCommandQuantization QuantizationBoundary = EQuartzCommandQuantization::Beat,
float PhaseOffset = 0.f,
float MsOffset = 0.f )

Returns the current progress until the next occurrence of the provided musical duration as a float value from 0 (previous beat) to 1 (next beat). This is useful for indexing into curves to animate parameters to musical time. Ms and Phase offsets are combined internally.

◆ GetBeatsPerMinute()

float UAtomQuartzClockHandle::GetBeatsPerMinute ( const UObject * WorldContextObject) const

◆ GetClockName()

FName UAtomQuartzClockHandle::GetClockName ( ) const
inline

◆ GetCurrentTickRate()

bool UAtomQuartzClockHandle::GetCurrentTickRate ( const UObject * WorldContextObject,
Audio::FQuartzClockTickRate & OutTickRate ) const

◆ GetCurrentTimestamp()

FQuartzTransportTimeStamp UAtomQuartzClockHandle::GetCurrentTimestamp ( const UObject * WorldContextObject)

◆ GetDurationOfQuantizationTypeInSeconds()

float UAtomQuartzClockHandle::GetDurationOfQuantizationTypeInSeconds ( const UObject * WorldContextObject,
const EQuartzCommandQuantization & QuantizationType,
float Multiplier = 1.0f )

Returns the duration in seconds of the given Quantization Type

引数
TheQuantization type to measure
Thequantity of the Quantization Type to calculate the time of
戻り値
The duration, in seconds, of a multiplier amount of the Quantization Type, or -1 in the case the clock is invalid

◆ GetEstimatedRunTime()

float UAtomQuartzClockHandle::GetEstimatedRunTime ( const UObject * WorldContextObject)

◆ GetMillisecondsPerTick()

float UAtomQuartzClockHandle::GetMillisecondsPerTick ( const UObject * WorldContextObject) const

◆ GetSecondsPerTick()

float UAtomQuartzClockHandle::GetSecondsPerTick ( const UObject * WorldContextObject) const

◆ GetThirtySecondNotesPerMinute()

float UAtomQuartzClockHandle::GetThirtySecondNotesPerMinute ( const UObject * WorldContextObject) const

◆ GetTicksPerSecond()

float UAtomQuartzClockHandle::GetTicksPerSecond ( const UObject * WorldContextObject) const

◆ IsClockRunning()

bool UAtomQuartzClockHandle::IsClockRunning ( const UObject * WorldContextObject)

◆ NotifyOnQuantizationBoundary()

void UAtomQuartzClockHandle::NotifyOnQuantizationBoundary ( const UObject * WorldContextObject,
FQuartzQuantizationBoundary InQuantizationBoundary,
const FOnQuartzCommandEventBP & InDelegate,
float InMsOffset = 0.f )

◆ PauseClock()

void UAtomQuartzClockHandle::PauseClock ( const UObject * WorldContextObject,
UAtomQuartzClockHandle *& ClockHandle )

◆ QueueQuantizedSound()

void UAtomQuartzClockHandle::QueueQuantizedSound ( const UObject * WorldContextObject,
UAtomQuartzClockHandle *& ClockHandle,
const FAtomComponentCommandInfo & AudioComponentData,
const FOnQuartzCommandEventBP & InDelegate,
const FQuartzQuantizationBoundary & InTargetBoundary )

◆ ResetTransport()

void UAtomQuartzClockHandle::ResetTransport ( const UObject * WorldContextObject,
const FOnQuartzCommandEventBP & InDelegate )

◆ ResetTransportQuantized()

void UAtomQuartzClockHandle::ResetTransportQuantized ( const UObject * WorldContextObject,
FQuartzQuantizationBoundary InQuantizationBoundary,
const FOnQuartzCommandEventBP & InDelegate,
UAtomQuartzClockHandle *& ClockHandle )

◆ ResumeClock()

void UAtomQuartzClockHandle::ResumeClock ( const UObject * WorldContextObject,
UAtomQuartzClockHandle *& ClockHandle )

◆ SetBeatsPerMinute()

void UAtomQuartzClockHandle::SetBeatsPerMinute ( const UObject * WorldContextObject,
UPARAM(ref) const FQuartzQuantizationBoundary & QuantizationBoundary,
const FOnQuartzCommandEventBP & Delegate,
UAtomQuartzClockHandle *& ClockHandle,
float BeatsPerMinute = 60.f )

◆ SetMillisecondsPerTick()

void UAtomQuartzClockHandle::SetMillisecondsPerTick ( const UObject * WorldContextObject,
UPARAM(ref) const FQuartzQuantizationBoundary & QuantizationBoundary,
const FOnQuartzCommandEventBP & Delegate,
UAtomQuartzClockHandle *& ClockHandle,
float MillisecondsPerTick = 100.f )

◆ SetSecondsPerTick()

void UAtomQuartzClockHandle::SetSecondsPerTick ( const UObject * WorldContextObject,
UPARAM(ref) const FQuartzQuantizationBoundary & QuantizationBoundary,
const FOnQuartzCommandEventBP & Delegate,
UAtomQuartzClockHandle *& ClockHandle,
float SecondsPerTick = 0.25f )

◆ SetThirtySecondNotesPerMinute()

void UAtomQuartzClockHandle::SetThirtySecondNotesPerMinute ( const UObject * WorldContextObject,
UPARAM(ref) const FQuartzQuantizationBoundary & QuantizationBoundary,
const FOnQuartzCommandEventBP & Delegate,
UAtomQuartzClockHandle *& ClockHandle,
float ThirtySecondsNotesPerMinute = 960.f )

◆ SetTickRateInternal()

void UAtomQuartzClockHandle::SetTickRateInternal ( const FQuartzQuantizationBoundary & InQuantizationBoundary,
const FOnQuartzCommandEventBP & InDelegate,
const Audio::FQuartzClockTickRate & NewTickRate )
private

◆ SetTicksPerSecond()

void UAtomQuartzClockHandle::SetTicksPerSecond ( const UObject * WorldContextObject,
UPARAM(ref) const FQuartzQuantizationBoundary & QuantizationBoundary,
const FOnQuartzCommandEventBP & Delegate,
UAtomQuartzClockHandle *& ClockHandle,
float TicksPerSecond = 10.f )

◆ StartClock()

void UAtomQuartzClockHandle::StartClock ( const UObject * WorldContextObject,
UAtomQuartzClockHandle *& ClockHandle )

◆ StartOtherClock()

void UAtomQuartzClockHandle::StartOtherClock ( const UObject * WorldContextObject,
FName OtherClockName,
FQuartzQuantizationBoundary InQuantizationBoundary,
const FOnQuartzCommandEventBP & InDelegate )

◆ StopClock()

void UAtomQuartzClockHandle::StopClock ( const UObject * WorldContextObject,
bool CancelPendingEvents,
UAtomQuartzClockHandle *& ClockHandle )

◆ SubscribeToAllQuantizationEvents()

void UAtomQuartzClockHandle::SubscribeToAllQuantizationEvents ( const UObject * WorldContextObject,
const FOnQuartzMetronomeEventBP & OnQuantizationEvent,
UAtomQuartzClockHandle *& ClockHandle )

◆ SubscribeToClock()

UAtomQuartzClockHandle * UAtomQuartzClockHandle::SubscribeToClock ( const UObject * WorldContextObject,
FName ClockName,
Atom::FQuartzClockProxy const * InHandlePtr = nullptr )

◆ SubscribeToQuantizationEvent()

void UAtomQuartzClockHandle::SubscribeToQuantizationEvent ( const UObject * WorldContextObject,
EQuartzCommandQuantization InQuantizationBoundary,
const FOnQuartzMetronomeEventBP & OnQuantizationEvent,
UAtomQuartzClockHandle *& ClockHandle )

◆ UnsubscribeFromAllTimeDivisions()

void UAtomQuartzClockHandle::UnsubscribeFromAllTimeDivisions ( const UObject * WorldContextObject,
UAtomQuartzClockHandle *& ClockHandle )

◆ UnsubscribeFromTimeDivision()

void UAtomQuartzClockHandle::UnsubscribeFromTimeDivision ( const UObject * WorldContextObject,
EQuartzCommandQuantization InQuantizationBoundary,
UAtomQuartzClockHandle *& ClockHandle )

メンバ詳解

◆ CurrentClockId

FName UAtomQuartzClockHandle::CurrentClockId
private

◆ RawHandle

Atom::FQuartzClockProxy UAtomQuartzClockHandle::RawHandle
private

このクラス詳解は次のファイルから抽出されました:
  • C:/git/Engine/Plugins/Runtime/CriWare/CriWare/Source/CriWareCore/Public/Atom/Mixer/Quartz/AtomMixerClockHandle.h
  • C:/git/Engine/Plugins/Runtime/CriWare/CriWare/Source/CriWareCore/Private/Atom/Mixer/Quartz/AtomMixerClockHandle.cpp