Navigation
API > API/Runtime > API/Runtime/SignalProcessing
This class is used to post audio from one source to multiple threads. This class is SPMC: multiple threads can call FPatchOutputStrongPtr->PopAudio safely, but only one thread can call PushAudio.
| Name | FPatchSplitter |
| Type | class |
| Header File | /Engine/Source/Runtime/SignalProcessing/Public/DSP/MultithreadedPatching.h |
| Include Path | #include "DSP/MultithreadedPatching.h" |
Syntax
class FPatchSplitter
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ConnectedOutputs | TArray< FPatchInput > | DSP/MultithreadedPatching.h | ||
| ConnectedOutputsCriticalSection | FCriticalSection | DSP/MultithreadedPatching.h | ||
| PendingOutputs | TArray< FPatchInput > | DSP/MultithreadedPatching.h | ||
| PendingOutputsCriticalSection | FCriticalSection | DSP/MultithreadedPatching.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddNewPatch
(
FPatchOutputStrongPtr&& InPatchOutputStrongPtr |
Adds a new a patch from an existing patch output. | DSP/MultithreadedPatching.h | |
void AddNewPatch
(
const FPatchOutputStrongPtr& InPatchOutputStrongPtr |
DSP/MultithreadedPatching.h | ||
FPatchOutputStrongPtr AddNewPatch
(
int32 MaxLatencyInSamples, |
Adds a new output. | DSP/MultithreadedPatching.h | |
int32 MaxNumberOfSamplesThatCanBePushed () |
This function call gets the maximum number of samples that's safe to push. | DSP/MultithreadedPatching.h | |
int32 Num () |
This returns the number of outputs currently connected to this patch splitter. | DSP/MultithreadedPatching.h | |
int32 PushAudio
(
const float* InBuffer, |
This call pushes audio to all outputs connected to this splitter. | DSP/MultithreadedPatching.h |