EVMS Python-Bindings

Stellt hier eure Projekte vor.
Internetseiten, Skripte, und alles andere bzgl. Python.
Antworten
modelnine
User
Beiträge: 670
Registriert: Sonntag 15. Januar 2006, 18:42
Wohnort: Celle
Kontaktdaten:

Wer schon mal mit EVMS-Scripting (in Python, mit subprocess) rumgespielt hat und frustriert war von dem ewigen Delay was das konsekutive Aufrufen des Kommandozeilen-Interpreters mit sich bringt (aufgrund der Ladezeit der Metadaten, welche jedes mal neu geladen werden), der wird

http://svn.modelnine.org/svn/evms-python

interessant finden. Das ist ein mehr oder weniger vollständiges (noch nicht ganz, aber morgen mit Sicherheit ;-)) Binding der gesammten appAPI.h von EVMS an Python. Es ist mit PyRex geschrieben, um besonders die ganzen Typumwandlungen (halbwegs) sauber in den Griff zu kriegen, und sollte sowohl unter x86 als auch AMD64 sauber laufen. Das einzige was das Programm annimmt ist dass auf der entsprechenden Plattform (unsigned) int = 32-bit und (unsigned) long long = 64-bit lang ist (was auf beiden die ich vorhin gesagt hab auf jeden Fall gegeben ist).

Ich werd im Laufe des morgigen Tages auch noch ein bissel mehr Beispielcode posten wie man die Bindings benutzt, aber wer zumindest schon mal EVMS direkt programmiert hat wird das Interface auch so benutzen können (es ist eine mehr oder weniger 1:1-Abbildung des C-APIs auf Python-Datentypen, das geht natürlich noch schöner, aber das mach ich in Python, und das ist die Sache die noch nicht fertig ist ;-)).

Achso, das ganze ist unter der GPL, wie EVMS auch.

Viel Spaß damit!

PS: Ich bin momentan noch am überlegen ob evms-python einen PyRex-Bug aufgedeckt hat, oder ob ich einfach falsch denke: eine Typ-Konversion von einem unsigned int zu einem Python-Integer sollte unter 32-bit (x86) Systemen PyLong_FromUnsignedLong benutzen, da int == long auf diesen Plattformen, und ein unsigned long nicht in ein python int passt/passen kann. PyRex erstellt jedoch stur für alle *int-Typen ein PyInt_FromLong() (was auch auf AMD64 Plattformen okay ist). Ich hab schon an die Mailingliste gemailt, aber hab von denen noch keine Antwort bekommen; der letzte Beitrag zu PyRex ist auch schon ein weilchen alt. ;-)

Und: wundert Euch nicht, die resultierenden Libs sind ca. 90kb groß; das kommt aufgrund des ganzen Codes den PyRex erzeugt; ich habs aber aufgegeben das Ding von Hand zu wrappen, da EVMS mit richtig ekligen Datentypen rumspielt.
--- Heiko.
Benutzeravatar
MoR4euZ
User
Beiträge: 34
Registriert: Mittwoch 18. Oktober 2006, 21:21
Wohnort: Essen
Kontaktdaten:

JA!

hört sich intressant an auch wen ich nur die hälfte verstehe ;)

kennt wer einen aktuellen mirror damit ich mal staunen kann? :)
Benutzeravatar
birkenfeld
Python-Forum Veteran
Beiträge: 1603
Registriert: Montag 20. März 2006, 15:29
Wohnort: Die aufstrebende Universitätsstadt bei München

Tja, ModelNine ist sozusagen klinisch netztot. Seit ein paar Monaten ist von ihm nichts mehr zu hören.
Python 47
User
Beiträge: 574
Registriert: Samstag 17. September 2005, 21:04

birkenfeld hat geschrieben:Tja, ModelNine ist sozusagen klinisch netztot. Seit ein paar Monaten ist von ihm nichts mehr zu hören.
Schade eigentlich, er beherrscht die Sprache mehr als überdurchschnittlich und hat immer geholfen. Weiß jemand was mit ihm ist?
mfg

Thomas :-)
BlackJack

birkenfeld hat geschrieben:Tja, ModelNine ist sozusagen klinisch netztot. Seit ein paar Monaten ist von ihm nichts mehr zu hören.
Das aktuellste was ich im Netz finden konnte ist eine Mail auf der Bison Help-Mailingliste. Wenn man sich die Signatur anschaut, dann scheint er jetzt hier zu arbeiten: http://www.xencon.net/
Benutzeravatar
MoR4euZ
User
Beiträge: 34
Registriert: Mittwoch 18. Oktober 2006, 21:21
Wohnort: Essen
Kontaktdaten:

BlackJack hat geschrieben:Das aktuellste was ich im Netz finden konnte ist eine Mail auf der Bison Help-Mailingliste. Wenn man sich die Signatur anschaut, dann scheint er jetzt hier zu arbeiten: http://www.xencon.net/
habe ich etwa deine Detektivinstinkte geweckt BlackJack? :D
BlackJack

Ich vermisse ihn halt auch ein bisschen. :cry:
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

BlackJack hat geschrieben:Ich vermisse ihn halt auch ein bisschen. :cry:
Kann ich gut verstehen, ich hab mir bei seinen Posts immer gedacht: "Juhu, gleich wirds interessant/lustig", wenn er wieder was geschrieben hat.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

birkenfeld hat geschrieben:Tja, ModelNine ist sozusagen klinisch netztot. Seit ein paar Monaten ist von ihm nichts mehr zu hören.
Seit alturo die Server runtergefahren hat ist wohl auch sein XEN tot...
TUFKAB – the user formerly known as blackbird
Antworten