]> Creatis software - creaImageIO.git/blobdiff - src/creaImageIOSimpleView.cpp
#2458 creaImageIO Feature New Normal - UnMosaic Images SimpleView Gimick
[creaImageIO.git] / src / creaImageIOSimpleView.cpp
index 019214310279cc3eea37abd862e26efcc3052ed0..96d0e7442bda4713e5f973fc01d1cf9c04df0494 100644 (file)
 
 namespace creaImageIO
 {
-       bool SimpleView::readFile(std::vector<std::string> i_filenames, std::vector<vtkImageData *> &i_img)
+       bool SimpleView::readFile(      std::vector<std::string> i_filenames,                                                                   // in information names
+                                                                               std::vector<std::string> i_attr,                                                                                        // in information attributes names
+                                                                               std::vector<std::map <std::string , std::string> > &i_imgAttr,  // out information attributes names-values
+                                                                               std::vector<vtkImageData *> &i_img)                                                                     // out information vtkImageData
        {
                        bool bresult, bfinal = true;
                        ImageReader *mReader = new ImageReader();
@@ -42,7 +45,13 @@ namespace creaImageIO
                                bresult = mReader->CanRead((*it).c_str());
                                if(bresult)
                                {
-                                       i_img.push_back(mReader->ReadImage((*it).c_str()));
+                                       std::map <std::string , std::string> mapAttr;
+                                       mReader->getAttributes( (*it).c_str() , mapAttr, i_attr ); //  filename, outMapAttr-NameValue, inVectAttributeName
+                                       i_imgAttr.push_back( mapAttr );
+
+                                       //UnMosaic step..
+
+                                       i_img.push_back( mReader->ReadImage( (*it).c_str() ) );
                                } else {
                                        printf("ERROR. Impossible to read file %s\n", (*it).c_str() );
                                        bfinal = false;
@@ -53,7 +62,10 @@ namespace creaImageIO
        }
 
 
-       bool SimpleView::readDirectory(const std::string i_pathname, std::vector<vtkImageData *> &i_imgs)
+       bool SimpleView::readDirectory( const std::string i_pathname,                                                                                   // in information names
+                                                                                               std::vector<std::string> i_attr,                                                                                        // in information attributes names
+                                                                                               std::vector<std::map <std::string , std::string> > &i_imgAttr,  // out information attributes names-values
+                                                                                               std::vector<vtkImageData *> &i_imgs)                                                                    // out information vtkImageData
        {
                        bool bresult = true;
                        ImageReader *mReader = new ImageReader();
@@ -78,7 +90,14 @@ namespace creaImageIO
                                
                                for(int i=0; i<lgr; i++)
                                {
-                                  std::cout << names[i] << std::endl;
+               std::cout << names[i] << std::endl;
+
+                                       std::map <std::string , std::string> mapAttr;
+                                       mReader->getAttributes( names[i] , mapAttr, i_attr ); //  filename, outMapAttr-NameValue, inVectAttributeName
+                                       i_imgAttr.push_back( mapAttr );
+
+                                       //UnMosaic step..
+
                                   i_imgs.push_back( mReader->ReadImage(names[i]) );  
                                }                       
                        }