FailedDeviceΒΆ

The FailedDevice class provides information about Leap Motion hardware that has been physically connected to the client computer, but is not operating correctly. More...

Inherits Interface.

Public Types

enum  FailureType
 The errors that can cause a device to fail to properly connect to the service. More...
 

Public Member Functions

 FailedDevice (FailedDeviceImplementation *)
 
 FailedDevice ()
 
FailureType failure () const
 The reason for device failure. More...
 
bool isValid () const
 Reports whether this FailedDevice object contains valid data. More...
 
bool operator!= (const FailedDevice &) const
 Test FailedDevice inequality. More...
 
bool operator== (const FailedDevice &) const
 Test FailedDevice equality. More...
 
std::string pnpId () const
 The device plug-and-play id string. More...
 

Static Public Member Functions

static const FailedDeviceinvalid ()
 An invalid FailedDevice object. More...
 

Detailed Description

The FailedDevice class provides information about Leap Motion hardware that has been physically connected to the client computer, but is not operating correctly.

Failed devices do not provide any tracking data and do not show up in the Controller:devices() list.

Get the list of failed devices using Controller::failedDevices().

Leap::FailedDeviceList badDevices = controller.failedDevices();
for(auto badDevice : badDevices){
std::string failureReason = "";
switch (badDevice.failure()) {
case Leap::FailedDevice::FailureType::FAIL_CALIBRATION:
failureReason = " has bad calibration record.";
break;
case Leap::FailedDevice::FailureType::FAIL_CONTROL:
failureReason = " failed to establish USB control interfaces.";
break;
case Leap::FailedDevice::FailureType::FAIL_FIRMWARE:
failureReason = " has corrupt firmware or failed to update";
break;
case Leap::FailedDevice::FailureType::FAIL_TRANSPORT:
failureReason = " not responding.";
break;
case Leap::FailedDevice::FailureType::FAIL_UNKNOWN:
failureReason = " failed for unknown reason.";
break;
}
std::cout << "USB device with pnpID: " << badDevice.pnpId() << failureReason << std::endl;
}
Since
3.0

Member Enumeration Documentation

The errors that can cause a device to fail to properly connect to the service.

Since
3.0
Enumerator
FAIL_UNKNOWN 

The cause of the error is unknown.

Since
3.0
FAIL_CALIBRATION 

The device has a bad calibration record.

Since
3.0
FAIL_FIRMWARE 

The device firmware is corrupt or failed to update.

Since
3.0
FAIL_TRANSPORT 

The device is unresponsive.

Since
3.0
FAIL_CONTROL 

The service cannot establish the required USB control interfaces.

Since
3.0
FAIL_COUNT 

Not currently used.

Since
3.0

Constructor & Destructor Documentation

FailedDevice ( FailedDeviceImplementation *  )

Member Function Documentation

FailureType failure ( ) const

The reason for device failure.

The failure reasons are defined as members of the FailureType enumeration:

FailureType::FAIL_UNKNOWN The cause of the error is unknown.

FailureType::FAIL_CALIBRATION The device has a bad calibration record.

FailureType::FAIL_FIRMWARE The device firmware is corrupt or failed to update.

FailureType::FAIL_TRANSPORT The device is unresponsive.

FailureType::FAIL_CONTROL The service cannot establish the required USB control interfaces.

FailureType::FAIL_COUNT Not currently used.

Since
3.0
static const FailedDevice& invalid ( )
static

An invalid FailedDevice object.

Since
3.0
bool isValid ( ) const

Reports whether this FailedDevice object contains valid data.

An invalid FailedDevice does not represent a physical device and can be the result of creating a new FailedDevice object with the constructor. Get FailedDevice objects from Controller::failedDevices() only.

Since
3.0
bool operator!= ( const FailedDevice ) const

Test FailedDevice inequality.

False if the devices are different.

Since
3.0
bool operator== ( const FailedDevice ) const

Test FailedDevice equality.

True if the devices are the same.

Since
3.0
std::string pnpId ( ) const
inline

The device plug-and-play id string.

Since
3.0