I’ve recently ran into an issue trying to use the dsp::DelayLine as part of a ProcessorChain. The DelayLine provides a custom constructor to allow setting the maximumDelayInSamples, but otherwise the default constructor sets the maximumDelayInSamples to 4 samples (as far as I could see in the source code). As I am not aware of any way to call the overloaded constructor of the DelayLine when it is used as a template parameter, it means that the DelayLine is essentially unusable inside a ProcessorChain for any application that requires more delay than 4 samples.
If this is a design decision, it may be a useful thing to add it to the DelayLine documentation to make it clear that it’s not supposed to work inside a ProcessorChain.
Also, regardless of it working in the ProcessorChain or not, 4 samples seems to me like a really tiny value for a default buffer size?
There’s probably a reasoning and specific design idea behind it all, but I was not able to find it anywhere in the documentation so it ended up confusing me.