Maps the specified memory space into the process's address space.

    Corresponds to viMapAddress function of the VISA library.

    :param library: the visa library wrapped by ctypes.
    :param session: Unique logical identifier to a session.
    :param map_space: Specifies the address space to map. (Constants.*SPACE*)
    :param map_base: Offset (in bytes) of the memory to be mapped.
    :param map_size: Amount of memory to map (in bytes).
    :param access:
    :param suggested: If not Constants.NULL (0), the operating system attempts to map the memory to the address
                      specified in suggested. There is no guarantee, however, that the memory will be mapped to
                      that address. This operation may map the memory into an address region different from
                      suggested.

    :return: address in your process space where the memory was mapped, return value of the library call.
    :rtype: address, :class:`pyvisa.constants.StatusCode`

def map_address(library, session, map_space, map_base, map_size,
                access=False, suggested=None):
    """Maps the specified memory space into the process's address space.

    Corresponds to viMapAddress function of the VISA library.

    :param library: the visa library wrapped by ctypes.
    :param session: Unique logical identifier to a session.
    :param map_space: Specifies the address space to map. (Constants.*SPACE*)
    :param map_base: Offset (in bytes) of the memory to be mapped.
    :param map_size: Amount of memory to map (in bytes).
    :param access:
    :param suggested: If not Constants.NULL (0), the operating system attempts to map the memory to the address
                      specified in suggested. There is no guarantee, however, that the memory will be mapped to
                      that address. This operation may map the memory into an address region different from
                      suggested.

    :return: address in your process space where the memory was mapped, return value of the library call.
    :rtype: address, :class:`pyvisa.constants.StatusCode`
    """
    if access is False:
        access = constants.VI_FALSE
    elif access != constants.VI_FALSE:
        warnings.warn('In enable_event, context will be set VI_NULL.')
        access = constants.VI_FALSE
    address = ViAddr()
    ret = library.viMapAddress(session, map_space, map_base, map_size, access,
                               suggested, byref(address))
    return address, ret