]> Creatis software - gdcm.git/blobdiff - gdcmPython/gdcm.i
#include <string>
[gdcm.git] / gdcmPython / gdcm.i
index 46c2ec1eeab41783abff3117b53f38fafd9a3278..f89537bbae71e750abe96fb3fa818496eb8e5825 100644 (file)
@@ -1,6 +1,13 @@
 %module gdcm
 %{
-#include "gdcm.h"
+#include "gdcmCommon.h"
+#include "gdcmDictEntry.h"
+#include "gdcmDict.h"
+#include "gdcmDictSet.h"
+#include "gdcmElValue.h"
+#include "gdcmElValSet.h"
+#include "gdcmHeader.h"
+#include "gdcmFile.h"
 
 // Utility functions on strings for removing leading and trailing spaces
 void EatLeadingAndTrailingSpaces(string & s) {
@@ -24,6 +31,7 @@ typedef  unsigned int guint32;
        $result = NewList;
 }
 
+// Convert a c++ hash table in a python native dictionary
 %typemap(out) map<string, list<string> > * {
        PyObject* NewDict = PyDict_New(); // The result of this typemap
        PyObject* NewKey = (PyObject*)0;
@@ -31,7 +39,11 @@ typedef  unsigned int guint32;
 
        for (map<string, list<string> >::iterator tag = ($1)->begin();
             tag != ($1)->end(); ++tag) {
-               NewKey = PyString_FromString(tag->first.c_str());
+      string first = tag->first;
+      // Do not publish entries whose keys is made of spaces
+      if (first.length() == 0)
+         continue;
+               NewKey = PyString_FromString(first.c_str());
                PyObject* NewList = PyList_New(0);
                for (list<string>::iterator Item = tag->second.begin();
                     Item != tag->second.end(); ++Item) {
@@ -43,7 +55,7 @@ typedef  unsigned int guint32;
        $result = NewDict;
 }
 
-// Return an hash table as a python native dictionary
+// Convert a c++ hash table in a python native dictionary
 %typemap(out) TagElValueHT & {
        PyObject* NewDict = PyDict_New(); // The result of this typemap
        string RawName;                   // Element name as gotten from gdcm
@@ -72,4 +84,12 @@ typedef  unsigned int guint32;
        $result = NewDict;
 }
 
-%include gdcm.h
+%include "gdcmCommon.h"
+%include "gdcmDictEntry.h"
+%include "gdcmDict.h"
+%include "gdcmDictSet.h"
+%include "gdcmElValue.h"
+%include "gdcmElValSet.h"
+%include "gdcmHeader.h"
+%include "gdcmFile.h"
+