Open Lighting Architecture  Latest Git
Public Member Functions | List of all members
ola::usb::LibUsbSimpleThread Class Reference

Detailed Description

The non-hotplug version of LibUsbThread.

The libusb thread is only run when one of more handles are open. Otherwise there is no way to interrupt libusb_handle_events(). See the libusb Async documentation at http://libusb.sourceforge.net/api-1.0/group__asyncio.html for more information.

Inheritance diagram for ola::usb::LibUsbSimpleThread:
Inheritance graph
[legend]
Collaboration diagram for ola::usb::LibUsbSimpleThread:
Collaboration graph
[legend]

Public Member Functions

 LibUsbSimpleThread (libusb_context *context)
 Create a new LibUsbHotplugThread. More...
 
void OpenHandle ()
 This must be called whenever libusb_open() is called.
 
void CloseHandle (libusb_device_handle *handle)
 This must be called whenever libusb_close() is called.
 
- Public Member Functions inherited from ola::usb::LibUsbThread
 LibUsbThread (libusb_context *context)
 Base constructor. More...
 
virtual ~LibUsbThread ()
 Destructor.
 
virtual bool Init ()
 Initialize the thread.
 
virtual void Shutdown ()
 Shutdown the thread.
 
void * Run ()
 The entry point to the libusb thread. More...
 

Additional Inherited Members

- Protected Member Functions inherited from ola::usb::LibUsbThread
void SetTerminate ()
 Indicate that the libusb thread should terminate. More...
 
void LaunchThread ()
 Start the libusb thread.
 
void JoinThread ()
 Join the libusb thread.
 
libusb_context * Context () const
 Return the libusb_context this thread uses. More...
 

Constructor & Destructor Documentation

◆ LibUsbSimpleThread()

ola::usb::LibUsbSimpleThread::LibUsbSimpleThread ( libusb_context *  context)
inlineexplicit

Create a new LibUsbHotplugThread.

Parameters
contextthe libusb context to use.

The thread is starts as soon as this object is created. When the object is destroyed, the handle is de-registered as part of the thread shutdown sequence.


The documentation for this class was generated from the following files: