Audio buffer is it from past or for future?

I was wondering if the audio buffer and midi buffer in the audio processors processBlock() were meant to be from the past compared to the DAW playhead current position ?
For example
if at the time of the processBlock() , the DAW playhead is at 2000ms and the buffer is 10ms are the buffers meant to be filled with data from 1990ms to 2000ms or from 2000ms to 2010ms?

They’re future buffers. The DAW needs your plugin to process the given block of samples before it sends it to the audio output stream. If they were past buffers, it would be too late for your plugin to process.

If the play head is at 2000ms, the processor will ask you to process the buffer at 2000-2010 so that it can move that buffer to the output and move the playhead to 2010.

Thanks ImJimmi for clearing that up.

I suggest that it’s more complicated than that.
Of Course a DAW should paint the play cursor at the point in the signal that is played back on the speakers. This involves compensating for the buffer FiFo delay after the buffer is sent from the DAW to the OSes audio system. Moreover a plugin sees the buffers with a compensation of the latency subsequent plugins impose. Both facts require “future” buffers,
But the audio stream FiFo has the purpose of taming CPU load peaks, and hence the relation between the audio and the cursor timing is rather loose.
Moreover the GUI thread might suffer from CPU load issues and the display might be delayed a lot.
-Michael