MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ reset()

void MayaFlux::Nodes::Network::WaveguideNetwork::reset ( )
overridevirtual

Reset network to initial state.

Override to implement network-specific reset logic:

  • Clear particle velocities
  • Reset modal phases
  • Rebuild topology

Reimplemented from MayaFlux::Nodes::Network::NodeNetwork.

Definition at line 100 of file WaveguideNetwork.cpp.

101{
102 for (auto& seg : m_segments) {
103 const auto len = seg.p_plus.capacity();
104 seg.p_plus = Memory::HistoryBuffer<double>(len);
105 seg.p_minus = Memory::HistoryBuffer<double>(len);
106 if (seg.loop_filter)
107 seg.loop_filter->reset();
108 if (seg.loop_filter_open)
109 seg.loop_filter_open->reset();
110 if (seg.loop_filter_closed)
111 seg.loop_filter_closed->reset();
112 }
113
115 m_exciter_filter->reset();
116 m_exciter_active = false;
120 m_last_output = 0.0;
121 m_last_audio_buffer.clear();
122}
std::vector< double > m_last_audio_buffer
std::shared_ptr< Filters::Filter > m_exciter_filter
std::vector< WaveguideSegment > m_segments

References m_exciter_active, m_exciter_filter, m_exciter_node_buffer_pos, m_exciter_sample_position, m_exciter_samples_remaining, MayaFlux::Nodes::Network::NodeNetwork::m_last_audio_buffer, m_last_output, and m_segments.