MCPcopy Create free account
hub / github.com/LabSound/LabSound / LabSoundRegistryInit

Function LabSoundRegistryInit

src/extended/LabSound.cpp:316–478  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

314
315std::once_flag register_all_flag;
316void LabSoundRegistryInit(lab::NodeRegistry& reg)
317{
318 using namespace lab;
319
320 std::call_once(register_all_flag, [&reg]() {
321
322 // core
323
324 reg.Register(
325 AnalyserNode::static_name(), AnalyserNode::desc(),
326 [](AudioContext& ac)->AudioNode* { return new AnalyserNode(ac); },
327 [](AudioNode* n) { delete n; });
328
329 reg.Register(
330 AudioHardwareDeviceNode::static_name(), AudioHardwareDeviceNode::desc(),
331 [](AudioContext& ac)->AudioNode* { return nullptr; },
332 [](AudioNode* n) { delete n; });
333
334 reg.Register(
335 AudioHardwareInputNode::static_name(), AudioHardwareInputNode::desc(),
336 [](AudioContext& ac)->AudioNode* { return nullptr; },
337 [](AudioNode* n) { delete n; });
338
339 reg.Register(
340 BiquadFilterNode::static_name(), BiquadFilterNode::desc(),
341 [](AudioContext& ac)->AudioNode* { return new BiquadFilterNode(ac); },
342 [](AudioNode* n) { delete n; });
343
344 reg.Register(
345 ChannelMergerNode::static_name(), ChannelMergerNode::desc(),
346 [](AudioContext& ac)->AudioNode* { return new ChannelMergerNode(ac); },
347 [](AudioNode* n) { delete n; });
348
349 reg.Register(
350 ChannelSplitterNode::static_name(), ChannelSplitterNode::desc(),
351 [](AudioContext& ac)->AudioNode* { return new ChannelSplitterNode(ac); },
352 [](AudioNode* n) { delete n; });
353
354 reg.Register(
355 ConvolverNode::static_name(), ConvolverNode::desc(),
356 [](AudioContext& ac)->AudioNode* { return new ConvolverNode(ac); },
357 [](AudioNode* n) { delete n; });
358
359 reg.Register(
360 DelayNode::static_name(), DelayNode::desc(),
361 [](AudioContext& ac)->AudioNode* { return new DelayNode(ac); },
362 [](AudioNode* n) { delete n; });
363
364 reg.Register(
365 DynamicsCompressorNode::static_name(), DynamicsCompressorNode::desc(),
366 [](AudioContext& ac)->AudioNode* { return new DynamicsCompressorNode(ac); },
367 [](AudioNode* n) { delete n; });
368
369 reg.Register(
370 GainNode::static_name(), GainNode::desc(),
371 [](AudioContext& ac)->AudioNode* { return new GainNode(ac); },
372 [](AudioNode* n) { delete n; });
373

Callers 1

Registry.cppFile · 0.85

Calls 1

RegisterMethod · 0.80

Tested by

no test coverage detected