'Read from raw object and send them to RtEpochs for processing.
Parameters
epochs : instance of RtEpochs
The epochs object.
picks : array-like of int
Indices of channels.
tmin : float
Time instant to start receiving buffers.
tmax : float
Time instant to stop receiving buffers.
buffer_size : int
Size of each buffer in terms of number of samples.'

def send_data(self, epochs, picks, tmin, tmax, buffer_size):

    sfreq = self.info['sfreq']
    tmin_samp = int(round((sfreq * tmin)))
    tmax_samp = int(round((sfreq * tmax)))
    iter_times = zip(list(range(tmin_samp, tmax_samp, buffer_size)), list(range(buffer_size, tmax_samp, buffer_size)))
    for (ii, (start, stop)) in enumerate(iter_times):
        (data, times) = self.raw[:, start:stop]
        cals = np.array([[(self.info['chs'][k]['range'] * self.info['chs'][k]['cal']) for k in picks]]).T
        data[picks, :] = (data[picks, :] / cals)
        epochs._process_raw_buffer(data)
