The new plugin template in CMake and the one generated by the Projucer have quite a lot of ‘noise’ and uninteresting exposed internals, that it would be great to clean up.
Mostly, it would be nice to ‘hide’ all the preprocessor stuff into some default implementations of the many virtual functions that the user could still implement differently if they really wanted to. That’s also applies to many virtual functions that are more rarely used, like programs and tail time.
Here’s an example I made on my repo, where I (unfortunately) had to add another class that inherits from AudioProcessor just to hide all that noise from what the plugin actually does. I’m only manually implementing the constructor, prepareToPlay, processBlock, createEditor and get/setStateInformation, which I believe is all that’s needed for many plugins.