Since `vstack` creates a new array, it might be more memory efficient for `_get_sqd_data()` to create an array with an empty last row, so that you could do here `self._data[-1,:] = stim_ch`. This messes up the handling of the `data` kwarg a bit, so I'm only suggesting that because you said you got to the limit in terms of memory...