Matter of style: you could move all the instantiations to the producer class and call `new adaptative_buffer` directly here like done in the other cases...