0 | module Bindings.RtlSdr.Raw.Buffer
 1 |
 2 | import Bindings.RtlSdr.Device
 3 |
 4 | import Data.Buffer
 5 |
 6 | %default total
 7 |
 8 | -- RTLSDR_API int rtlsdr_read_sync(rtlsdr_dev_t *dev, void *buf, int len, int *n_read);
 9 | export
10 | %foreign (librtlsdr "read_sync")
11 | read_sync: Ptr RtlSdrHandle -> Buffer -> Int -> Ptr Int -> PrimIO Int
12 |
13 | -- typedef void(*rtlsdr_read_async_cb_t)(unsigned char *buf, uint32_t len, void *ctx);
14 | ReadAsyncFnPrim = Ptr Bits8 -> Int -> AnyPtr -> PrimIO ()
15 |
16 | -- RTLSDR_API int rtlsdr_read_async(rtlsdr_dev_t *dev, rtlsdr_read_async_cb_t cb, void *ctx, uint32_t buf_num, uint32_t buf_len);
17 | export
18 | %foreign (librtlsdr "read_async")
19 | read_async: Ptr RtlSdrHandle -> ReadAsyncFnPrim -> AnyPtr -> Int -> Int -> PrimIO Int
20 |
21 | -- RTLSDR_API int rtlsdr_cancel_async(rtlsdr_dev_t *dev);
22 | export
23 | %foreign (librtlsdr "cancel_async")
24 | cancel_async: Ptr RtlSdrHandle -> PrimIO Int
25 |
26 | -- RTLSDR_API int rtlsdr_reset_buffer(rtlsdr_dev_t *dev);
27 | export
28 | %foreign (librtlsdr "reset_buffer")
29 | reset_buffer: Ptr RtlSdrHandle -> PrimIO Int
30 |