libusb-1.0 Include for Linux
Verfasst: 25.07.2013 22:42
Hi Leute,
ich muss mich gerade etwas knapp halten, aber ich will euch meinen bisherigen Fortschritt mit dem Übersetzen der originalen libusb.h in Version 1.0.11 nicht vorenthalten. Bisher geht noch nicht so viel, aber schon bald werde ich alle Funktionen der libusb integriert haben und danach kommen dann noch weitere Funktionen, die auf den üblichen PureBasic-Syntax zugeschnitten sind. Ein paar sind sogar schon drin plus einem Beispiel.
Das ganze besteht aus zwei Dateien, die man hier herunterladen kann: libusb.pbi und libusb_Wrapper.pbi
Aktuell ist das Beispiel noch in der 'libusb_Wrapper.pbi' enthalten. Das wird aber dann schon bald ausgelagert, damit die Übersicht bewahrt bleibt.
Die 'libusb.pbi' ist alleine mehrere PB-Versionen abwärtskompatibel, der Wrapper nutzt allerdings schon die Modul-Technologie von PB. Vielleicht werde ich das ganze sogar in Zukunft in vier Versionen anbieten: (1) als Modul, (2) als normale PB-Funktionen mit einem Präfix wie zum Beispiel 'LIBUSB_', (3) als Pseudo-Klasse mit der Hilfe von Interfaces und (4) als simplen Wrapper der orginalen Bibliotheksfunktionen der libusb.
Getestet habe ich das ganze mit Version 1.0.9 und 1.0.11 der libusb unter einem 64-Bit Linux (Debian). Version 1.0.16 der libusb steht ja schon in den Startlöchern, aber ist noch nicht Final. Dort hat sich aber nochmal ein bisschen was verändert. Das bringt mich zu folgendem Punkt: Ich habe vor das PB-Include nicht einfach nur an zukünftige neue libusb-Versionen anzupassen, sondern es gleichzeitig auch abwärtskompatibel zu älteren Versionen zu machen. Dazu muss man dann vor dem Kompilieren des Quellcodes drei Konstanten ändern, die die zu verwendende Version darstellen. Zur Laufzeit kann man zwar die aktuell installierte libusb-Version feststellen, das bringt einem dann aber nichts mehr, wenn der Code schon kompiliert ist.
Ich würde mich über Hilfe freuen um das ganze auch auf Windows lauffähig zu kriegen. Vermutlich muss man da nur beim Import im Wrapper irgendwas ändern.
ich muss mich gerade etwas knapp halten, aber ich will euch meinen bisherigen Fortschritt mit dem Übersetzen der originalen libusb.h in Version 1.0.11 nicht vorenthalten. Bisher geht noch nicht so viel, aber schon bald werde ich alle Funktionen der libusb integriert haben und danach kommen dann noch weitere Funktionen, die auf den üblichen PureBasic-Syntax zugeschnitten sind. Ein paar sind sogar schon drin plus einem Beispiel.
Das ganze besteht aus zwei Dateien, die man hier herunterladen kann: libusb.pbi und libusb_Wrapper.pbi
Aktuell ist das Beispiel noch in der 'libusb_Wrapper.pbi' enthalten. Das wird aber dann schon bald ausgelagert, damit die Übersicht bewahrt bleibt.
Die 'libusb.pbi' ist alleine mehrere PB-Versionen abwärtskompatibel, der Wrapper nutzt allerdings schon die Modul-Technologie von PB. Vielleicht werde ich das ganze sogar in Zukunft in vier Versionen anbieten: (1) als Modul, (2) als normale PB-Funktionen mit einem Präfix wie zum Beispiel 'LIBUSB_', (3) als Pseudo-Klasse mit der Hilfe von Interfaces und (4) als simplen Wrapper der orginalen Bibliotheksfunktionen der libusb.
Getestet habe ich das ganze mit Version 1.0.9 und 1.0.11 der libusb unter einem 64-Bit Linux (Debian). Version 1.0.16 der libusb steht ja schon in den Startlöchern, aber ist noch nicht Final. Dort hat sich aber nochmal ein bisschen was verändert. Das bringt mich zu folgendem Punkt: Ich habe vor das PB-Include nicht einfach nur an zukünftige neue libusb-Versionen anzupassen, sondern es gleichzeitig auch abwärtskompatibel zu älteren Versionen zu machen. Dazu muss man dann vor dem Kompilieren des Quellcodes drei Konstanten ändern, die die zu verwendende Version darstellen. Zur Laufzeit kann man zwar die aktuell installierte libusb-Version feststellen, das bringt einem dann aber nichts mehr, wenn der Code schon kompiliert ist.
Ich würde mich über Hilfe freuen um das ganze auch auf Windows lauffähig zu kriegen. Vermutlich muss man da nur beim Import im Wrapper irgendwas ändern.