]> Creatis software - creaImageIO.git/blobdiff - src/creaImageIOGimmickView.cpp
Merge branch 'master' into changestoITK3and4
[creaImageIO.git] / src / creaImageIOGimmickView.cpp
index 245b0b563c829ad96d34abb6fd28bfce268a37d6..4ada3a9c54277a33230e0bee464de9bc514f3f3f 100644 (file)
@@ -486,20 +486,37 @@ void GimmickView::ReadImagesNotThreaded(std::vector<vtkImageData*>& s, std::vect
        void GimmickView::readImages1(std::vector<OutStrGimmick>& o_output, std::vector<std::string> im,
                         OutputAttr i_attr)
        {
+
+               i_attr.outside.push_back("D0019_100a");  // simens Number Of Images In Mosaic
+
+//EED Borrame
+               int i,isize=i_attr.outside.size();
+               for (i=0;i<isize;i++)
+               {
+               printf("EED GimmickView::readImages1 A  i_attr out %s \n", i_attr.outside[i].c_str());
+               }
+
+
+
                std::vector<std::string>::iterator it;
                for (it=im.begin(); it!=im.end(); ++it)
                {
                        OutStrGimmick out;
                        out.img = vtkImageData::New();
                        out.img->ShallowCopy(mReader.GetImage(*it));
-                       if(i_attr.mult)
+printf("EED GimmickView::readImages1 A\n ");
+                       if(i_attr.mult) 
+                       {
                                getAttributes((*it),out.infos,i_attr);
+printf("EED GimmickView::readImages1 B   %s \n ", out.infos.find("D0019_100a")->second.c_str() );                              
+                       }
                        o_output.push_back(out);
                }
                // If we want only one output information structure, we set it outside the loop
                if(!i_attr.mult)
                {
                        getAttributes(im.front(), o_output.front().infos, i_attr);
+printf("EED GimmickView::readImages1 C   %s \n ", o_output.front().infos.find("D0019_100a")->second.c_str() );
                }
                
        }
@@ -520,9 +537,7 @@ void GimmickView::ReadImagesNotThreaded(std::vector<vtkImageData*>& s, std::vect
                if(ext[5] == 0)
                {
                        ext[5] = (int)im.size()-1;
-               }
-               else
-               {
+               } else {
                        ext[5] = ext[5] * (int)im.size()-1; // to deal with multiframes 
                }
                out.img->SetExtent(ext);
@@ -665,24 +680,17 @@ void GimmickView::ReadImagesNotThreaded(std::vector<vtkImageData*>& s, std::vect
                if ( size == 0)
                {
                        return;
-               }
-               else if (size == 1)
-               {
+               } else if (size == 1) {
                        // Simplest case
                        // Only one image : give it
                        // But take in count multiframe possibility
                        if ( isSingle(im.front()) || i_dim != 1)
                        {
                                 readImages1(o_output,im, i_attr);
-                       }
-                       else
-                       {
-                               readImages2(o_output,im, i_attr,i_zspc);
-                       }
-                       
-               }
-               else
-               {
+                       } else {
+                                readImages2(o_output,im, i_attr,i_zspc);
+                       }                       
+               } else {
                        // multiple or single frame
                        if ( isSingle(im.front()) )
                        {
@@ -691,40 +699,33 @@ void GimmickView::ReadImagesNotThreaded(std::vector<vtkImageData*>& s, std::vect
                                {
                                        // 2D to 3D
                                        readImages3(o_output,im, i_attr,i_zspc);
-                               }
-                               else
-                               {
+                               } else {
                                        readImages1(o_output,im, i_attr);
                                }
-                       }
-                       else
-                       {
+                       } else {
                                // we deal with multiple frames n x (2D x T)
                                // Differents outputs are avaialable
                                if(i_dim == 1)
                                {
                                        // put all in one output
                                        readImages3(o_output,im, i_attr,i_zspc);
-
-                               }
-                               else if( i_dim == 2)
-                               {
+                               } else if( i_dim == 2) {
                                        // put in a vector of n x T (2D)
                                        readImages2(o_output,im, i_attr,i_zspc);
-                               }
-                               else if( i_dim == 3)
-                               {
+                               } else if( i_dim == 3) {
                                        // put in a vector of n (2D x T)
                                        // No transformations.
                                        readImages1(o_output,im, i_attr);
-                               }
-                               else
-                               {
+                               } else {
                                        // put in a vector of T (2D x n)
                                        readImages4(o_output,im, i_attr);
-                               }
-                       }
-               }
+                               } // i_dim
+                       } //isSingle(im.front())
+               } // if size
+
+//EED UnMosaic step...  
+//How to verifie if is a mosaic file , with how many images inside??
+
        }
 
 
@@ -745,7 +746,7 @@ void GimmickView::ReadImagesNotThreadedInVector(std::vector<vtkImageData*>& s, s
        else if (im.size()>1) // Test inutile ? JPR
        {
                /// \TODO fix unused variable 'first'
-               vtkImageData* first = mReader.GetImage( im.front());
+//             vtkImageData* first = mReader.GetImage( im.front());
                if (dimension == 2)
                {
                 // n3D
@@ -755,10 +756,8 @@ void GimmickView::ReadImagesNotThreadedInVector(std::vector<vtkImageData*>& s, s
                                vtkImageData* out = vtkImageData::New();
                                out->ShallowCopy(mReader.GetImage(*it));
                                s.push_back(out);
-                       }
-               }
-               else
-               {
+                       } // for
+               } else {
                        // n2D to 3D // NO!
                        // n *2D + T in a vector :
                        
@@ -767,9 +766,9 @@ void GimmickView::ReadImagesNotThreadedInVector(std::vector<vtkImageData*>& s, s
                        {
                                vtkImageData* out = mReader.GetImage( (*it));
                                s.push_back(out);
-                       }
-               }
-       }
+                       } // for
+               } // if dimension
+       } // if im.size
 }
   //======================================================================
 
@@ -900,8 +899,9 @@ void GimmickView::Anonymize(std::vector<std::string> i_filenames, int type)
                
                // We need a gdcm::FileHelper, since we want to load the pixels        
                GDCM_NAME_SPACE::FileHelper *fh = GDCM_NAME_SPACE::FileHelper::New(file);
-       
-   uint8_t *imageData = fh->GetImageData();
+
+//Borrame
+//EED   uint8_t *imageData = fh->GetImageData();
 
           // Institution name 
           file->AddAnonymizeElement(0x0008, 0x0080, "*"); 
@@ -925,7 +925,7 @@ void GimmickView::Anonymize(std::vector<std::string> i_filenames, int type)
           fh->SetContentType(GDCM_NAME_SPACE::UNMODIFIED_PIXELS_IMAGE);
    
           fh->WriteDcmExplVR(file->GetFileName() +".ano1" );
-          std::cout << i <<"  End Anonymize" << std::cout;  
+          std::cout << i <<"  End Anonymize" << std::endl;  
           file->ClearAnonymizeList();
           file->Delete();
           fh->Delete();