From my understanding, eLeapDeviceStatus is a bitfield where 1 bit corresponds to 1 status, however I found this to not be the case.
The first couple statuses are fine, they correspond to 1
, 2
, 4
, 8
, and 16
, but the last statues are huge numbers. For example, eleapDeviceStatus_BadControl
is set to 3892379652
, or in binary, 11101000000000010000000000000100
. This causes a problem with overlapping bits 00000000000000000000000000000100
from the status eLeapDeviceStatus_Robust
, which in binary is just 100
or in decimal 4
.
How are we supposed to distinguish between these two fields if they share the 3rd bit? Or am I just reading the documentation wrong.
Thanks for any suggestions!