2016-08-12 4 views
1

У меня есть несколько USB-устройств, которые состоят из самого устройства и внутреннего USB-концентратора, чтобы подключить больше этих устройств. Как-то можно получить фактическое положение одного конкретного устройства в этой цепочке usb с помощью libusb или чего-либо подобного в программе на C++?Возможно ли получить позицию устройства на usb с помощью libusb.

Использование lsusb -t на Linux я могу получить дерево автобус, который выглядит следующим образом

/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M 
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 5000M 
    |__ Port 1: Dev 3, If 0, Class=Hub, Driver=hub/4p, 5000M 
     |__ Port 4: Dev 4, If 0, Class=Vendor Specific Class, Driver=r8152, 5000M 
    |__ Port 3: Dev 5, If 0, Class=Hub, Driver=hub/4p, 5000M 
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/9p, 480M 
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M 
    |__ Port 1: Dev 4, If 0, Class=Hub, Driver=hub/4p, 480M 
    |__ Port 3: Dev 8, If 0, Class=Hub, Driver=hub/4p, 480M 
     |__ Port 4: Dev 9, If 0, Class=Vendor Specific Class, Driver=ftdi_sio, 12M 
    |__ Port 4: Dev 20, If 0, Class=Hub, Driver=hub/2p, 480M 
     |__ Port 2: Dev 21, If 0, Class=Vendor Specific Class, Driver=ftdi_sio, 12M 

На макинтош я могу использовать system_profiler SPUSBDataType, чтобы получить что-то подобное. Могу ли я получить его также программно, используя libusb?

ответ

Смежные вопросы