[Dcmlib] [ATTENTION] namespace gdcm: done

Emmanuel Olart eolart at theralys.com
Wed Oct 13 17:01:18 CEST 2004


Eric as tu pu tester si les std::string étaient bien passé au wrap ce coup
ci ?
C'est a dire que dans le cas d un appel pytho, la fonction doit attendre (ou
retourner) une string python et non pas un _string_p ?

Manu


----- Original Message ----- 
From: "Eric Boix" <Eric.Boix at creatis.insa-lyon.fr>
To: <Dcmlib at tux.creatis.insa-lyon.fr>
Sent: Wednesday, October 13, 2004 4:40 PM
Subject: Re: [Dcmlib] [ATTENTION] namespace gdcm: done


> <20041012102546.GA27604 at tux.creatis.insa-lyon.fr>
<416BE889.5010200 at kitware.com>Mime-Version: 1.0
> In-Reply-To: <416BE889.5010200 at kitware.com>
>
> Salut Mathieu,
>
> Quoting Mathieu Malaterre <mathieu.malaterre at kitware.com>:
> > En faisait une rerchere je trouve -outdir ajoute' le 08/07/2003
> > http://www.swig.org/Release/CHANGES
> Bon, ben c,a passe avec swig-1.3.21-6...
>
> La compilation des pythoneries/swigeries est fixe'e. Pour memoire,
> le gdcm_wrap.cxx ne compilait pas car l'ordre des %include dans
> gdcmPython/gdcm.i a son importance. En gros, si tu as:
>   class A {};
>   class B {
>      my_method(A a) {}   // ou tout autre reference a la class A
>   };
> alors swig verra que A est deja wrappe' et generera le bon code.
> Mais si tu as:
>   #include "A.h"        // et A.h contient class A {};
>   class B {
>      my_method(A a) {}
>   };
> alors my_method ne sera pas wrappe' correctement, car au moment
> du parsing de B, swig ne sait rien de A. On notera que pour C++ le
prepocessing
> fait ce qu'il faut. En clair, le %include de swig n'est pas recursif sur
> les %include alors que #include de C++ l'est. [je crois qu'il a y moyen
> de dire a swig de recurser sur le parsing, mais cela se complique salement
> car il faut etre sur de ne pas wrapper deux fois le meme code].
> Moralite' dans gdcmPython.h, ecrire:
>    %include gdcmDicomDirObject.h
>    %include gdcmDicomDirElement.h
> ne fonctionera pas puisque le prototype
>    gdcmDicomDirObject::FillObject(ListDicomDirMetaElem elemList);
> fait reference a ListDicomDirMetaElem qui est defini dans
gdcmDicomDirElement.h
> MAIS pas encore wrappe' par swig. Moralite' il faut ecrire:
>   %include gdcmDicomDirElement.h
>   %include gdcmDicomDirObject.h
> Pour les references crois'es, il faut comme en C++ annoncer la classe...
> Voilou.
>
> > Bien sur ! C'est vrai que la plupart du temps, mes commit c'est pour
> > fixer des compilateurs, ou des restructuration mineures des
> > CMakeLists.txt donc j'avais perdu l'habitude de le modifier. Mon erreur
> > doit etre corriger au moment ou vous lisez ces lignes...
> Merci, M'sieur !
>
> > La dans ce cas integrer veut vraiment dire creer un sous repertoire dans
> > ITK et ajouter gdcm a un instant t.
> Aha ! Et avant tu faisais comment ? C'etait une option de cmake a
condition
> de faire une installation de gdcm a cote' ?
>
> > C'est toujours ok avec vous, j'espere ?
> Plus que jamais !
>
> Frog.
> _______________________________________________
> Dcmlib mailing list
> Dcmlib at creatis.insa-lyon.fr
> http://www.creatis.insa-lyon.fr/mailman/listinfo/dcmlib
>
>





More information about the Dcmlib mailing list