Die Suche ergab 10 Treffer

von tc09
Montag 24. August 2009, 12:16
Forum: Allgemeine Fragen
Thema: Klassen in Swig
Antworten: 16
Zugriffe: 1441

So, inzwischen hab ich selbst rausgefunden wie es funktioniert.
Am Ende des Interface-Files muss man die folgenden zwei Zeilen anhängen:

%typemap(in) std::vector<double> * "/* my in typemap */"
%typemap(out) std::vector<double> * "/* my out typemap */"

Dann wird das Typemapping auch für Klassen ...
von tc09
Donnerstag 20. August 2009, 17:05
Forum: Allgemeine Fragen
Thema: Klassen in Swig
Antworten: 16
Zugriffe: 1441

Ok, also hier ein etwas minimiertes Beispiel das zwar funktioniert, aber noch nicht ganz meinen Vorstellungen entspricht:

HeaderDatei:

#include <vector>
using namespace std;

class MeineKlasse
{
public:
static std::vector<double> parameter;
MeineKlasse(std::vector<double> init_param ...
von tc09
Donnerstag 20. August 2009, 11:21
Forum: Allgemeine Fragen
Thema: Klassen in Swig
Antworten: 16
Zugriffe: 1441

Das Beispiel von dem ich gesprochen hab liegt unter Swig\Examples\python\std_vector müsste glaub ich bei jeder Swig-Insatallation gleich sein.
von tc09
Donnerstag 20. August 2009, 10:21
Forum: Allgemeine Fragen
Thema: Klassen in Swig
Antworten: 16
Zugriffe: 1441

Diese template-Lösung die du zuerst für das Typemapping vorgeschlagen hast, würde ich auch viel lieber verwenden. Ich glaube das ist das gleiche, wie in den Swig-examples unter std_vector. Das Problem ist, dass ich auch bei dem Swig-Beispiel direkt über 40 Fehler bekomme. Hier mal der erste Fehler ...
von tc09
Donnerstag 20. August 2009, 07:44
Forum: Allgemeine Fragen
Thema: Klassen in Swig
Antworten: 16
Zugriffe: 1441

So,
falls es noch jemanden interessiert, ich habs inzwischen zum Laufen bekommen indem ich im Interface-File die gewünschten Klassenparameter aufgelistet habe und zusätzlich folgendes Typemapping ergänzt habe:

%typemap(varout) std::vector<double> {
std::vector<double> Out;
int i,len;
Out=$1 ...
von tc09
Mittwoch 19. August 2009, 15:46
Forum: Allgemeine Fragen
Thema: Klassen in Swig
Antworten: 16
Zugriffe: 1441

Oder irgendein Tutorial in dem das Typemapping für Klassen behandelt wird, würde mir auch schon weiterhelfen.
von tc09
Dienstag 18. August 2009, 09:45
Forum: Allgemeine Fragen
Thema: Klassen in Swig
Antworten: 16
Zugriffe: 1441

Vielen Dank schonmal für die schnellen Antworten.
Leider bekomme ich deinen Lösungsvorschlag nicht zum Laufen, was wahrscheinlich auch an meinen mangelnden C++ Kenntnissen liegt. Am praktischsten wäre auch eine Lösung, die nicht für alle Attribute extra definiert werden muss, sondern auf alle ...
von tc09
Montag 17. August 2009, 09:22
Forum: Allgemeine Fragen
Thema: Klassen in Swig
Antworten: 16
Zugriffe: 1441

Hallo CM,
das hab ich noch nie ausprobiert, sieht aber schön einfach aus :-)
Muss man das einfach statt den Typemappings ins Interface-File schreiben?? Oder muss man dann auch noch etwas an den Funktions-Definitionen oder im Interface-File ändern??
von tc09
Montag 17. August 2009, 09:12
Forum: Allgemeine Fragen
Thema: Klassen in Swig
Antworten: 16
Zugriffe: 1441

Ich muss meine Frage nochmal ein klein wenig korrigieren: Also die Eingabe und die Ausgabe funktioniert mit diesem Typemapping auch für Klassen, aber wenn ich versuche von Python auf ein Attribut (vom Typ Vector) der C++ Klasse zuzugreifen, funktioniert das Typemapping nicht, anscheinend wird es für ...
von tc09
Montag 17. August 2009, 09:04
Forum: Allgemeine Fragen
Thema: Klassen in Swig
Antworten: 16
Zugriffe: 1441

Klassen in Swig

Hallo zusammen,
ich habe ein Problem mit Swig und hoffe dass mir dabei vielleicht jemand helfen kann. Ich benutze Swig, um einige Python-Extensions in C++ zu erstellen, die sowohl als Eingabe-Argument als auch als Ausgabe-Argument Vektoren enthalten. In Python verwende ich für diese Vektoren einfach ...