Exemplo n.º 1
0
def load_libad9361():
    '''
    Load libad9361 library
    '''

    arch, name = platform.architecture()
    if name.lower().startswith('win'):
        path = os.path.join(
            os.path.dirname(__file__), r'win\x86\libad9361.dll'
            if arch.lower() == '32bit' else r'win\x64\libad9361.dll')
        return _windll(path)
    path = '/usr/lib/libad9361.so.0'
    if os.path.exists(path):
        return _cdll(path)
    return _cdll('/usr/local/lib/libad9361.so.0')
Exemplo n.º 2
0
# pylint: disable=invalid-name
_ScanContextPtr = _POINTER(_ScanContext)
_ContextInfoPtr = _POINTER(_ContextInfo)
_ContextPtr = _POINTER(_Context)
_DevicePtr = _POINTER(_Device)
_ChannelPtr = _POINTER(_Channel)
_BufferPtr = _POINTER(_Buffer)
_DataFormatPtr = _POINTER(DataFormat)

if "Windows" in _system():
    _iiolib = "libiio.dll"
else:
    # Non-windows, possibly Posix system
    _iiolib = "iio"

_lib = _cdll(find_library(_iiolib), use_errno=True, use_last_error=True)

_get_backends_count = _lib.iio_get_backends_count
_get_backends_count.restype = c_uint

_get_backend = _lib.iio_get_backend
_get_backend.argtypes = (c_uint, )
_get_backend.restype = c_char_p
_get_backend.errcheck = _check_null

_create_scan_context = _lib.iio_create_scan_context
_create_scan_context.argtypes = (c_char_p, c_uint)
_create_scan_context.restype = _ScanContextPtr
_create_scan_context.errcheck = _check_null

_destroy_scan_context = _lib.iio_scan_context_destroy
Exemplo n.º 3
0
#!/usr/bin/env python3

from ctypes import Structure, c_char_p, c_uint, c_int, c_size_t, \
  c_ssize_t, c_char, c_void_p, c_bool, create_string_buffer, \
  POINTER as _POINTER, CDLL as _cdll, memmove as _memmove, byref as _byref

_lib = _cdll('./dabdecoder.so')

init = _lib.dabdecoder_init
init.argtypes = (c_int, c_int)

process = _lib.dabdecoder_process
process.restypes = c_int

capture_qpsk = _lib.dabdecoder_capture_qpsk
capture_qpsk.argtypes = (c_int, )

capture_fft = _lib.dabdecoder_capture_fft
capture_fft.argtypes = (c_int, )

track_frequency = _lib.dabdecoder_track_frequency
track_frequency.argtypes = (c_int, )

set_subch_filter = _lib.dabdecoder_set_subch_filter
set_subch_filter.argtypes = (c_int, c_int, c_int)
Exemplo n.º 4
0
	pass
class _Device(Structure):
	pass
class _Channel(Structure):
	pass
class _Buffer(Structure):
	pass

_ScanContextPtr = _POINTER(_ScanContext)
_ContextInfoPtr = _POINTER(_ContextInfo)
_ContextPtr = _POINTER(_Context)
_DevicePtr = _POINTER(_Device)
_ChannelPtr = _POINTER(_Channel)
_BufferPtr = _POINTER(_Buffer)

_lib = _cdll('libiio.dll' if 'Windows' in _system() else 'libiio.so.0',
		use_errno = True, use_last_error = True)

_create_scan_context = _lib.iio_create_scan_context
_create_scan_context.argtypes = (c_char_p, c_uint)
_create_scan_context.restype = _ScanContextPtr
_create_scan_context.errcheck = _checkNull

_destroy_scan_context = _lib.iio_scan_context_destroy
_destroy_scan_context.argtypes = (_ScanContextPtr, )

_get_context_info_list = _lib.iio_scan_context_get_info_list
_get_context_info_list.argtypes = (_ScanContextPtr, _POINTER(_POINTER(_ContextInfoPtr)))
_get_context_info_list.restype = c_ssize_t
_get_context_info_list.errcheck = _checkNegative

_context_info_list_free = _lib.iio_context_info_list_free
Exemplo n.º 5
0
	pass
class _Device(Structure):
	pass
class _Channel(Structure):
	pass
class _Buffer(Structure):
	pass

_ScanContextPtr = _POINTER(_ScanContext)
_ContextInfoPtr = _POINTER(_ContextInfo)
_ContextPtr = _POINTER(_Context)
_DevicePtr = _POINTER(_Device)
_ChannelPtr = _POINTER(_Channel)
_BufferPtr = _POINTER(_Buffer)

_lib = _cdll('libiio.dll' if 'Windows' in _system() else 'libiio.so.0',
		use_errno = True, use_last_error = True)

_get_backends_count = _lib.iio_get_backends_count
_get_backends_count.restype = c_uint

_get_backend = _lib.iio_get_backend
_get_backend.argtypes = (c_uint, )
_get_backend.restype = c_char_p
_get_backend.errcheck = _checkNull

_create_scan_context = _lib.iio_create_scan_context
_create_scan_context.argtypes = (c_char_p, c_uint)
_create_scan_context.restype = _ScanContextPtr
_create_scan_context.errcheck = _checkNull

_destroy_scan_context = _lib.iio_scan_context_destroy