Hi all, We have revisited the generated DSP « init » code to allow a finer control of the different init phases.
Up to now the Faust compiler generated the « init » method has the following shape : virtual void init(int samplingFreq) { classInit(samplingFreq); instanceInit(samplingFreq); } where « classInit » is initializing data (like readtables..) shared between all instances of the DSP class, where « instanceInit » is initializing data for the given instance. « instanceInit » has been splitted in 3 new public methods: - instanceConstants(samplingFreq); that computes constants values, tables… for the instance - instanceResetUserInterface(); that reset user interface elements to their default values - instanceClear(); that clears internal delay lines..etc… virtual void instanceInit(int samplingFreq) { instanceConstants(samplingFreq); instanceResetUserInterface(); instanceClear(); } This way architecture files may decide to use any of the new methods for finer control of the DSP internal state during it's life cycle. The new generated code does not change the current behavior of the init call, thus does not break any architecture file. The new generated code model has been done in both master and faust2 branches. Stéphane ------------------------------------------------------------------------------ _______________________________________________ Faudiostream-devel mailing list Faudiostream-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-devel