def assert_interrupt_signal(library, session, mode, status_id):
    """Asserts the specified interrupt or signal.

    Corresponds to viAssertIntrSignal function of the VISA library.

    Parameters
    ----------
    library : ctypes.WinDLL or ctypes.CDLL
        ctypes wrapped library.
    session : VISASession
        Unique logical identifier to a session.
    mode : constants.AssertSignalInterrupt
        How to assert the interrupt.
    status_id : int
        Status value to be presented during an interrupt acknowledge cycle.

    Returns
    -------
    constants.StatusCode
        Return value of the library call.

    """
    return library.viAssertIntrSignal(session, mode, status_id)