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

◆ generate_exciter_sample()

double MayaFlux::Nodes::Network::WaveguideNetwork::generate_exciter_sample ( )
private

Definition at line 308 of file WaveguideNetwork.cpp.

309{
311 m_exciter_active = false;
312 return 0.0;
313 }
314
316 double sample = 0.0;
317
318 switch (m_exciter_type) {
320 sample = 1.0;
321 break;
322
324 sample = m_random_generator(-1.0, 1.0);
325 break;
326
328 double noise = m_random_generator(-1.0, 1.0);
329 sample = m_exciter_filter ? m_exciter_filter->process_sample(noise) : noise;
330 break;
331 }
332
336 }
337 break;
338
340 if (m_exciter_node) {
341 sample = m_exciter_node->process_sample(0.0);
342 }
343 break;
344 }
345
346 return sample;
347}
Kinesis::Stochastic::Stochastic m_random_generator
std::shared_ptr< Filters::Filter > m_exciter_filter
@ CONTINUOUS
External node as continuous exciter (bowing)
@ NOISE_BURST
Short white noise burst (default for pluck)
@ SAMPLE
User-provided excitation waveform.

References CONTINUOUS, FILTERED_NOISE, IMPULSE, m_exciter_active, m_exciter_filter, m_exciter_node, m_exciter_sample, m_exciter_sample_position, m_exciter_samples_remaining, m_exciter_type, m_random_generator, NOISE_BURST, and SAMPLE.

Referenced by process_bidirectional(), and process_unidirectional().

+ Here is the caller graph for this function: