Files
LNXSDK/lib/aura/Sources/aura/dsp/DSP.hx
2025-01-22 16:18:30 +01:00

37 lines
703 B
Haxe

package aura.dsp;
import aura.threading.Fifo;
import aura.threading.Message;
import aura.types.AudioBuffer;
@:allow(aura.dsp.panner.Panner)
abstract class DSP {
public var bypass = false;
var inUse = false;
final messages: Fifo<Message> = new Fifo();
abstract function process(buffer: AudioBuffer): Void;
function synchronize() {
var message: Null<Message>;
while ((message = messages.tryPop()) != null) {
parseMessage(message);
}
}
function parseMessage(message: Message) {
switch (message.id) {
// TODO
case DSPMessageID.BypassEnable:
case DSPMessageID.BypassDisable:
default:
}
}
inline function sendMessage(message: Message) {
messages.add(message);
}
}