def raster_preparation(purged_spike_train, event_start_frames,
                       camera_framerate=120., window_size=10):
    """
    Parameters
    ----------
    purged_spike_train : np.ndarray
        The spike train without spikes that precede or succeed tracking, relative to tracking start.
    event_start_frames : np.ndarray
        Every frame ON (1) start in the session.
    camera_framerate : np.float64
        The sampling frequency of the tracking system; defaults to 120.
    window_size : int
        The unilateral window size; defaults to 10 (seconds).
    ----------

    Returns
    ----------
    raster_list : list
        List of raster events (np.ndarrays) for that spike train.
    ----------
    """

    raster_list = []

    for event in event_start_frames:
        window_start_seconds = (event / camera_framerate) - window_size
        window_centered_spikes = purged_spike_train[(purged_spike_train >= window_start_seconds)
                                                    & (purged_spike_train < window_start_seconds + (window_size * 2))] - window_start_seconds
        raster_list.append(window_centered_spikes[window_centered_spikes > 0])

    return raster_list