]> Creatis software - bbtk.git/blobdiff - packages/vtk/src/bbvtkMetaImageReader.cxx
#3485 New box AddStringToVector
[bbtk.git] / packages / vtk / src / bbvtkMetaImageReader.cxx
index f092643b7aecd9497ec6755d60c9f3c55d5d7d26..d359bd3e1fb551cf73220f751b0c7346572e5174 100644 (file)
@@ -11,6 +11,14 @@ namespace bbvtk
 
 BBTK_ADD_BLACK_BOX_TO_PACKAGE(vtk,MetaImageReader)
 BBTK_BLACK_BOX_IMPLEMENTATION(MetaImageReader,bbtk::AtomicBlackBox);
+
+
+void MetaImageReader::Read_mhdb( std::string filename )
+{
+       printf("EED MetaImageReader::Read_mhdb \n");
+}
+
+
 //===== 
 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
 //===== 
@@ -32,18 +40,29 @@ void MetaImageReader::Process()
 //    bbSetOutputOut( bbGetInputIn() );
 //    std::cout << "Output value = " <<bbGetOutputOut() << std::endl;
 
-       FILE *ff=fopen(bbGetInputIn().c_str(),"r");
-       if (ff)
-       {
-               fclose(ff);
-               vtkMetaImageReader *reader = vtkMetaImageReader::New();
-               reader->SetFileName(bbGetInputIn().c_str());
-               reader->Update();
-               bbSetOutputOut(reader->GetOutput());
-       } else {
-                       bbSetOutputOut(NULL);
-       }
+    if (bbGetInputIn().length()!=0)
+    {
+        if (bbGetInputIn().substr(bbGetInputIn().size()-5) == ".mhdb")
+        {
+            Read_mhdb( bbGetInputIn() );
+        } else {
+            FILE *ff = fopen( bbGetInputIn().c_str() , "r" );
+            if (ff)
+            {
+                fclose(ff);
+                vtkMetaImageReader *reader = vtkMetaImageReader::New();
+                reader->SetFileName( bbGetInputIn().c_str() );
+                reader->Update();
+                bbSetOutputOut( reader->GetOutput() );
+            } else {
+                bbSetOutputOut(NULL);
+            } // ff
+        }// .mhdb
+    } else {
+        bbSetOutputOut(NULL);
+    } // if In.length
 }
+
 //===== 
 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
 //=====