ok, that would be simple, but it would not allow users to write classes which implement a method which takes both buffers.
for example libpd has an audio processing function like: process_float(int ticks, ref float inBuffer, ref float outBuffer)
so the in and out buffer needs to be there in the same time. it would be an option to store the in buffer (or a reference to it) when getting the event and providing it to this call in the read method. i am not sure if its flexible enough.... but yea, should also be possible.