Main MRPT website > C++ reference for MRPT 1.9.9
xslibusb.h
Go to the documentation of this file.
1 /* +------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | http://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2018, Individual contributors, see AUTHORS file |
6  | See: http://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See details in http://www.mrpt.org/License |
8  +------------------------------------------------------------------------+ */
9 #ifndef XSLIBUSB
10 #define XSLIBUSB
11 
12 #include <libusb-1.0/libusb.h>
13 
14 struct XsLibraryLoader;
15 
16 typedef int libUSB_init(libusb_context** ctx);
17 typedef void libUSB_exit(libusb_context* ctx);
18 typedef int libUSB_open(libusb_device* dev, libusb_device_handle** handle);
19 typedef void libUSB_close(libusb_device_handle* dev_handle);
21  libusb_device_handle* dev, int interface_number);
23  libusb_device_handle* dev, int interface_number);
25  libusb_device_handle* dev, int interface_number);
26 typedef libusb_device* libUSB_ref_device(libusb_device* dev);
27 typedef void libUSB_unref_device(libusb_device* dev);
29  libusb_device_handle* dev, int interface_number);
31  libusb_device_handle* dev, int interface_number);
33  libusb_device* dev, struct libusb_config_descriptor** config);
35  struct libusb_config_descriptor* config);
36 typedef uint8_t libUSB_get_bus_number(libusb_device* dev);
37 typedef libusb_device* libUSB_get_device(libusb_device_handle* dev_handle);
38 typedef uint8_t libUSB_get_device_address(libusb_device* dev);
40  libusb_device* dev, struct libusb_device_descriptor* desc);
41 typedef ssize_t libUSB_get_device_list(
42  libusb_context* ctx, libusb_device*** list);
43 typedef void libUSB_free_device_list(libusb_device** list, int unref_devices);
45  libusb_device_handle* dev, uint8_t desc_index, unsigned char* data,
46  int length);
48  libusb_device_handle* dev_handle, unsigned char endpoint,
49  unsigned char* data, int length, int* actual_length, unsigned int timeout);
50 typedef void libUSB_set_debug(libusb_context* ctx, int level);
51 
52 class XsLibUsb
53 {
54  public:
55  XsLibUsb(void);
56  ~XsLibUsb(void);
57 
80 
81  private:
82  typedef struct _LIBUSB_API
83  {
106  } LIBUSB_API;
107 
110 
111  void initLibrary();
112 };
113 
114 #endif // file guard
XsLibUsb::open
libUSB_open open
Definition: xslibusb.h:60
XsLibUsb::ref_device
libUSB_ref_device ref_device
Definition: xslibusb.h:65
XsLibUsb::bulk_transfer
libUSB_bulk_transfer bulk_transfer
Definition: xslibusb.h:78
XsLibUsb::attach_kernel_driver
libUSB_attach_kernel_driver attach_kernel_driver
Definition: xslibusb.h:63
XsLibUsb::m_libraryLoader
XsLibraryLoader * m_libraryLoader
Definition: xslibusb.h:109
libUSB_unref_device
void libUSB_unref_device(libusb_device *dev)
Definition: xslibusb.h:27
libUSB_free_config_descriptor
void libUSB_free_config_descriptor(struct libusb_config_descriptor *config)
Definition: xslibusb.h:34
libUSB_detach_kernel_driver
int libUSB_detach_kernel_driver(libusb_device_handle *dev, int interface_number)
Definition: xslibusb.h:24
XsLibUsb::_LIBUSB_API::get_string_descriptor_ascii
libUSB_get_string_descriptor_ascii * get_string_descriptor_ascii
Definition: xslibusb.h:103
XsLibUsb::_LIBUSB_API::bulk_transfer
libUSB_bulk_transfer * bulk_transfer
Definition: xslibusb.h:104
libUSB_ref_device
libusb_device * libUSB_ref_device(libusb_device *dev)
Definition: xslibusb.h:26
XsLibUsb::close
libUSB_close close
Definition: xslibusb.h:61
XsLibUsb::_LIBUSB_API::ref_device
libUSB_ref_device * ref_device
Definition: xslibusb.h:91
XsLibUsb::_LIBUSB_API::get_bus_number
libUSB_get_bus_number * get_bus_number
Definition: xslibusb.h:97
XsLibUsb::_LIBUSB_API::get_device_address
libUSB_get_device_address * get_device_address
Definition: xslibusb.h:99
libUSB_kernel_driver_active
int libUSB_kernel_driver_active(libusb_device_handle *dev, int interface_number)
Definition: xslibusb.h:20
XsLibUsb::_LIBUSB_API::unref_device
libUSB_unref_device * unref_device
Definition: xslibusb.h:92
XsLibUsb::free_config_descriptor
libUSB_free_config_descriptor free_config_descriptor
Definition: xslibusb.h:70
XsLibUsb::unref_device
libUSB_unref_device unref_device
Definition: xslibusb.h:66
libUSB_free_device_list
void libUSB_free_device_list(libusb_device **list, int unref_devices)
Definition: xslibusb.h:43
XsLibUsb::XsLibUsb
XsLibUsb(void)
XsLibUsb::init
libUSB_init init
Definition: xslibusb.h:58
libUSB_get_device
libusb_device * libUSB_get_device(libusb_device_handle *dev_handle)
Definition: xslibusb.h:37
libUSB_get_string_descriptor_ascii
int libUSB_get_string_descriptor_ascii(libusb_device_handle *dev, uint8_t desc_index, unsigned char *data, int length)
Definition: xslibusb.h:44
XsLibUsb::_LIBUSB_API::set_debug
libUSB_set_debug * set_debug
Definition: xslibusb.h:105
libUSB_get_active_config_descriptor
int libUSB_get_active_config_descriptor(libusb_device *dev, struct libusb_config_descriptor **config)
Definition: xslibusb.h:32
XsLibUsb::free_device_list
libUSB_free_device_list free_device_list
Definition: xslibusb.h:76
uint8_t
unsigned char uint8_t
Definition: rptypes.h:41
XsLibUsb::m_libUsb
LIBUSB_API m_libUsb
Definition: xslibusb.h:108
libUSB_init
int libUSB_init(libusb_context **ctx)
Definition: xslibusb.h:16
level
GLint level
Definition: glext.h:3600
libUSB_set_debug
void libUSB_set_debug(libusb_context *ctx, int level)
Definition: xslibusb.h:50
length
GLuint GLsizei GLsizei * length
Definition: glext.h:4064
XsLibUsb::initLibrary
void initLibrary()
XsLibUsb::_LIBUSB_API::attach_kernel_driver
libUSB_attach_kernel_driver * attach_kernel_driver
Definition: xslibusb.h:89
XsLibUsb::_LIBUSB_API::exit
libUSB_exit * exit
Definition: xslibusb.h:85
XsLibUsb::set_debug
libUSB_set_debug set_debug
Definition: xslibusb.h:79
libUSB_get_bus_number
uint8_t libUSB_get_bus_number(libusb_device *dev)
Definition: xslibusb.h:36
libUSB_claim_interface
int libUSB_claim_interface(libusb_device_handle *dev, int interface_number)
Definition: xslibusb.h:28
data
GLsizei GLsizei GLenum GLenum const GLvoid * data
Definition: glext.h:3547
XsLibUsb::get_string_descriptor_ascii
libUSB_get_string_descriptor_ascii get_string_descriptor_ascii
Definition: xslibusb.h:77
XsLibUsb::get_device_list
libUSB_get_device_list get_device_list
Definition: xslibusb.h:75
XsLibUsb::_LIBUSB_API::free_config_descriptor
libUSB_free_config_descriptor * free_config_descriptor
Definition: xslibusb.h:96
XsLibUsb::~XsLibUsb
~XsLibUsb(void)
XsLibUsb::_LIBUSB_API::kernel_driver_active
libUSB_kernel_driver_active * kernel_driver_active
Definition: xslibusb.h:88
XsLibUsb::get_device_descriptor
libUSB_get_device_descriptor get_device_descriptor
Definition: xslibusb.h:74
XsLibUsb::detach_kernel_driver
libUSB_detach_kernel_driver detach_kernel_driver
Definition: xslibusb.h:64
XsLibUsb::LIBUSB_API
struct XsLibUsb::_LIBUSB_API LIBUSB_API
libUSB_get_device_list
ssize_t libUSB_get_device_list(libusb_context *ctx, libusb_device ***list)
Definition: xslibusb.h:41
XsLibUsb::claim_interface
libUSB_claim_interface claim_interface
Definition: xslibusb.h:67
XsLibUsb
Definition: xslibusb.h:52
XsLibUsb::_LIBUSB_API::claim_interface
libUSB_claim_interface * claim_interface
Definition: xslibusb.h:93
XsLibUsb::kernel_driver_active
libUSB_kernel_driver_active kernel_driver_active
Definition: xslibusb.h:62
XsLibraryLoader
The Xsens dynamic library loader base class.
Definition: xslibraryloader.h:41
libUSB_get_device_descriptor
int libUSB_get_device_descriptor(libusb_device *dev, struct libusb_device_descriptor *desc)
Definition: xslibusb.h:39
XsLibUsb::_LIBUSB_API::get_active_config_descriptor
libUSB_get_active_config_descriptor * get_active_config_descriptor
Definition: xslibusb.h:95
libUSB_open
int libUSB_open(libusb_device *dev, libusb_device_handle **handle)
Definition: xslibusb.h:18
XsLibUsb::get_active_config_descriptor
libUSB_get_active_config_descriptor get_active_config_descriptor
Definition: xslibusb.h:69
XsLibUsb::get_device
libUSB_get_device get_device
Definition: xslibusb.h:72
XsLibUsb::release_interface
libUSB_release_interface release_interface
Definition: xslibusb.h:68
libUSB_close
void libUSB_close(libusb_device_handle *dev_handle)
Definition: xslibusb.h:19
XsLibUsb::exit
libUSB_exit exit
Definition: xslibusb.h:59
libUSB_exit
void libUSB_exit(libusb_context *ctx)
Definition: xslibusb.h:17
XsLibUsb::_LIBUSB_API::get_device_descriptor
libUSB_get_device_descriptor * get_device_descriptor
Definition: xslibusb.h:100
XsLibUsb::_LIBUSB_API::release_interface
libUSB_release_interface * release_interface
Definition: xslibusb.h:94
XsLibUsb::_LIBUSB_API::open
libUSB_open * open
Definition: xslibusb.h:86
libUSB_bulk_transfer
int libUSB_bulk_transfer(libusb_device_handle *dev_handle, unsigned char endpoint, unsigned char *data, int length, int *actual_length, unsigned int timeout)
Definition: xslibusb.h:47
libUSB_release_interface
int libUSB_release_interface(libusb_device_handle *dev, int interface_number)
Definition: xslibusb.h:30
XsLibUsb::get_device_address
libUSB_get_device_address get_device_address
Definition: xslibusb.h:73
libUSB_get_device_address
uint8_t libUSB_get_device_address(libusb_device *dev)
Definition: xslibusb.h:38
XsLibUsb::get_bus_number
libUSB_get_bus_number get_bus_number
Definition: xslibusb.h:71
XsLibUsb::_LIBUSB_API::get_device
libUSB_get_device * get_device
Definition: xslibusb.h:98
libUSB_attach_kernel_driver
int libUSB_attach_kernel_driver(libusb_device_handle *dev, int interface_number)
Definition: xslibusb.h:22
XsLibUsb::_LIBUSB_API::close
libUSB_close * close
Definition: xslibusb.h:87
XsLibUsb::_LIBUSB_API::init
libUSB_init * init
Definition: xslibusb.h:84
XsLibUsb::_LIBUSB_API::get_device_list
libUSB_get_device_list * get_device_list
Definition: xslibusb.h:101
XsLibUsb::_LIBUSB_API::detach_kernel_driver
libUSB_detach_kernel_driver * detach_kernel_driver
Definition: xslibusb.h:90
XsLibUsb::_LIBUSB_API::free_device_list
libUSB_free_device_list * free_device_list
Definition: xslibusb.h:102
XsLibUsb::_LIBUSB_API
Definition: xslibusb.h:82



Page generated by Doxygen 1.8.17 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at miƩ 12 jul 2023 10:03:34 CEST