firewheel_core/node/
dummy.rs1use crate::{
2 channel_config::ChannelConfig,
3 event::ProcEvents,
4 node::{ProcBuffers, ProcExtra},
5};
6
7use super::{
8 AudioNode, AudioNodeInfo, AudioNodeProcessor, ConstructProcessorContext, ProcInfo,
9 ProcessStatus,
10};
11
12#[derive(Default, Debug, Clone, Copy, PartialEq, Eq)]
14pub struct DummyNode;
15
16#[derive(Default, Debug, Clone, Copy, PartialEq, Eq)]
18pub struct DummyNodeConfig {
19 pub channel_config: ChannelConfig,
20}
21
22impl AudioNode for DummyNode {
23 type Configuration = DummyNodeConfig;
24
25 fn info(&self, config: &Self::Configuration) -> AudioNodeInfo {
26 AudioNodeInfo::new()
27 .debug_name("dummy")
28 .channel_config(config.channel_config)
29 }
30
31 fn construct_processor(
32 &self,
33 _config: &Self::Configuration,
34 _cx: ConstructProcessorContext,
35 ) -> impl AudioNodeProcessor {
36 DummyProcessor
37 }
38}
39
40struct DummyProcessor;
41
42impl AudioNodeProcessor for DummyProcessor {
43 fn process(
44 &mut self,
45 _info: &ProcInfo,
46 _buffers: ProcBuffers,
47 _events: &mut ProcEvents,
48 _extra: &mut ProcExtra,
49 ) -> ProcessStatus {
50 ProcessStatus::Bypass
51 }
52}