#define LIBJAYLINK_LIBJAYLINK_INTERNAL_H
#include <stddef.h>
#include <stdint.h>
#include <stdbool.h>
#include <stdarg.h>
#include <sys/types.h>
#include <ws2tcpip.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include "config.h"
#include <libusb.h>
#include "libjaylink.h"
#define JAYLINK_PRIV
#define JAYLINK_PRIV
#define MIN
jaylink_context
list
devs
discovered_devs
log_level
log_callback
log_callback_data
log_domain
jaylink_device
ctx
ref_count
iface
serial_number
has_serial_number
ipv4_address
mac_address
has_mac_address
product_name
has_product_name
nickname
has_nickname
hw_version
has_hw_version
jaylink_device_handle
dev
buffer
buffer_size
read_length
bytes_available
read_pos
write_length
write_pos
sock
list
data
next
list_compare_callback
--- buffer.c
buffer_set_u16(uint8_t *, uint16_t, size_t);
buffer_get_u16(const uint8_t *, size_t);
buffer_set_u32(uint8_t *, uint32_t, size_t);
buffer_get_u32(const uint8_t *, size_t);
--- device.c
device_allocate(struct jaylink_context *);
--- discovery_tcp.c
discovery_tcp_scan(struct jaylink_context *);
--- discovery_usb.c
discovery_usb_scan(struct jaylink_context *);
--- list.c
list_prepend(struct list *, void *);
list_remove(struct list *, const void *);
list_find_custom(struct list *, list_compare_callback, const void *);
list_length(struct list *);
list_free(struct list *);
--- log.c
log_vprintf(const struct jaylink_context *, enum jaylink_log_level, const char *, va_list, void *);
log_err(const struct jaylink_context *, const char *, ...);
log_warn(const struct jaylink_context *, const char *, ...);
log_info(const struct jaylink_context *, const char *, ...);
log_dbg(const struct jaylink_context *, const char *, ...);
log_dbgio(const struct jaylink_context *, const char *, ...);
--- socket.c
socket_connect(int, const struct sockaddr *, size_t, size_t);
socket_close(int);
socket_bind(int, const struct sockaddr *, size_t);
socket_send(int, const void *, size_t *, int);
socket_recv(int, void *, size_t *, int);
socket_sendto(int, const void *, size_t *, int, const struct sockaddr *, size_t);
socket_recvfrom(int, void *, size_t *, int, struct sockaddr *, size_t *);
socket_get_option(int, int, int, void *, size_t *);
socket_set_option(int, int, int, const void *, size_t);
socket_set_blocking(int, bool);
--- transport.c
transport_open(struct jaylink_device_handle *);
transport_close(struct jaylink_device_handle *);
transport_start_write_read(struct jaylink_device_handle *, size_t, size_t, bool);
transport_start_write(struct jaylink_device_handle *, size_t, bool);
transport_start_read(struct jaylink_device_handle *, size_t);
transport_write(struct jaylink_device_handle *, const uint8_t *, size_t);
transport_read(struct jaylink_device_handle *, uint8_t *, size_t);
--- transport_usb.c
transport_usb_open(struct jaylink_device_handle *);
transport_usb_close(struct jaylink_device_handle *);
transport_usb_start_write_read(struct jaylink_device_handle *, size_t, size_t, bool);
transport_usb_start_write(struct jaylink_device_handle *, size_t, bool);
transport_usb_start_read(struct jaylink_device_handle *, size_t);
transport_usb_write(struct jaylink_device_handle *, const uint8_t *, size_t);
transport_usb_read(struct jaylink_device_handle *, uint8_t *, size_t);
--- transport_tcp.c
transport_tcp_open(struct jaylink_device_handle *);
transport_tcp_close(struct jaylink_device_handle *);
transport_tcp_start_write_read(struct jaylink_device_handle *, size_t, size_t, bool);
transport_tcp_start_write(struct jaylink_device_handle *, size_t, bool);
transport_tcp_start_read(struct jaylink_device_handle *, size_t);
transport_tcp_write(struct jaylink_device_handle *, const uint8_t *, size_t);
transport_tcp_read(struct jaylink_device_handle *, uint8_t *, size_t);