Bin ich der einzige, der dieses IOKit bzw. im speziellen die IOUSBLib total bescheuert findet?
Ich kämpfe da jetzt schon eine ganze Weile mit, weil ich mir grad einen userland UVC Treiber zu schreiben versuche. Inzwischen mache ich auch gute Fortschritte.
Was mich hier aber besonders nervt:
Was soll dieses bescheuerte Pseudo-C++ Interface? Es nervt einfach nur. Seh ich das richtig, dass man im Kernelland ein echtes C++ Interface bekommt?
Davon abgesehen, dass ich die Doku auch eher unangenehm finde, wunder ich mich jetzt, ob es keinen eleganteren Weg gibt z.B. alle Endpoints über alle Alternate Settings zu bekommen, damit ich mir hier jetzt konkret einen Isochronous EP mit passender wMaxPacketSize suchen kann.
Was ich mache ist mir den gesamten configuration descriptor vom Device zu ziehen und den manuell, byte für byte, durchzugehen. Plus natürlich immer schön Endianess-Swapping.
Irgendwie finde ich immer nur dort Abstraktion, wo ich sie grade nicht gebrauchen kann.
Ich schaue immer gern Dinge aus dem Linux Kernel ab, und libusb sieht mir da um einiges schöner aus.
Muss man das erst noch lieben lernen? Bin ich nur zu blöd?
Ich kämpfe da jetzt schon eine ganze Weile mit, weil ich mir grad einen userland UVC Treiber zu schreiben versuche. Inzwischen mache ich auch gute Fortschritte.
Was mich hier aber besonders nervt:
Was soll dieses bescheuerte Pseudo-C++ Interface? Es nervt einfach nur. Seh ich das richtig, dass man im Kernelland ein echtes C++ Interface bekommt?
Davon abgesehen, dass ich die Doku auch eher unangenehm finde, wunder ich mich jetzt, ob es keinen eleganteren Weg gibt z.B. alle Endpoints über alle Alternate Settings zu bekommen, damit ich mir hier jetzt konkret einen Isochronous EP mit passender wMaxPacketSize suchen kann.
Was ich mache ist mir den gesamten configuration descriptor vom Device zu ziehen und den manuell, byte für byte, durchzugehen. Plus natürlich immer schön Endianess-Swapping.
Irgendwie finde ich immer nur dort Abstraktion, wo ich sie grade nicht gebrauchen kann.
Ich schaue immer gern Dinge aus dem Linux Kernel ab, und libusb sieht mir da um einiges schöner aus.
Muss man das erst noch lieben lernen? Bin ich nur zu blöd?
♥C++

